/* Natural-height cards: no inner scrolling or horizontal carousel. */
#sf-review-fallback{margin-top:28px;color:#173e35}#sf-review-summary{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:28px}.sf-rating-badge{display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center;padding:22px 26px;border:1px solid #d8dfd2;border-radius:20px;background:#f0f3e9}.sf-google-word{font-size:16px;font-weight:700;grid-column:1/-1}.sf-rating-number{font-size:42px;letter-spacing:-2px;line-height:1.3}.sf-stars{color:#ad7b32;letter-spacing:3px;font-size:18px}.sf-rating-caption{font-size:12px;grid-column:1/-1;color:#536a5c}.sf-review-intro{font-size:15px;color:#607467;max-width:380px;line-height:1.7}.sf-review-grid{display:block;columns:3;column-gap:20px;overflow:visible;padding:0;scroll-snap-type:none}.sf-review-card{display:inline-block;vertical-align:top;width:100%;box-sizing:border-box;break-inside:avoid;margin:0 0 20px;padding:26px;background:#fff;border:1px solid #e0e5dc;border-radius:22px;box-shadow:0 5px 18px #173e3506;scroll-snap-align:none}.sf-review-person{display:flex;align-items:center;gap:12px;margin-bottom:18px}.sf-review-avatar{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:#e9eee3;color:#425e4b;font-size:13px;font-weight:700}.sf-review-who{min-width:0;flex:1}.sf-review-who strong{display:block;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.sf-review-who time{display:block;font-size:11px;color:#7a887c;margin-top:4px}.sf-google-mark{font-size:20px;font-weight:700;color:#567660}.sf-review-card .sf-review-copy{font-size:14px;line-height:1.85;color:#425b4c;white-space:pre-line;margin:16px 0 0;max-height:none;height:auto;overflow:visible;padding:0}.sf-review-original{margin-top:18px;border:0;border-top:1px solid #e6ebe1;padding-top:12px}.sf-review-original summary{font:500 11px/1.6 Arial,sans-serif;cursor:pointer;color:#768472;padding:0;list-style:revert}.sf-review-original summary:after{content:none}.sf-review-controls{text-align:center;margin-top:10px;display:flex;align-items:center;flex-direction:column;gap:16px}.sf-review-controls p{font-size:12px;color:#6c7c70;margin:0}.sf-review-controls button{font:600 13px/1.4 Arial,sans-serif;background:#173e35;color:white;padding:14px 28px;border:1px solid #173e35;border-radius:40px;cursor:pointer}.sf-review-controls button[hidden]{display:none}.sf-review-controls a{font-size:12px;color:#526e5b;text-decoration:underline;text-underline-offset:4px}.sf-review-controls button:focus-visible,.sf-review-original summary:focus-visible{outline:3px solid #bd8b49;outline-offset:4px}@media(max-width:1000px){.sf-review-grid{columns:2}}@media(max-width:650px){#sf-review-summary{display:block}.sf-rating-badge{padding:18px 22px;margin-bottom:18px}.sf-review-grid{columns:1}.sf-review-card{padding:22px;margin-bottom:14px}.sf-review-intro{font-size:14px}.sf-review-card .sf-review-copy{font-size:14px}}
/* One review at a time, with native-height text and accessible navigation. */
#sf-review-list.sf-review-grid{display:block;columns:auto;width:100%;max-width:820px;margin:0 auto;overflow:visible;touch-action:pan-y;outline-offset:5px}#sf-review-list .sf-review-card{display:block;width:100%;margin:0;padding:clamp(24px,5vw,42px);border-radius:24px;box-shadow:0 10px 35px #173e3510;animation:sf-review-in .35s ease both}#sf-review-list .sf-review-copy{font-size:16px;line-height:1.9;max-height:none;overflow:visible}#sf-review-list .sf-review-original{display:inline-block;cursor:pointer;border:0;border-bottom:1px solid #b8c8b7;border-radius:0;background:none;font:500 12px/1.6 Arial,sans-serif;color:#5f7967;padding:4px 0;margin:20px 0 0;text-align:left}#sf-review-list .sf-review-original:focus-visible{outline:3px solid #bd8b49;outline-offset:4px}.sf-google-icon{width:24px;height:24px;object-fit:contain;flex-shrink:0}.sf-google-word{display:flex;align-items:center;gap:9px}.sf-carousel-nav{display:flex;align-items:center;justify-content:center;gap:18px;margin:24px auto 0;max-width:820px}.sf-carousel-nav #sf-review-count{font-size:13px;color:#65786b;min-width:60px;text-align:center;margin:0}.sf-carousel-nav button{cursor:pointer;font:500 13px/1.4 Arial,sans-serif;color:#173e35;background:#f2f5ed;border:1px solid #d4dece;border-radius:30px;padding:10px 16px}.sf-carousel-nav .sf-arrow{width:44px;height:44px;padding:0;font-size:30px;line-height:1}.sf-carousel-nav button:hover{background:#e3ebdc}.sf-carousel-nav button:focus-visible,.sf-review-range:focus-visible{outline:3px solid #bd8b49;outline-offset:4px}.sf-play{min-width:108px}.sf-review-range{display:block;-webkit-appearance:none;appearance:none;width:min(100%,820px);height:5px;padding:0;margin:24px auto 10px;cursor:pointer;border:0;border-radius:8px;background:linear-gradient(to right,#71896b var(--sf-progress,1%),#e1e7dc var(--sf-progress,1%));accent-color:#173e35}.sf-review-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#173e35;width:18px;height:18px;border-radius:50%;border:3px solid #fff;box-shadow:0 1px 5px #173e3540}.sf-review-range::-moz-range-thumb{background:#173e35;width:13px;height:13px;border:2px solid white;border-radius:50%}.sf-review-range[hidden],.sf-carousel-nav[hidden]{display:none}@keyframes sf-review-in{from{opacity:.3;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}@media(max-width:650px){#sf-review-list .sf-review-copy{font-size:14px}.sf-carousel-nav{gap:12px}.sf-carousel-nav .sf-arrow{width:40px;height:40px}.sf-play{min-width:98px;font-size:12px!important}}@media(prefers-reduced-motion:reduce){#sf-review-list .sf-review-card{animation:none}}

.sf-expand-reviews{display:none}@media(min-width:900px){.sf-expand-reviews{display:block;margin:20px auto 0;border:1px solid #c4d1bd;border-radius:30px;padding:12px 24px;background:#eef3e8;color:#173e35;font:600 13px/1.4 Arial,sans-serif;cursor:pointer}.sf-expand-reviews:focus-visible{outline:3px solid #bd8b49;outline-offset:4px}#sf-review-list.sf-expanded{max-width:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:20px}#sf-review-list.sf-expanded .sf-review-card{padding:24px}#sf-review-list.sf-expanded .sf-review-copy{font-size:14px}}
html[lang] #sf-review-fallback .sf-review-card .sf-review-copy[lang]{display:block!important}

/* Desktop reviews: six initially, another six on each request. */
.sf-expand-reviews[hidden]{display:none!important}
@media(min-width:900px){#sf-review-list.sf-expanded{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:20px;max-width:none}#sf-review-list.sf-expanded .sf-review-card{height:100%;margin:0;box-sizing:border-box;padding:24px;animation:none}#sf-review-list.sf-expanded .sf-review-copy{font-size:14px}.sf-carousel-nav[hidden],.sf-review-range[hidden]{display:none!important}}

/* Desktop: three natural-height cards per row, matching the tallest card. */
@media (min-width:900px){
 #sf-review-list.sf-review-grid.sf-expanded{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:auto;align-items:stretch!important;gap:20px;width:100%;max-width:100%;columns:auto;box-sizing:border-box}
 #sf-review-list.sf-expanded>.sf-review-card{display:block;min-width:0;width:100%;height:100%;margin:0;box-sizing:border-box;align-self:stretch;overflow-wrap:anywhere}
}
@media (min-width:650px) and (max-width:899px){#sf-review-list.sf-review-grid{max-width:820px}}

/* Reset the legacy carousel's implicit columns before adding desktop rows. */
@media(min-width:900px){
 #sf-review-list.sf-review-grid.sf-expanded{grid-auto-flow:row!important;grid-auto-columns:auto!important;grid-template-rows:none;align-items:start!important;overflow:visible}
 #sf-review-list.sf-expanded>.sf-review-card{height:auto!important;align-self:start;scroll-margin-top:110px}
}

/* Mobile: one stable card, swipe between reviews; scroll long text inside it. */
@media(max-width:899px){
 #sf-review-list .sf-review-card{display:grid;grid-template-rows:48px 24px minmax(0,1fr) 32px;gap:8px;height:390px;max-height:390px;padding:22px;overflow:hidden;animation:none}
 #sf-review-list .sf-review-person{margin:0;min-height:0}
 #sf-review-list .sf-review-copy{margin:0;font-size:14px;line-height:1.65;height:100%;max-height:8lh;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#82967d #edf1e8;padding-right:8px;min-height:0}
 #sf-review-list .sf-review-original{grid-row:4;margin:0;align-self:start;justify-self:start;font-size:11px}
 #sf-review-fallback{display:block!important}
 .reviews-card .ti-widget{display:none!important}
}
