/* Creative testimonial showcase */
.testimonials{width:100%;padding:5rem 0 6rem;position:relative;overflow:hidden}
.testimonials .background-shapes{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.testimonials .shape{position:absolute;border-radius:50%;filter:blur(70px)}
.testimonials .shape-1{width:440px;height:440px;background:radial-gradient(circle,rgba(212,175,55,.14) 0%,rgba(212,175,55,.035) 68%,transparent 100%);top:8%;left:-180px;animation:float 17s ease-in-out infinite}
.testimonials .shape-2{width:390px;height:390px;background:radial-gradient(circle,rgba(212,175,55,.1) 0%,rgba(212,175,55,.025) 68%,transparent 100%);bottom:0;right:-140px;animation:float 21s ease-in-out infinite reverse}
.testimonials-content{max-width:1380px;margin:0 auto;padding:0 2rem}
.testimonial-heading .section-title{position:relative}
.testimonial-heading .eyebrow{display:inline-block!important;text-transform:uppercase;letter-spacing:.32em;font-size:.72rem!important;color:rgba(255,255,255,.6)!important;margin-bottom:.65rem}
.testimonial-showcase{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:3.5rem;perspective:1200px}
.review-card{--delay:0s;position:relative;min-height:360px;padding:2rem 1.65rem 1.55rem;border-radius:28px;background:linear-gradient(145deg,rgba(28,28,28,.94),rgba(11,11,11,.98));border:1px solid rgba(212,175,55,.18);box-shadow:0 18px 45px rgba(0,0,0,.28);overflow:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .45s ease,box-shadow .45s ease;animation:reviewFloat 6s ease-in-out infinite;animation-delay:var(--delay)}
.review-card:nth-child(even){animation-duration:7.3s}
.review-card::before{content:"";position:absolute;inset:-2px;background:linear-gradient(120deg,transparent 20%,rgba(212,175,55,.14) 48%,transparent 72%);transform:translateX(-120%);transition:transform .9s ease;pointer-events:none}
.review-card::after{content:"";position:absolute;width:120px;height:120px;border:1px solid rgba(212,175,55,.17);border-radius:50%;right:-48px;bottom:-52px;box-shadow:0 0 0 28px rgba(212,175,55,.025),0 0 0 58px rgba(212,175,55,.018);transition:transform .5s ease}
.review-card:hover{transform:translateY(-14px) rotateX(2deg);border-color:rgba(212,175,55,.65);box-shadow:0 26px 60px rgba(0,0,0,.44),0 0 32px rgba(212,175,55,.1)}
.review-card:hover::before{transform:translateX(120%)}
.review-card:hover::after{transform:scale(1.16) rotate(16deg)}
.review-card-featured{background:radial-gradient(circle at 82% 12%,rgba(212,175,55,.13),transparent 34%),linear-gradient(145deg,rgba(30,28,20,.97),rgba(10,10,10,.99));border-color:rgba(212,175,55,.36)}
.review-quote{position:absolute;top:8px;right:18px;font-family:Georgia,serif;font-size:6rem;line-height:1;color:rgba(212,175,55,.12);pointer-events:none;transition:color .35s ease,transform .35s ease}
.review-card:hover .review-quote{color:rgba(212,175,55,.24);transform:translateY(-4px)}
.review-top{display:flex;align-items:center;gap:14px;position:relative;z-index:2}
.review-top img{width:66px;height:66px;border-radius:50%;object-fit:cover;border:2px solid var(--first-color);padding:3px;background:#0a0a0a;box-shadow:0 0 0 5px rgba(212,175,55,.08),0 8px 24px rgba(0,0,0,.3);transition:transform .45s ease,box-shadow .45s ease}
.review-card:hover .review-top img{transform:scale(1.08) rotate(-3deg);box-shadow:0 0 0 7px rgba(212,175,55,.12),0 12px 30px rgba(0,0,0,.38)}
.review-top h3{margin:0 0 3px;color:var(--first-color);font-size:1.35rem;font-weight:500}
.review-service,.review-location{font-size:.75rem;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.12em}
.review-stars{display:flex;gap:5px;margin:1.6rem 0 1.15rem;position:relative;z-index:2}
.review-stars i{color:var(--first-color);font-size:.94rem;filter:drop-shadow(0 0 5px rgba(212,175,55,.25));animation:starPulse 2.8s ease-in-out infinite}
.review-stars i:nth-child(2){animation-delay:.12s}.review-stars i:nth-child(3){animation-delay:.24s}.review-stars i:nth-child(4){animation-delay:.36s}.review-stars i:nth-child(5){animation-delay:.48s}
.review-card p{position:relative;z-index:2;color:rgba(255,255,255,.84);font-size:.98rem;line-height:1.75;margin:0}
.review-line{position:absolute;left:1.65rem;bottom:1.35rem;width:48px;height:2px;background:linear-gradient(90deg,var(--first-color),transparent);transition:width .45s ease}
.review-card:hover .review-line{width:calc(100% - 3.3rem)}
@keyframes reviewFloat{0%,100%{translate:0 0}50%{translate:0 -6px}}
@keyframes starPulse{0%,100%{opacity:.72;transform:scale(.96)}50%{opacity:1;transform:scale(1.08)}}
@media(max-width:1180px){.testimonial-showcase{grid-template-columns:repeat(2,1fr)}.review-card{min-height:320px}}
@media(max-width:640px){.testimonials{padding:4rem 0}.testimonials-content{padding:0 1.1rem}.testimonial-showcase{grid-template-columns:1fr;gap:18px;margin-top:2.4rem}.review-card{min-height:0;padding:1.7rem 1.35rem 3.1rem;border-radius:22px}.review-line{left:1.35rem}}
@media(prefers-reduced-motion:reduce){.review-card,.review-stars i{animation:none!important}}
