
.customer-reviews{margin-top:2.5rem;padding-top:2rem;border-top:0;text-align:left;color:#3a2e2a}
.customer-reviews h3{margin:0 0 1.2rem;font-family:'Cormorant Garamond',serif;font-size:clamp(1.8rem,3vw,2.5rem);text-align:center}
.review-frame{position:relative;border:1px solid #e4cec3;border-radius:24px;background:linear-gradient(125deg,#fffdfb,#f7ebe5)}
.review-slide{padding:1.5rem 3.8rem;min-width:0}
.customer-reviews .review-slide blockquote{max-width:none;width:auto;margin:.7rem 0 1rem;font:inherit;font-size:1rem;line-height:1.45;text-align:left;overflow-wrap:anywhere}
.customer-reviews .review-slide blockquote p{max-width:none;margin:0 0 .55rem;font:inherit;line-height:inherit;color:inherit}
.customer-reviews .review-slide blockquote p:last-child{margin-bottom:0}
.review-stars{color:#a87824;font-size:1.25rem;letter-spacing:.15em}
.review-rating,.review-count{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.customer-reviews .review-author{font-weight:700;margin:.5rem 0 .25rem;font-size:.95rem}.review-source{color:#755044;text-underline-offset:4px;font-size:.85rem}
.review-controls button{position:absolute;top:50%;transform:translateY(-50%);z-index:1;font:inherit;font-size:1.4rem;color:#755044;background:transparent;border:0;border-radius:50%;height:44px;width:44px;cursor:pointer;padding:0}
.review-prev{left:5px}.review-next{right:5px}.review-controls button:hover{background:#ead0c3}
.review-controls button:focus-visible,.review-source:focus-visible,.review-dot:focus-visible{outline:3px solid #795342;outline-offset:2px}
.review-dots:not([hidden]){display:flex;justify-content:center;flex-wrap:wrap;gap:0;margin:.65rem 0 0}
.review-dot{display:grid;place-items:center;width:28px;height:32px;padding:0;border:0;background:transparent;cursor:pointer}
.review-dot:before{content:'';width:9px;height:9px;border:1px solid #946e5d;border-radius:50%;background:transparent}
.review-dot[aria-current=true]:before{background:#946e5d}
.reviews-ready .review-slide{display:none}.reviews-ready .review-slide.is-active{display:block}
@media(max-width:480px){.customer-reviews{margin-top:1.8rem}.review-slide{padding:1.1rem 2.65rem}.review-controls button{width:34px;height:44px}.review-prev{left:2px}.review-next{right:2px}.customer-reviews .review-slide blockquote{font-size:.95rem;line-height:1.4}.review-frame{border-radius:20px}}

/* A connected testimonial bubble within the Google reviews section. */
.customer-reviews{margin-top:1.4rem;padding-top:0}
.customer-reviews h3{font-size:clamp(1.4rem,2vw,1.8rem);margin:0 0 1.4rem;color:#755044;font-weight:600}
.review-frame{background:#fffdfb;border-radius:32px 32px 32px 8px;box-shadow:0 10px 28px rgba(95,65,49,.045)}
.review-frame:before{content:'';position:absolute;top:-9px;left:calc(50% - 9px);width:16px;height:16px;background:#fffdfb;border-left:1px solid #e4cec3;border-top:1px solid #e4cec3;transform:rotate(45deg)}
.review-slide{position:relative;padding-top:1.25rem;padding-bottom:1.25rem}
.customer-reviews .review-author{margin-top:.85rem}
.review-dots:not([hidden]){margin-top:.4rem}
@media(max-width:480px){.customer-reviews{margin-top:1.1rem}.customer-reviews h3{margin-bottom:1.1rem}.review-frame{border-radius:24px 24px 24px 6px}.review-slide{padding-top:1.1rem;padding-bottom:1.1rem}}
/* Align the testimonial with the two columns of the Google introduction. */
@media(min-width:901px){
 .customer-reviews{display:grid;grid-template-columns:230px minmax(0,1fr);column-gap:2.5rem;padding:1.5rem 2.5rem 0;position:relative}
 .customer-reviews:before{content:'“';grid-column:1;grid-row:1;align-self:stretch;display:flex;align-items:center;justify-content:center;border-right:1px solid rgba(176,111,87,.18);padding-right:1.5rem;font-family:Georgia,serif;font-size:3rem;line-height:1;color:#bd8c76}
 .customer-reviews>h3,.customer-reviews>.review-frame,.customer-reviews>.review-dots{grid-column:2;min-width:0}
 .customer-reviews>h3{grid-row:1}.customer-reviews>.review-frame{grid-row:2}.customer-reviews>.review-dots{grid-row:3}
}
@media(min-width:901px){.customer-reviews{padding-inline:0;grid-template-columns:270px minmax(0,1fr)}.customer-reviews>h3{margin:0 2.5rem 0 0;align-self:center}.customer-reviews>.review-frame{grid-column:1 / -1;margin-top:1.4rem}.customer-reviews>.review-dots{grid-column:1 / -1}.customer-reviews:before{padding-block:.25rem}}

/* Curved bubble tail: retain its origin and point toward the heading center. */
@media(min-width:901px){
 .review-frame:before{top:-25px;left:calc(50% - 9px);width:145px;height:26px;border:0;transform:none;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 145 26' preserveAspectRatio='none'%3E%3Cpath d='M0 26 C10 4 27 13 48 12 C83 15 124 15 144 1 C132 23 68 22 18 26' fill='%23fffdfb' stroke='%23e4cec3' stroke-width='1' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% 100% no-repeat;pointer-events:none}
}