/* 0.7.1: scoped refinement of the existing card, palette, typography and botanical aside.
   The rest of theme.css is intentionally unchanged. */
.ad-testimonials .ad-testimonial-layout {
  grid-template-columns:96px minmax(0,1.6fr) minmax(0,1fr);
}
.ad-testimonials .ad-slider-controls {
  grid-column:1; grid-row:1; display:grid; grid-template-columns:44px 44px;
  gap:7px 8px; align-content:center;
}
.ad-testimonials .ad-slider-arrow { width:44px; height:44px; }
.ad-testimonials .ad-slider-prev { grid-column:1; grid-row:1; }
.ad-testimonials [data-slide-next] { grid-column:2; grid-row:1; }
.ad-testimonials .ad-slide-count {
  grid-column:1 / -1; grid-row:2; justify-self:center;
  font:500 11px/1.5 var(--ad-ui); letter-spacing:.09em;
  color:var(--ad-rose-dark); font-variant-numeric:tabular-nums;
}
.ad-testimonials .ad-testimonial-slides { grid-column:2; grid-row:1; min-width:0; position:relative; touch-action:pan-y pinch-zoom; }
.ad-testimonials .ad-testimonial-slide { scroll-margin-top:110px; }
.ad-testimonials .ad-testimonial-card {
  display:grid; grid-template-columns:clamp(100px,9.5vw,137px) minmax(0,1fr);
  grid-template-rows:auto auto; column-gap:clamp(18px,2.4vw,34px); row-gap:6px;
  align-items:center; align-content:center; min-height:var(--ad-review-card-height,0px);
}
.ad-testimonials .ad-testimonial-card>.ad-avatar { grid-column:1; grid-row:1 / 3; align-self:center; }
.ad-testimonials .ad-avatar-initials {
  background:linear-gradient(135deg,#f2e1d5,#ead0c7); color:var(--ad-plum);
  border:1px solid rgba(183,131,113,.25); box-shadow:inset 0 0 0 7px rgba(255,252,249,.34);
  font:400 clamp(35px,3.1vw,45px)/1 var(--ad-font); letter-spacing:-.025em;
}
.ad-testimonials .ad-testimonial-body { grid-column:2; grid-row:1; min-width:0; align-self:end; }
.ad-testimonials .ad-testimonial-card>figcaption { grid-column:2; grid-row:2; min-width:0; align-self:start; }
.ad-testimonials .ad-testimonial-card blockquote p { font-size:clamp(13px,.99vw,14px); line-height:1.5; overflow-wrap:anywhere; }
.ad-testimonials .ad-testimonial-card figcaption { font-size:clamp(12px,.99vw,14px); overflow-wrap:anywhere; }
.ad-testimonials .ad-testimonial-card figcaption span { font-size:.88em; margin-top:2px; }
.ad-testimonials .ad-review-toggle {
  display:inline-flex; align-items:center; gap:7px; min-height:36px; max-width:100%;
  padding:4px 0; border:0; background:transparent; color:var(--ad-rose-dark);
  font:500 12px/1.5 var(--ad-ui); text-align:left; cursor:pointer;
}
.ad-testimonials .ad-review-toggle:hover { color:var(--ad-plum); text-decoration:underline; text-underline-offset:3px; }
.ad-testimonials .ad-review-toggle .ad-icon { width:17px; height:17px; flex-shrink:0; }
.ad-testimonials .ad-review-toggle[aria-expanded="true"] .ad-icon { transform:rotate(-90deg); }
.ad-testimonials .ad-testimonial-aside { grid-column:3; grid-row:1; align-self:center; height:185px; }
.ad-testimonials .ad-testimonial-layout:not([data-carousel-ready]) .ad-testimonial-slide+.ad-testimonial-slide { margin-top:18px; }
.ad-testimonials [data-carousel-ready] .ad-testimonial-slide:not([hidden]) { animation:ad-review-reveal .2s ease-out; }
@keyframes ad-review-reveal { from { opacity:0; } to { opacity:1; } }

/* Layout-only measurement, always off-screen and never interactive. */
.ad-testimonials .ad-testimonial-slides.is-measuring .ad-testimonial-slide,
.ad-testimonials .ad-testimonial-slides.is-measuring .ad-testimonial-slide[hidden] {
  display:block!important; position:absolute; inset:0 0 auto; visibility:hidden;
  pointer-events:none; animation:none!important;
}
.ad-testimonials .ad-testimonial-slides.is-measuring .ad-testimonial-card { min-height:0!important; }

@media (min-width:951px) and (max-width:1150px) {
  .ad-testimonials .ad-testimonial-layout { grid-template-columns:96px minmax(0,1.7fr) minmax(0,1fr); }
}
@media (max-width:950px) {
  .ad-testimonials .ad-testimonial-layout { grid-template-columns:96px minmax(0,1fr); }
}
@media (max-width:767px) {
  .ad-testimonials .ad-testimonial-layout { grid-template-columns:minmax(0,1fr); }
  .ad-testimonials .ad-testimonial-slides { grid-column:1; grid-row:1; }
  .ad-testimonials .ad-slider-controls { grid-column:1; grid-row:2; display:flex; gap:15px; }
  .ad-testimonials .ad-slider-prev { order:1; }
  .ad-testimonials .ad-slide-count { order:2; min-width:52px; text-align:center; }
  .ad-testimonials [data-slide-next] { order:3; }
  .ad-testimonials .ad-testimonial-card { grid-template-columns:80px minmax(0,1fr); column-gap:18px; }
  .ad-testimonials .ad-avatar-initials { font-size:34px; }
  .ad-testimonials .ad-testimonial-card blockquote p { font-size:14px; }
  .ad-testimonials .ad-testimonial-card figcaption { margin-top:0; }
  .ad-testimonials .ad-review-toggle { min-height:44px; }
}
@media (max-width:540px) {
  .ad-testimonials .ad-testimonial-card { grid-template-columns:78px minmax(0,1fr); grid-template-rows:78px auto auto; row-gap:12px; align-content:start; }
  .ad-testimonials .ad-testimonial-card>.ad-avatar { grid-column:1; grid-row:1; }
  .ad-testimonials .ad-testimonial-body { grid-column:1 / -1; grid-row:2; align-self:start; }
  .ad-testimonials .ad-testimonial-card>figcaption { grid-column:1 / -1; grid-row:3; }
  .ad-testimonials .ad-testimonial-card .ad-stars { top:48px; left:118px; }
  .ad-testimonials .ad-testimonial-card .ad-stars .ad-icon { width:18px; height:18px; }
}
@media (prefers-reduced-motion:reduce) {
  .ad-testimonials [data-testimonial-slide] { animation:none!important; }
}
@media print {
  .ad-testimonials .ad-testimonial-slide,
  .ad-testimonials .ad-testimonial-slide[hidden],
  .ad-testimonials [data-review-full][hidden] { display:block!important; }
  .ad-testimonials [data-review-preview],
  .ad-testimonials [data-review-toggle],
  .ad-testimonials .ad-slider-controls,
  .ad-testimonials .ad-testimonial-aside { display:none!important; }
  .ad-testimonials .ad-testimonial-layout { display:block; }
  .ad-testimonials .ad-testimonial-card { min-height:0; break-inside:avoid; margin-bottom:16px; }
  .ad-testimonials [data-testimonial-slide] { animation:none!important; }
}