* chore: add husky pre-commit and pre-push hooks * feat: frontend audit — formulário de contato, a11y, SEO, performance e conteúdo * test: regenerate visual baselines from CI environment
47 lines
2.6 KiB
PHP
47 lines
2.6 KiB
PHP
@extends('layouts.public')
|
|
|
|
@section('content')
|
|
<div class="border-b border-amare-border bg-amare-bg-deep" data-motion="page-open">
|
|
<div class="container-amare space-y-10 py-16 md:py-24">
|
|
<div class="max-w-2xl space-y-4">
|
|
<p class="text-xs font-semibold uppercase tracking-[0.14em] text-amare-accent">Portfólio</p>
|
|
<h1 class="text-4xl font-medium tracking-tight text-amare-text md:text-5xl">Atmosferas que contam histórias.</h1>
|
|
<p class="text-lg text-amare-muted">Casos conduzidos com atenção a ritmo, composição e cada detalhe da experiência.</p>
|
|
</div>
|
|
|
|
@if ($cases->isEmpty())
|
|
<p class="text-amare-muted">Novos casos serão publicados assim que o acervo estiver organizado. Enquanto isso, fale conosco para conhecer o nosso trabalho.</p>
|
|
@else
|
|
<div class="grid gap-10 md:grid-cols-2">
|
|
@foreach ($cases as $case)
|
|
<article class="space-y-4">
|
|
@if (filled($case->cover_image_path))
|
|
<a href="{{ route('portfolio.show', $case->slug) }}" class="block overflow-hidden">
|
|
<x-media.image
|
|
:path="$case->cover_image_path"
|
|
:alt="$case->cover_image_alt ?: $case->title"
|
|
sizes="(max-width: 768px) 100vw, 50vw"
|
|
class="img-editorial aspect-[4/3] w-full object-cover transition-transform duration-(--amare-duration-slow) ease-(--amare-ease-standard) motion-safe:hover:scale-[1.02]"
|
|
/>
|
|
</a>
|
|
@endif
|
|
<div class="space-y-2 border-t border-amare-border pt-4">
|
|
<h2 class="text-2xl font-medium text-amare-text">
|
|
<a href="{{ route('portfolio.show', $case->slug) }}" class="transition-colors hover:text-amare-accent">{{ $case->title }}</a>
|
|
</h2>
|
|
<p class="text-sm text-amare-muted">{{ $case->summary }}</p>
|
|
</div>
|
|
</article>
|
|
@endforeach
|
|
</div>
|
|
|
|
<div>
|
|
{{ $cases->links() }}
|
|
</div>
|
|
@endif
|
|
|
|
<p class="text-sm text-amare-accent">Imagens demonstrativas enquanto o acervo autorizado da Amare está em organização.</p>
|
|
</div>
|
|
</div>
|
|
@endsection
|