.home-testimonials { margin-top: clamp(2rem, 4vw, 3.5rem); padding: clamp(1.4rem, 3vw, 2.3rem); overflow: hidden; border: 1px solid var(--color-line); border-radius: var(--radius-md); background: radial-gradient(circle at 90% 10%, rgba(146, 51, 255, 0.2), transparent 24rem), linear-gradient(145deg, rgba(18, 20, 50, 0.9), rgba(5, 9, 27, 0.96)); box-shadow: var(--shadow-violet); }
.home-testimonials__heading { display: flex; justify-content: space-between; gap: 2rem; align-items: end; margin-bottom: 1.5rem; }
.home-testimonials__heading > div:first-child { max-width: 48rem; }
.home-testimonials__heading p:first-child { margin: 0 0 0.55rem; color: var(--color-violet-bright); font-size: 0.7rem; font-weight: 900; letter-spacing: 0.1em; }
.home-testimonials__heading h2 { margin: 0 0 0.55rem; font-size: clamp(2rem, 3vw, 3.1rem); line-height: 1.1; }
.home-testimonials__heading p:last-child { margin: 0; color: #c9c4d7; font-size: 0.8rem; line-height: 1.55; }
.home-testimonials__controls { display: flex; flex: 0 0 auto; gap: 0.55rem; }
.home-testimonials__controls button { display: grid; place-items: center; width: 2.75rem; height: 2.75rem; border: 1px solid rgba(174, 91, 255, 0.55); border-radius: 50%; color: #fff; background: rgba(137, 43, 230, 0.2); cursor: pointer; }
.home-testimonials__controls button:hover, .home-testimonials__controls button:focus-visible { border-color: var(--color-violet-bright); background: rgba(148, 47, 245, 0.34); }
.home-testimonials__viewport { overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: none; scroll-snap-type: inline mandatory; }
.home-testimonials__viewport::-webkit-scrollbar { display: none; }
.home-testimonials__track { display: flex; gap: 1rem; }
.testimonial-card { display: flex; flex: 0 0 calc((100% - 2rem) / 3); flex-direction: column; min-width: 0; min-height: 29rem; padding: 1.5rem; scroll-snap-align: start; border: 1px solid rgba(154, 172, 231, 0.18); border-radius: var(--radius-md); background: linear-gradient(145deg, rgba(24, 28, 62, 0.96), rgba(7, 10, 29, 0.98)); }
.testimonial-card__rating { display: flex; gap: 0.2rem; margin-bottom: 1rem; color: #e8b13d; font-size: 0.75rem; }
.testimonial-card h3 { margin: 0 0 1rem; font-size: clamp(1.2rem, 1.7vw, 1.55rem); line-height: 1.18; }
.testimonial-card blockquote { margin: 0 0 1.5rem; }
.testimonial-card blockquote p { margin: 0; color: #e0dbe9; font-size: 0.88rem; line-height: 1.7; }
.testimonial-card footer { display: grid; grid-template-columns: auto 1fr; gap: 0.75rem; align-items: center; margin-top: auto; padding-top: 1rem; border-top: 1px solid var(--color-line); }
.testimonial-card__avatar { position: relative; display: block; width: 3.25rem; height: 3.25rem; border: 1px solid var(--color-line); border-radius: 50%; color: var(--color-violet-bright); background: rgba(162, 60, 255, 0.12); }
.testimonial-card__avatar > i { position: absolute; top: 50%; left: 50%; display: block; width: 1.4rem; height: 1.4rem; font-size: 1.4rem; line-height: 1; text-align: center; transform: translate(-50%, -50%); }
.testimonial-card footer strong, .testimonial-card footer span, .testimonial-card footer time { display: block; }
.testimonial-card footer strong { margin-bottom: 0.15rem; font-size: 0.85rem; }
.testimonial-card footer span, .testimonial-card footer time { color: #aaa4b8; font-size: 0.72rem; line-height: 1.4; }
@media (max-width: 62rem) { .testimonial-card { flex-basis: calc((100% - 1rem) / 2); } }
@media (max-width: 40rem) { .home-testimonials { padding: 1.2rem 0.9rem; } .home-testimonials__heading { display: grid; align-items: start; } .testimonial-card { flex-basis: 100%; min-height: 0; } }
@media (prefers-reduced-motion: reduce) { .home-testimonials__viewport { scroll-behavior: auto; } }
