Files
amare/resources/views/components/home/testimonials.blade.php

55 lines
2.2 KiB
PHP

@props([
'testimonials',
])
@php
$quotes = collect($testimonials)
->filter(fn ($testimonial) => filled($testimonial->quote) && filled(trim((string) $testimonial->quote)))
->take(3)
->values();
$cards = $quotes->map(fn ($testimonial) => [
'quote' => $testimonial->quote,
'author' => $testimonial->author_name,
'context' => $testimonial->context,
])->all();
while (count($cards) < 3) {
$cards[] = [
'quote' => 'Depoimento real aprovado pela cliente entra aqui.',
'author' => 'Nome e data reais — aguardando autorização',
'context' => null,
];
}
@endphp
<section
aria-labelledby="testimonials-heading"
class="home-chapter border-b border-amare-border bg-amare-bg"
data-chapter="depoimentos"
id="depoimentos"
>
<div class="container-amare py-16 md:py-24" data-reveal-group>
<div class="space-y-4" data-reveal data-reveal-from="up">
<p class="text-xs font-bold uppercase tracking-[0.16em] text-amare-accent-deep">06 Depoimentos</p>
<h2 id="testimonials-heading" class="text-[clamp(2.375rem,5vw,4rem)] font-medium leading-[1.05] tracking-[-0.02em] text-amare-text">Confiança construída na experiência.</h2>
</div>
<div class="mt-12 grid gap-6 md:mt-16 md:grid-cols-3">
@foreach ($cards as $card)
<figure class="flex flex-col justify-between gap-6 border border-amare-border bg-white p-8" data-reveal data-reveal-from="up">
<blockquote class="text-lg leading-[1.55] text-amare-text">
<p>{{ $card['quote'] }}</p>
</blockquote>
<figcaption class="text-sm text-amare-muted">
@if (filled($card['context']))
<p class="font-semibold text-amare-text">{{ $card['author'] }}</p>
<p>{{ $card['context'] }}</p>
@else
<p>{{ $card['author'] }}</p>
@endif
</figcaption>
</figure>
@endforeach
</div>
</div>
</section>