/* ==========================================================================
   reviews.css, parent testimonials (the trust heart of the page)
   ========================================================================== */
.tt-reviews{padding:var(--tt-section-y) 0;
  background:
    radial-gradient(circle at 85% 10%, rgba(139,95,168,.08), transparent 40%),
    radial-gradient(circle at 10% 90%, rgba(59,143,196,.08), transparent 40%),
    var(--tt-cream);
}

/* Social-proof stat row */
.tt-proof{
  display:flex; flex-wrap:wrap; justify-content:center; gap:2.4rem;
  max-width:var(--tt-maxw); margin:0 auto 3rem; padding-inline:var(--tt-gutter);
}
.tt-proof__item{text-align:center;}
.tt-proof__num{font-family:var(--tt-display); font-weight:800; font-size:2rem; line-height:1; color:var(--tt-blue);}
.tt-proof__item:nth-child(1) .tt-proof__num{color:var(--tt-blue);}
.tt-proof__item:nth-child(2) .tt-proof__num{color:var(--tt-pink);}
.tt-proof__item:nth-child(3) .tt-proof__num{color:var(--tt-purple);}
.tt-proof__item:nth-child(4) .tt-proof__num{color:var(--tt-green);}
.tt-proof__label{font-weight:700; color:var(--tt-stone); font-size:.9rem; margin-top:.3rem;}

/* Testimonial cards */
.tt-reviews__grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:1.6rem;
  max-width:var(--tt-maxw); margin:0 auto; padding-inline:var(--tt-gutter); align-items:start;
}
.tt-quote{
  position:relative; background:#fff; border-radius:var(--tt-radius); padding:1.8rem;
  box-shadow:0 14px 34px rgba(31,59,82,.1); overflow:hidden;
  display:flex; flex-direction:column; height:100%;
}
/* Decorative gem-colored quotation mark (replaces the top-border stripe) */
.tt-quote::before{
  content:'\201C'; position:absolute; top:.1rem; right:1.3rem; z-index:0;
  font-family:Georgia, 'Times New Roman', serif; font-size:5rem; line-height:1;
  color:var(--tt-blue); opacity:.18; pointer-events:none;
}
.tt-quote:nth-child(3n+1)::before{color:var(--tt-blue);}
.tt-quote:nth-child(3n+2)::before{color:var(--tt-pink);}
.tt-quote:nth-child(3n+3)::before{color:var(--tt-purple);}
.tt-quote > *{position:relative; z-index:1;}
.tt-quote__stars{color:var(--tt-yellow); font-size:1.05rem; letter-spacing:.08em; margin-bottom:.9rem;}
.tt-quote__text{color:var(--tt-ink); font-size:1rem; margin-bottom:1.2rem; flex:1;}
.tt-quote__by{display:flex; align-items:center; gap:.7rem;}
.tt-quote__avatar{
  width:38px; height:38px; border-radius:50%; flex:none; display:grid; place-items:center;
  font-family:var(--tt-display); font-weight:700; color:#fff; font-size:1rem;
}
.tt-quote:nth-child(3n+1) .tt-quote__avatar{background:var(--tt-blue);}
.tt-quote:nth-child(3n+2) .tt-quote__avatar{background:var(--tt-pink);}
.tt-quote:nth-child(3n+3) .tt-quote__avatar{background:var(--tt-purple);}
.tt-quote__name{display:block; font-weight:800; color:var(--tt-navy); font-size:.95rem; line-height:1.15;}
.tt-quote__meta{display:block; font-size:.8rem; color:var(--tt-stone);}

.tt-reviews__cta{text-align:center; margin-top:2.6rem;}

@media (max-width:900px){
  .tt-reviews__grid{grid-template-columns:1fr; max-width:560px;}
  .tt-proof{gap:1.6rem;}
}
