.google-reviews{
  position:relative;
  isolation:isolate;
  padding:64px 0 54px;
  background:var(--paper);
  color:#f5f7fa;
  /* The shared stylesheet registers the local Titillium Web files as Titillium. */
  font-family:Titillium,sans-serif;
  border-bottom:1px solid var(--paper);
}
.google-reviews::before{
  content:'';
  position:absolute;
  z-index:-1;
  inset:0;
  background:
    linear-gradient(180deg,var(--paper) 0%,#0b1116f5 24%,#0b1116f5 76%,var(--paper) 100%),
    image-set(url('/_release/meva-root-ready-20261022-v2/assets/google-reviews/background-1280.avif') type('image/avif'),url('/_release/meva-root-ready-20261022-v2/assets/google-reviews/background-1280.webp') type('image/webp')) center 38%/cover no-repeat;
  pointer-events:none;
}
.reviews-wrap{
  width:min(1360px,calc(100% - 10vw));
  max-width:none;
  margin-inline:auto;
}
.reviews-heading{
  display:grid;
  grid-template-columns:1.14fr .86fr;
  gap:34px;
  align-items:start;
  margin-bottom:25px;
}
.reviews-eyebrow{
  display:flex;
  align-items:center;
  gap:20px;
  margin:0 0 18px;
  color:#b6b6b6;
  font-size:13px;
  font-weight:600;
  letter-spacing:.22em;
}
.reviews-eyebrow::before{
  content:'';
  width:55px;
  height:4px;
  border-radius:2px;
  background:var(--red);
}
.reviews-heading h2{
  margin:0 0 16px;
  font-size:clamp(42px,3.7vw,62px);
  line-height:.96;
  letter-spacing:-.035em;
  font-weight:700;
}
.reviews-heading h2 span{color:#d3d3d3}
.reviews-intro{
  max-width:690px;
  margin:0;
  color:#cbcbcb;
  font-size:clamp(16px,1.18vw,19px);
  line-height:1.42;
}
.reviews-summary{
  justify-self:end;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
  width:min(100%,500px);
  min-width:0;
}
.reviews-summary-top{
  display:flex;
  align-items:center;
  gap:16px;
  min-height:66px;
}
.reviews-source-logo{
  width:54px;
  height:54px;
  flex:none;
  object-fit:contain;
}
.reviews-summary [data-reviews-score]{
  display:block;
  min-width:0;
}
.reviews-metrics{
  display:flex;
  align-items:center;
  gap:17px;
  min-width:0;
}
.reviews-rating-block,.reviews-count-block{display:flex;flex-direction:column;justify-content:center;min-width:0}
.reviews-rating-value{display:flex;align-items:baseline;gap:5px;white-space:nowrap;line-height:1}
.reviews-average{
  color:#f7f8f9;
  font-size:clamp(38px,3.1vw,48px);
  font-weight:700;
}
.reviews-out-of{
  color:#cbcbcb;
  font-size:15px;
  font-weight:400;
}
.reviews-summary-stars.review-stars{
  color:#606060;
  font-size:21px;
  letter-spacing:1px;
  line-height:1;
  white-space:nowrap;
}
.reviews-summary-stars .review-star-fill{color:#ffbf43}
.reviews-divider{align-self:stretch;width:1px;min-height:52px;background:#52606b;flex:none}
.reviews-count-value{color:#f7f8f9;font-size:clamp(27px,2.4vw,36px);font-weight:700;line-height:1.05;white-space:nowrap}
.reviews-count-label{color:#d8dde0;font-size:16px;font-weight:400;line-height:1.2;white-space:nowrap}
.reviews-summary-note{
  margin:0;
  color:#c8c8c8;
  font-size:15px;
  line-height:1.4;
}
.reviews-all{
  display:grid;
  grid-template-columns:23px 1fr 12px;
  align-items:center;
  gap:15px;
  align-self:flex-end;
  min-height:49px;
  padding:9px 17px;
  border:1px solid #454545;
  border-radius:10px;
  background:rgba(20,20,20,.88);
  color:#f9fbfd;
  font-size:16px;
  font-weight:600;
  text-decoration:none;
  transition:border-color .22s,background-color .22s;
}
.reviews-all svg{width:23px;height:23px}
.reviews-all span{font-size:30px;line-height:.6;font-weight:400}
.reviews-all:hover{border-color:#858585;background:#242424}
.reviews-empty{
  margin:0;
  padding:28px;
  border:1px solid #404040;
  border-radius:10px;
  background:rgba(20,20,20,.86);
  color:#cecece;
  font-size:17px;
  line-height:1.6;
}
.reviews-carousel{position:relative}
.reviews-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  touch-action:pan-y;
}
.review-card{
  min-width:0;
  min-height:260px;
  display:flex;
  flex-direction:column;
  padding:20px 21px 21px;
  border:1px solid #414141;
  border-radius:10px;
  background:rgba(21,21,21,.9);
  animation:review-enter-next .48s cubic-bezier(.2,.65,.2,1) both;
  transition:border-color .22s,background-color .22s;
}
.reviews-cards[data-direction=prev] .review-card{animation-name:review-enter-prev}
.review-card:hover{border-color:#686868;background:rgba(27,27,27,.96)}
.review-author{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  margin-bottom:14px;
}
.review-avatar{
  position:relative;
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:50%;
  background:#303030;
  color:#d0d0d0;
}
.review-avatar svg{width:27px;height:27px}
.review-avatar img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.review-identity h3{
  margin:0 0 2px;
  font-size:17px;
  font-weight:600;
  line-height:1.2;
  overflow-wrap:anywhere;
}
.review-rating{display:flex;align-items:center;gap:10px}
.review-google-link{display:grid;place-items:center;width:27px;height:32px;flex:none}
.review-google-link img{width:25px;height:25px;object-fit:contain}
.review-stars{
  position:relative;
  display:inline-block;
  width:max-content;
  white-space:nowrap;
  color:#606060;
  font-size:20px;
  line-height:1;
  letter-spacing:1px;
}
.review-star-fill{
  position:absolute;
  inset:0 auto 0 0;
  overflow:hidden;
  color:#ffc656;
}
.review-text{
  position:relative;
  margin:0 0 12px;
  padding:0;
  color:#e1e1e1;
  font-size:17px;
  font-weight:400;
  line-height:1.45;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.review-text.is-collapsed{
  display:-webkit-box;
  -webkit-line-clamp:5;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.review-card blockquote.review-text{padding-left:40px}
.review-card blockquote.review-text::before{
  content:'“';
  position:absolute;
  top:-11px;
  left:0;
  color:#aaa;
  font:700 46px Titillium,sans-serif;
}
.review-read-more{
  align-self:flex-start;
  margin:0 0 10px 40px;
  padding:0;
  border:0;
  background:none;
  color:#ddd;
  font:600 14px Titillium,sans-serif;
  text-decoration:underline;
  cursor:pointer;
}
.review-truncated{
  margin:0 0 10px 40px;
  color:#bdbdbd;
  font-size:13px;
  line-height:1.35;
}
.review-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:auto;
  padding-top:8px;
}
.review-tag{
  padding:4px 11px;
  border:1px solid #414141;
  border-radius:99px;
  background:rgba(33,33,33,.84);
  color:#e1e1e1;
  font-size:12px;
  line-height:1.15;
}
.reviews-controls{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  margin-top:18px;
}
.reviews-controls button{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  padding:0;
  border:1px solid #626b71;
  border-radius:50%;
  background:rgba(23,28,32,.74);
  color:#e4e9ec;
  cursor:pointer;
  transition:border-color .22s ease,background-color .22s ease,color .22s ease,box-shadow .22s ease;
}
.reviews-controls button svg{
  width:20px;
  height:20px;
}
.reviews-controls button:hover{
  border-color:#a5afb5;
  background:rgba(37,45,50,.94);
  color:#fff;
  box-shadow:0 0 14px rgba(210,225,235,.08);
}
.google-reviews :is(a,button):focus-visible{
  outline:2px solid var(--red);
  outline-offset:4px;
}
.google-reviews [hidden]{display:none!important}
@keyframes review-enter-next{
  from{opacity:0;transform:translate3d(18px,0,0)}
  to{opacity:1;transform:none}
}
@keyframes review-enter-prev{
  from{opacity:0;transform:translate3d(-18px,0,0)}
  to{opacity:1;transform:none}
}
@media(max-width:1180px){
  .reviews-wrap{width:calc(100% - 70px)}
  .reviews-heading{gap:35px}
  .review-author{grid-template-columns:52px minmax(0,1fr);gap:10px 14px}
  .review-avatar{width:52px;height:52px}
  .review-rating{grid-column:2;grid-row:2}
}
@media(max-width:1050px){
  .google-reviews{padding:58px 0 52px}
  .reviews-heading{grid-template-columns:1.1fr .9fr;gap:24px}
  .reviews-summary-top{gap:10px}
  .reviews-source-logo{width:46px;height:46px}
  .reviews-metrics{gap:10px}
  .reviews-average{font-size:38px}
  .reviews-summary-stars.review-stars{font-size:18px;letter-spacing:0}
  .reviews-count-value{font-size:28px}
  .reviews-count-label{font-size:14px}
  .reviews-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .reviews-heading h2{font-size:clamp(42px,5vw,58px)}
  .reviews-intro{font-size:17px}
  .reviews-summary-note{font-size:15px}
  .review-text{font-size:17px}
}
@media(max-width:650px){
  .google-reviews{padding:46px 0 42px}
  .google-reviews::before{
    background:
      linear-gradient(180deg,var(--paper) 0%,#0b1116f5 24%,#0b1116f5 76%,var(--paper) 100%),
      image-set(url('/_release/meva-root-ready-20261022-v2/assets/google-reviews/background-640.avif') type('image/avif'),url('/_release/meva-root-ready-20261022-v2/assets/google-reviews/background-640.webp') type('image/webp')) center/cover no-repeat;
  }
  .reviews-wrap{width:calc(100% - 36px)}
  .reviews-heading{grid-template-columns:1fr;gap:22px;margin-bottom:23px}
  .reviews-eyebrow{gap:14px;margin-bottom:14px;font-size:10px}
  .reviews-eyebrow::before{width:33px;height:3px}
  .reviews-heading h2{margin-bottom:12px;font-size:clamp(34px,9vw,44px);line-height:1.02}
  .reviews-intro{font-size:16px;line-height:1.5}
  .reviews-summary{justify-self:stretch;gap:12px;width:100%}
  .reviews-summary-top{min-height:52px;gap:12px}
  .reviews-source-logo{width:48px;height:48px}
  .reviews-metrics{gap:13px}
  .reviews-average{font-size:41px}
  .reviews-summary-stars.review-stars{font-size:18px;letter-spacing:.5px}
  .reviews-divider{min-height:48px}
  .reviews-count-value{font-size:30px}
  .reviews-count-label{font-size:14px}
  .reviews-summary-note{font-size:14px}
  .reviews-all{align-self:flex-start;min-height:43px;padding:8px 14px;font-size:14px;gap:10px}
  .reviews-all svg{width:19px;height:19px}
  .reviews-cards{grid-template-columns:1fr}
  .review-card{min-height:220px;padding:18px}
  .review-author{grid-template-columns:48px minmax(0,1fr) auto;gap:9px;margin-bottom:14px}
  .review-avatar{width:48px;height:48px}
  .review-rating{grid-column:3;grid-row:1}
  .review-google-link{width:22px;height:24px}
  .review-google-link img{width:20px;height:20px}
  .review-stars{font-size:17px;letter-spacing:0}
  .review-identity h3{font-size:17px}
  .review-text{font-size:16px;line-height:1.46}
  .review-card blockquote.review-text{padding-left:32px}
  .review-card blockquote.review-text::before{top:-9px;font-size:39px}
  .review-read-more,.review-truncated{margin-left:32px}
  .review-tag{font-size:12px}
  .reviews-controls{margin-top:16px}
  .reviews-empty{padding:20px;font-size:15px}
}
@media(max-width:360px){
  .reviews-wrap{width:calc(100% - 28px)}
  .reviews-source-logo{width:39px;height:39px}
  .reviews-summary-top{gap:8px}
  .reviews-metrics{gap:9px}
  .reviews-average{font-size:35px}
  .reviews-out-of{font-size:12px}
  .reviews-summary-stars.review-stars{font-size:15px;letter-spacing:0}
  .reviews-divider{min-height:43px}
  .reviews-count-value{font-size:25px}
  .reviews-count-label{font-size:12px}
  .review-author{grid-template-columns:46px minmax(0,1fr);gap:8px 10px}
  .review-avatar{width:46px;height:46px}
  .review-rating{grid-column:2;grid-row:2}
  .review-google-link{display:grid;width:21px;height:21px}
  .review-google-link img{width:19px;height:19px}
}
@media(prefers-reduced-motion:reduce){
  .review-card{animation:none;transition:none}
  .reviews-all{transition:none}
}
/* Keep review sources honest while giving short and long cards a common rhythm. */
.reviews-cards{align-items:stretch}.review-card{height:100%;min-height:290px}.review-avatar{font-size:18px;font-weight:600;position:relative}.review-avatar img{position:absolute;inset:0}
.review-text{line-height:1.5}.review-text.is-collapsed{-webkit-line-clamp:4;min-height:6em}.review-tags{margin-top:auto;padding-top:16px}.review-tag,.reviews-eyebrow{font-size:13px}.reviews-count-label{line-height:1.35}
