/* Google-style review cards, scoped to the selected-review section. */
.ald-homepage-reviews{color:#202124;font-family:Arial,Helvetica,sans-serif;line-height:1.5;padding:32px 0;max-width:1120px;width:100%;margin:0 auto}
.ald-homepage-reviews,.ald-homepage-reviews *{box-sizing:border-box}
.ald-homepage-reviews>header{text-align:center;margin:0 0 24px}
.ald-homepage-reviews h2{font:600 clamp(30px,3vw,38px)/1.15 "Cormorant Garamond",Georgia,serif;color:#302b25;margin:0}
.ald-homepage-reviews .ald-reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.ald-homepage-reviews .ald-reviews-grid:has([data-review-more][aria-expanded=true]){align-items:start}
.ald-homepage-reviews .ald-review-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;border:1px solid #dadce0;border-radius:12px;margin:0;padding:22px;background:#fff;box-shadow:0 2px 6px rgba(60,64,67,.06);font:400 15px/1.55 Arial,Helvetica,sans-serif;text-align:left}
.ald-homepage-reviews .ald-review-person{display:flex;align-items:center;gap:12px;width:100%;min-width:0;margin-bottom:2px}
.ald-homepage-reviews .ald-review-avatar{position:relative;width:44px;height:44px;flex:0 0 44px;border-radius:50%;overflow:hidden;background:var(--ald-avatar-color,#3367d6);color:#fff;display:grid;place-items:center;font:500 20px/1 Arial,Helvetica,sans-serif;text-transform:uppercase}
.ald-homepage-reviews .ald-review-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.ald-homepage-reviews .ald-review-person-info{min-width:0}
.ald-homepage-reviews .ald-review-person h3{font:600 15px/1.4 Arial,Helvetica,sans-serif;margin:0;color:#202124;overflow-wrap:anywhere;letter-spacing:0}
.ald-homepage-reviews .ald-review-rating-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;width:100%}
.ald-homepage-reviews .ald-review-rating-row time{font:400 12px/1.4 Arial,Helvetica,sans-serif;color:#70757a}
.ald-homepage-reviews .ald-review-stars{display:flex;align-items:center;gap:1px;line-height:1;flex-shrink:0}
.ald-homepage-reviews .ald-review-stars svg{display:block;width:18px;height:18px}
.ald-homepage-reviews .ald-review-star-filled{fill:#fbbc04}
.ald-homepage-reviews .ald-review-star-empty{fill:#dadce0}
.ald-homepage-reviews blockquote{font:400 15px/1.55 Arial,Helvetica,sans-serif!important;font-style:normal;margin:0!important;padding:0!important;border:0!important;background:none!important;color:#3c4043!important;overflow-wrap:anywhere;width:100%;box-shadow:none!important;text-align:left!important}
.ald-homepage-reviews blockquote::before,.ald-homepage-reviews blockquote::after{content:none!important}
.ald-homepage-reviews .ald-review-collapsed .ald-review-text{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.ald-homepage-reviews .ald-review-more{display:inline-flex;align-items:center;min-height:36px;width:auto!important;max-width:none;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;text-shadow:none!important;filter:none!important;transform:none!important;padding:4px 0!important;margin:-3px 0 0!important;color:#1a73e8!important;font:500 14px/1.4 Arial,Helvetica,sans-serif!important;letter-spacing:0!important;cursor:pointer;text-align:left;text-transform:none!important}
.ald-homepage-reviews .ald-review-more:hover{text-decoration:underline;text-underline-offset:3px}
.ald-homepage-reviews [hidden]{display:none!important}
.ald-homepage-reviews .ald-review-source{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;margin-top:auto;padding-top:12px;border-top:1px solid #e8eaed;color:#1a73e8!important;font:500 12px/1.4 Arial,Helvetica,sans-serif;text-decoration:none!important}
.ald-homepage-reviews .ald-review-source:hover>span:last-child{text-decoration:underline;text-underline-offset:3px}
.ald-homepage-reviews .ald-review-google-wordmark{font:500 21px/1 Arial,Helvetica,sans-serif;letter-spacing:-.8px;white-space:nowrap}
.ald-homepage-reviews .ald-review-google-wordmark>span:nth-child(1),.ald-homepage-reviews .ald-review-google-wordmark>span:nth-child(4){color:#4285f4}
.ald-homepage-reviews .ald-review-google-wordmark>span:nth-child(2),.ald-homepage-reviews .ald-review-google-wordmark>span:nth-child(6){color:#ea4335}
.ald-homepage-reviews .ald-review-google-wordmark>span:nth-child(3){color:#fbbc05}
.ald-homepage-reviews .ald-review-google-wordmark>span:nth-child(5){color:#34a853}
.ald-homepage-reviews button:focus-visible,.ald-homepage-reviews a:focus-visible{outline:2px solid #1a73e8;outline-offset:4px;border-radius:3px}
.ald-homepage-reviews .ald-reviews-grid:has(>article:only-child){grid-template-columns:minmax(0,640px);justify-content:center}
.ald-homepage-reviews .ald-reviews-grid:has(>article:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:840px;margin:auto}

/* Adapt only the legacy Elementor review wrapper containing our reviews.
   Original pages using the external Google widget keep their own styling. */
.elementor .elementor-element.elementor-element-b3a7bd3:has(.ald-homepage-reviews){
 --padding-top:40px!important;--padding-bottom:36px!important;--padding-left:24px!important;--padding-right:24px!important;
 --gap:0px!important;--row-gap:0px!important;--column-gap:0px!important;
 padding:40px 24px 36px!important;
 background-color:#faf7f1!important;background-image:radial-gradient(ellipse at 12% 10%,rgba(214,175,103,.17),transparent 52%),radial-gradient(ellipse at 92% 90%,rgba(153,176,158,.13),transparent 48%),linear-gradient(140deg,#fcfaf6,#f4ecdd)!important;border-top:1px solid #e9e0d1;
}
.elementor .elementor-element-b3a7bd3:has(.ald-homepage-reviews)>.elementor-motion-effects-container>.elementor-motion-effects-layer{background-image:radial-gradient(ellipse at 12% 10%,rgba(214,175,103,.17),transparent 52%),radial-gradient(ellipse at 92% 90%,rgba(153,176,158,.13),transparent 48%),linear-gradient(140deg,#fcfaf6,#f4ecdd)!important}
.elementor .elementor-element-b3a7bd3:has(.ald-homepage-reviews)>.e-con-inner{max-width:1120px;gap:0;padding:0}
.elementor .elementor-element-b3a7bd3:has(.ald-homepage-reviews) .elementor-element-10453971{margin:0!important;width:100%;max-width:100%}
.elementor .elementor-element-b3a7bd3 .ald-homepage-reviews{padding:0}
/* The old, separate quote divider is redundant once the reviews have a border. */
.elementor .elementor-element.elementor-element-5dbf371c:has(+.elementor-element-b3a7bd3 .ald-homepage-reviews){display:none!important}
.elementor .elementor-element.elementor-element-26e9bbf3:has(.ald-home-start):has(+.elementor-element-5dbf371c+.elementor-element-b3a7bd3 .ald-homepage-reviews){--padding-bottom:48px!important}

@media(max-width:900px){.ald-homepage-reviews .ald-reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .ald-homepage-reviews{padding:24px 0}.ald-homepage-reviews>header{margin-bottom:22px}
 .ald-homepage-reviews .ald-reviews-grid,.ald-homepage-reviews .ald-reviews-grid:has(>article:nth-child(2):last-child){grid-template-columns:1fr;gap:14px}
 .ald-homepage-reviews .ald-review-card{padding:20px;border-radius:12px}.ald-homepage-reviews .ald-review-more{min-height:44px}
 .elementor .elementor-element.elementor-element-b3a7bd3:has(.ald-homepage-reviews){--padding-top:28px!important;--padding-bottom:24px!important;--padding-left:20px!important;--padding-right:20px!important;padding:28px 20px 24px!important}
 .elementor .elementor-element.elementor-element-26e9bbf3:has(.ald-home-start):has(+.elementor-element-5dbf371c+.elementor-element-b3a7bd3 .ald-homepage-reviews){--padding-bottom:32px!important}
}

/* Native horizontal scrolling also supports touch swipes and trackpads. */
.ald-homepage-reviews .ald-reviews-grid.ald-reviews-carousel{
 --ald-carousel-columns:3;display:flex;gap:20px;align-items:stretch;width:100%;max-width:none;margin:0;
 overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:2px;
 padding:4px 2px 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;
}
.ald-homepage-reviews .ald-reviews-carousel::-webkit-scrollbar{display:none}
.ald-homepage-reviews .ald-reviews-carousel>.ald-review-card{
 flex:0 0 calc((100% - 4px - (var(--ald-carousel-columns) - 1)*20px)/var(--ald-carousel-columns));
 scroll-snap-align:start;scroll-snap-stop:normal;
}
.ald-homepage-reviews .ald-reviews-grid.ald-reviews-carousel:has([data-review-more][aria-expanded=true]){align-items:flex-start}
.ald-homepage-reviews .ald-reviews-grid.ald-reviews-carousel:has(>article:only-child){max-width:640px;margin:auto}
.ald-homepage-reviews .ald-reviews-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 14px;margin-top:10px}
.ald-homepage-reviews .ald-review-arrow,.ald-homepage-reviews .ald-review-dot{
 display:inline-flex;align-items:center;justify-content:center;box-shadow:none!important;text-shadow:none!important;filter:none!important;
 background:#fff!important;color:#3c4043!important;border:1px solid #dadce0!important;border-radius:50%!important;
 min-width:44px;min-height:44px;padding:0!important;margin:0!important;font:400 22px/1 Arial,sans-serif!important;
 width:44px!important;cursor:pointer;transform:none!important;
}
.ald-homepage-reviews .ald-review-arrow:hover:not(:disabled){border-color:#1a73e8!important;color:#1a73e8!important}
.ald-homepage-reviews .ald-review-arrow:disabled{opacity:.35;cursor:default}
.ald-homepage-reviews .ald-review-dots{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;max-width:100%;gap:0}
.ald-homepage-reviews .ald-review-dot{min-width:28px;width:28px!important;border:0!important;background:transparent!important}
.ald-homepage-reviews .ald-review-dot::before{content:"";width:7px;height:7px;border-radius:50%;background:#b7bdc5}
.ald-homepage-reviews .ald-review-dot[aria-current=true]::before{width:9px;height:9px;background:#1a73e8}
@media(max-width:600px){
 .ald-homepage-reviews .ald-reviews-grid.ald-reviews-carousel{gap:14px}
 .ald-homepage-reviews .ald-reviews-carousel>.ald-review-card{flex-basis:calc((100% - 4px - (var(--ald-carousel-columns) - 1)*14px)/var(--ald-carousel-columns))}
}
@media(prefers-reduced-motion:reduce){.ald-homepage-reviews .ald-reviews-carousel{scroll-behavior:auto}}

/* Match the live site's slider controls; keep touch controls below on mobile. */
.ald-homepage-reviews{position:relative}
@media(min-width:701px){
 .ald-homepage-reviews .ald-review-arrow{position:absolute;top:var(--ald-review-arrow-top,50%);margin-top:-22px!important;z-index:2;background:#fff!important;box-shadow:0 2px 8px rgba(60,64,67,.12)!important}
 .ald-homepage-reviews [data-review-prev]{left:-18px}
 .ald-homepage-reviews [data-review-next]{right:-18px}
 .ald-homepage-reviews .ald-reviews-controls{gap:0 12px}
}

.ald-homepage-reviews .ald-review-card{border-radius:18px;border-color:#e5dfd4;padding:22px;gap:10px;background:linear-gradient(155deg,#fff 60%,#fdfbf7);box-shadow:0 4px 14px rgba(72,54,26,.07);transition:border-color .2s,background-color .2s}
.ald-homepage-reviews .ald-review-card:hover{border-color:#c7b48d}
.ald-homepage-reviews>header::before{content:"\201C";display:block;width:34px;height:34px;margin:0 auto 10px;border:1px solid #d9c59f;border-radius:50%;background:rgba(255,255,255,.65);color:#a27b3c;font:600 40px/1.2 Georgia,serif}
.ald-homepage-reviews h2 span{color:#8c6831;font-style:italic}
.ald-homepage-reviews>header::after{content:"";display:block;width:60px;height:1px;margin:14px auto 0;background:#bfa679}
.ald-homepage-reviews .ald-review-avatar{width:48px;height:48px;flex-basis:48px;box-shadow:0 0 0 3px #f5f2ec}
.ald-homepage-reviews .ald-review-person{margin-bottom:4px}
.ald-homepage-reviews .ald-review-person h3{font-size:16px}
.ald-homepage-reviews blockquote{line-height:1.55!important}
.ald-homepage-reviews .ald-review-arrow{border-color:#d8c9af!important;color:#775932!important}
.ald-homepage-reviews .ald-review-arrow:hover:not(:disabled){border-color:#ac8a51!important;color:#775932!important;background:#faf5eb!important}
.ald-homepage-reviews .ald-review-dot::before{background:#cec4b4}
.ald-homepage-reviews .ald-review-dot[aria-current=true]::before{width:20px;border-radius:5px;background:#a78040}
@media(max-width:600px){.ald-homepage-reviews .ald-review-card{padding:20px;border-radius:16px}.ald-homepage-reviews>header::before{width:30px;height:30px;font-size:36px;margin-bottom:8px}.ald-homepage-reviews>header::after{margin-top:12px}.ald-homepage-reviews>header{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){.ald-homepage-reviews .ald-review-card{transition:none}}
.ald-homepage-reviews .ald-review-person-info{flex:1}
.ald-homepage-reviews .ald-review-person time{display:block;color:#70757a;font:400 12px/1.4 Arial,sans-serif;margin-top:3px}
.ald-homepage-reviews .ald-review-google-icon{display:flex;align-items:center;justify-content:center;width:28px;min-width:28px;height:32px;align-self:flex-start}
.ald-homepage-reviews .ald-review-google-icon img{display:block;width:20px;height:20px}
.ald-homepage-reviews .ald-review-source{justify-content:flex-start;border-top:1px solid #eee9e0;min-height:36px;padding-top:12px}
