/* Manually checked Google review snapshot. No external widget or tracking. */
.trust-strip .review-trust{gap:7px;font-weight:700}
.review-trust .review-star{color:#805b13;font-size:17px}
.reviews-section{background:#f0f1ee;border-block:1px solid #e0e2dd}
.reviews-section .section-heading{align-items:center;margin-bottom:38px}
.reviews-section .section-heading>div{min-width:0}
.reviews-section .section-heading h2{font-size:clamp(36px,4.1vw,61px)}
.google-rating{display:flex;align-items:center;gap:22px;flex-shrink:0;padding:24px 0 24px 36px;border-left:1px solid #cdd1c9}
.google-rating-number{font-size:94px;letter-spacing:-.075em;line-height:1;font-weight:650}
.google-rating-copy{display:grid;gap:7px;font-size:11px;line-height:1.5}
.google-rating-copy strong{font-size:13px}
.review-stars{letter-spacing:.12em;color:#805b13;font-size:20px;line-height:1.3}
.google-rating-copy small{color:#535b55;font-size:10px}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.review-card{background:#fbfcf9;border:1px solid #dce0d8;border-radius:6px;padding:29px;display:flex;flex-direction:column;min-width:0;transition:transform .25s,border-color .25s}
.review-card:hover{transform:translateY(-4px);border-color:#9ba598}
.review-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.review-platform{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:650;color:#3c4043}
.google-mark{display:block;object-fit:contain;width:18px;height:19px;flex-shrink:0}
.google-rating-logo{display:grid;place-items:center;width:58px;height:58px;background:#fff;border:1px solid #e1e5de;border-radius:50%;flex-shrink:0}
.google-rating-logo .google-mark{width:30px;height:31px}
.review-card .review-stars{font-size:14px}
.review-card blockquote{margin:32px 0 30px;font-size:clamp(21px,2.2vw,30px);line-height:1.36;letter-spacing:-.045em;font-weight:550;flex:1}
.review-author{display:flex;align-items:center;gap:11px;font-size:12px;font-weight:650}
.review-avatar{width:33px;height:33px;border-radius:50%;background:#e5e9e1;display:grid;place-items:center;font-size:10px;letter-spacing:0;flex-shrink:0}
.review-source{display:flex;align-items:center;gap:8px;font-size:10px;color:#4a554a;min-height:44px;margin-top:7px;text-decoration:underline;text-underline-offset:4px}
.review-source svg{width:13px;height:13px}
.reviews-caption{color:#586057;font-size:10px;margin-top:20px;line-height:1.7}
.reviews-caption a{text-decoration:underline;text-underline-offset:3px}
.review-invite{display:grid;grid-template-columns:1fr auto;align-items:center;gap:38px;margin-top:44px;padding-top:35px;border-top:1px solid #cdd1c9}
.review-invite h3{font-size:32px;margin-bottom:12px}
.review-invite p{font-size:12px;max-width:500px;color:#535b55}
.review-invite .button{margin-top:20px;min-height:50px}
.review-qr{display:grid;grid-template-columns:130px auto;align-items:center;gap:20px}
.review-qr>a{background:white;border:1px solid #d9ddd5;border-radius:4px;padding:7px}
.review-qr img{width:114px;height:114px}
.review-qr figcaption{max-width:156px}
.review-qr figcaption strong{display:block;font-size:13px;margin-bottom:6px}
.review-qr figcaption span{font-size:11px;color:#535b55;line-height:1.65;display:block}
.review-downloads{margin-top:22px;color:#4d574d;font-size:10px}
.review-downloads summary{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:4px;list-style:none}
.review-downloads summary::after{content:'+';font-size:15px}.review-downloads[open] summary::after{content:'−'}
.review-downloads summary::-webkit-details-marker{display:none}
.review-download-links{display:flex;flex-wrap:wrap;gap:6px 22px}.review-download-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){.google-rating{padding-left:24px;gap:14px}.google-rating-number{font-size:76px}.review-card{padding:23px}.review-qr{grid-template-columns:115px auto;gap:14px}.review-qr img{width:99px;height:99px}.review-qr figcaption{max-width:130px}}
@media(max-width:760px){.reviews-section .section-heading{display:block}.google-rating{border-left:0;padding:26px 0 0;gap:22px}.google-rating-number{font-size:82px}.review-grid{grid-template-columns:1fr;gap:12px}.review-card{padding:23px 25px}.review-card blockquote{font-size:27px;margin-block:21px}.review-invite{grid-template-columns:1fr;gap:30px;margin-top:30px;padding-top:30px}.review-invite h3{font-size:29px}.review-qr{margin:0;grid-template-columns:130px 1fr;gap:20px}.review-qr img{width:114px;height:114px}.review-qr figcaption{max-width:200px}.review-qr figcaption strong{font-size:14px}.review-qr figcaption span{font-size:12px}.reviews-caption{font-size:10px}.trust-strip{flex-wrap:wrap;padding-block:18px;gap:15px 22px}.trust-strip .review-trust{display:flex!important}}
/* Compact phone reviews: keep complete quotes and generous link hit areas. */
@media(max-width:760px){
  .reviews-section .section-heading{margin-bottom:18px}
  .reviews-section .section-heading .eyebrow{margin-bottom:10px}
  .reviews-section .section-heading h2{font-size:28px;line-height:1.12}
  .google-rating{padding-top:14px;gap:12px}
  .google-rating-logo{width:40px;height:40px}
  .google-rating-logo .google-mark{width:24px;height:25px}
  .google-rating-number{font-size:44px}
  .google-rating-copy{gap:2px;line-height:1.35}
  .google-rating-copy strong{font-size:12px}
  .google-rating .review-stars{font-size:15px}
  .review-grid{gap:8px}
  .review-card{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;padding:12px 14px}
  .review-card-top,.review-card blockquote{grid-column:1/-1}
  .review-card .review-stars{font-size:12px}
  .review-card blockquote{font-size:17px;line-height:1.45;letter-spacing:-.025em;margin:10px 0 8px}
  .review-author{gap:7px;min-width:0}
  .review-avatar{width:26px;height:26px}
  .review-source{margin-top:0;gap:5px;justify-self:end}
  .reviews-caption{margin-top:12px;line-height:1.6}
}
/* One short entrance in Google's colours; never an endless loading animation. */
.review-card{position:relative;overflow:hidden}
.review-card::before{content:'';position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,#4285f4 0 25%,#ea4335 25% 50%,#fbbc05 50% 75%,#34a853 75%);opacity:.65}
@media(prefers-reduced-motion:no-preference){
  .review-card.review-entered{animation:review-arrive .65s ease both;animation-delay:var(--review-delay,0ms)}
  .review-entered .google-mark{animation:google-arrive .9s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--review-delay,0ms)}
  .review-card.review-entered::before{animation:review-colours 1.1s ease both;animation-delay:var(--review-delay,0ms);transform-origin:left}
  @keyframes review-arrive{from{opacity:.25;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
  @keyframes google-arrive{0%{opacity:.3;transform:translateY(7px) scale(.75)}60%{opacity:1;transform:translateY(-2px) scale(1.08)}100%{opacity:1;transform:translateY(0) scale(1)}}
  @keyframes review-colours{from{transform:scaleX(0);opacity:1}to{transform:scaleX(1);opacity:.65}}
}
