/* Put the client's words first, with a quiet editorial introduction. */
#reviews{
  display:grid;
  grid-template-columns:minmax(240px,.72fr) minmax(0,1.5fr);
  grid-template-rows:auto auto;
  align-items:center;
  column-gap:clamp(30px,5vw,78px);
  row-gap:25px;
  padding-block:58px;
}
#reviews .reviews-intro{grid-column:1;grid-row:1;align-self:end}
#reviews .reviews-intro .eyebrow{margin:0 0 18px;color:#586770;font-size:11px}
#reviews h2{font-size:clamp(30px,3vw,45px);line-height:1.14;margin:0;letter-spacing:-.055em}
#reviews .reviews-intro-copy{max-width:28ch;margin:18px 0 0;font-size:13px;line-height:1.7;color:#65717a}
#reviews .review-card{
  grid-column:2;
  grid-row:1/3;
  display:grid;
  grid-template-columns:clamp(115px,12vw,155px) minmax(0,1fr);
  gap:26px;
  align-items:center;
  min-height:310px;
  padding:28px;
  border:1px solid #dce3e6;
  border-radius:24px;
  background:#fff;
  box-shadow:0 10px 30px #0a263904;
  overflow:hidden;
}
#reviews .review-portrait{margin:0;min-width:0;align-self:center}
#reviews .review-portrait img{width:100%;height:auto;aspect-ratio:10/13;object-fit:cover;object-position:center 35%;border-radius:15px;background:#e7edee}
#reviews .review-portrait figcaption{margin-top:8px;color:#7c858b;font-size:9px;line-height:1.4;text-align:center;letter-spacing:.01em}
#reviews .review-copy{padding:0;min-width:0;position:static}
#reviews .quote-icon{position:static;width:27px;height:27px;margin:0 0 12px;color:#477fa6;opacity:.8}
#reviews .review-copy blockquote{margin:0 0 23px;min-height:0;font-size:clamp(15px,1.45vw,20px);line-height:1.55;font-weight:400;letter-spacing:-.025em;color:#233b49;text-wrap:pretty}
#reviews .review-author{display:flex;gap:10px;align-items:center;min-width:0}
#reviews .review-avatar{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:50%;background:#edf3f6;color:#376079;font-size:10px;font-weight:600;letter-spacing:-.025em}
#reviews .review-author strong{display:block;font-size:12px;line-height:1.4;font-weight:600;color:#1c303c;letter-spacing:-.015em}
#reviews .review-role{display:block;margin-top:2px;font-size:9px;line-height:1.4;color:#77818a}
#reviews .review-read{display:inline-flex;width:fit-content;gap:9px;margin:14px 0 0 42px;padding:5px 0;font-size:11px;line-height:1.5;color:#294e67;border-bottom:1px solid #bacbd5;background:transparent}
#reviews .review-read svg{width:15px;height:15px}
#reviews .reviews-navigation{grid-column:1;grid-row:2;display:flex;align-items:center;gap:24px;align-self:start}
#reviews .review-counter{position:static;margin:0;font-size:11px;line-height:1;letter-spacing:.08em;font-variant-numeric:tabular-nums;color:#273e4c}
#reviews .review-counter span{display:inline-block;margin-inline:6px;color:#99a5ad}
#reviews .carousel-controls{position:static;margin:0;gap:8px}
#reviews .carousel-controls .circle{width:40px;height:40px;border-radius:11px}
@media(max-width:1000px) and (min-width:801px){
  #reviews{grid-template-columns:.7fr 1.5fr;column-gap:25px;padding-block:45px}
  #reviews .review-card{padding:22px;gap:19px;grid-template-columns:110px minmax(0,1fr)}
  #reviews .review-copy blockquote{font-size:15px}
  #reviews h2{font-size:31px}
}
@media(max-width:800px){
  #reviews{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:22px;padding-block:40px}
  #reviews .reviews-intro{grid-column:1;grid-row:1;align-self:auto}
  #reviews h2{font-size:34px}
  #reviews .reviews-intro .eyebrow{margin-bottom:14px}
  #reviews .reviews-intro-copy{display:none}
  #reviews .review-card{grid-column:1;grid-row:2;min-height:0;grid-template-columns:125px minmax(0,1fr);gap:24px;padding:24px}
  #reviews .review-copy blockquote{font-size:17px;line-height:1.6;margin-bottom:20px}
  #reviews .reviews-navigation{grid-column:1;grid-row:3;justify-content:space-between;width:100%}
}
@media(max-width:540px){
  #reviews{gap:18px;padding-block:34px}
  #reviews h2{font-size:30px;line-height:1.13}
  #reviews .reviews-intro .eyebrow{font-size:10px;margin-bottom:12px}
  #reviews .review-card{grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto auto;gap:6px 14px;padding:20px;border-radius:21px;align-items:start}
  #reviews .review-copy{display:contents}
  #reviews .quote-icon{display:none}
  #reviews .review-copy blockquote{grid-column:1/-1;grid-row:1;font-size:15px;line-height:1.6;margin:0 0 13px;min-height:0}
  #reviews .review-portrait{grid-column:1;grid-row:2/4;align-self:start}
  #reviews .review-portrait img{height:88px;aspect-ratio:auto;border-radius:10px}
  #reviews .review-portrait figcaption{font-size:7px;line-height:1.4;margin-top:5px;white-space:nowrap;letter-spacing:-.02em}
  #reviews .review-author{grid-column:2;grid-row:2;gap:8px;padding-top:5px}
  #reviews .review-avatar{width:26px;height:26px;font-size:8px}
  #reviews .review-author strong{font-size:11px}
  #reviews .review-role{font-size:8px;max-width:130px}
  #reviews .review-read{grid-column:2;grid-row:3;margin:0 0 0 34px;font-size:10px;gap:7px;align-self:start;padding-block:4px}
  #reviews .review-read svg{width:13px;height:13px}
  #reviews .carousel-controls .circle{width:38px;height:38px;border-radius:10px}
  #reviews .review-counter{font-size:10px}
}
@media(max-width:360px){
  #reviews{gap:16px;padding-block:28px}
  #reviews h2{font-size:28px}
  #reviews .review-card{padding:18px;gap:5px 12px;grid-template-columns:66px minmax(0,1fr)}
  #reviews .review-copy blockquote{font-size:14px;line-height:1.55;margin-bottom:12px}
  #reviews .review-portrait img{height:84px}
  #reviews .review-avatar{display:none}
  #reviews .review-read{margin-left:0}
}
