diff --git a/package-lock.json b/package-lock.json index 273f5f2..eebf4c7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,6 +5,7 @@ "packages": { "": { "devDependencies": { + "@fontsource/eb-garamond": "^5.2.7", "@tailwindcss/vite": "^4.0.0", "concurrently": "^9.0.1", "daisyui": "^5.7.16", @@ -49,6 +50,16 @@ "tslib": "^2.4.0" } }, + "node_modules/@fontsource/eb-garamond": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@fontsource/eb-garamond/-/eb-garamond-5.3.0.tgz", + "integrity": "sha512-VplwHpB8FLuzl+4G5LDci1b3Z4SghiuXH8XEgaxjnOb5aue5mEt1njmDKeO6iyLeGa73LffU7PC7hzncLRx0ZA==", + "dev": true, + "license": "OFL-1.1", + "funding": { + "url": "https://github.com/sponsors/ayuhito" + } + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.13", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", diff --git a/package.json b/package.json index 27c812e..cb284d8 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "prepare": "husky" }, "devDependencies": { + "@fontsource/eb-garamond": "^5.2.7", "@tailwindcss/vite": "^4.0.0", "concurrently": "^9.0.1", "daisyui": "^5.7.16", diff --git a/resources/css/app.css b/resources/css/app.css index c1a56b7..bf907d6 100644 --- a/resources/css/app.css +++ b/resources/css/app.css @@ -189,6 +189,18 @@ overflow-x: clip; } + .link-editorial { + background-image: linear-gradient(currentColor, currentColor); + background-position: 0 100%; + background-repeat: no-repeat; + background-size: 100% 1px; + padding-bottom: 1px; + } + + .nav-link-editorial { + position: relative; + } + @media (prefers-reduced-motion: no-preference) { :where(a, button, input, textarea, select) { transition-duration: var(--amare-motion-feedback); @@ -200,6 +212,45 @@ transform: translateY(1px); } + :where(button[aria-busy='true'], button:disabled):active { + transform: none; + } + + .field-editorial { + transition: + border-color var(--amare-motion-feedback) var(--amare-ease-arrival), + background-color var(--amare-motion-feedback) var(--amare-ease-arrival); + } + + .field-editorial:focus, + .field-editorial:focus-visible { + background-color: var(--amare-color-bg-deep); + } + + .link-editorial { + transition: color var(--amare-motion-feedback) var(--amare-ease-arrival); + } + + @media (min-width: 768px) { + .nav-link-editorial::after { + background-color: var(--amare-color-accent); + bottom: 0.55rem; + content: ''; + height: 1px; + left: 0.75rem; + position: absolute; + right: 0.75rem; + transform: scaleX(0); + transform-origin: left center; + transition: transform var(--amare-motion-feedback) var(--amare-ease-arrival); + } + + .nav-link-editorial:hover::after, + .nav-link-editorial:focus-visible::after { + transform: scaleX(1); + } + } + /* Transform/clip only — never fade text opacity (axe + WCAG mid-transition). */ html[data-motion="enhance"] [data-motion="page-open"]:not(.is-active) [data-motion-beat] { transform: translateY(var(--amare-motion-distance-y)); diff --git a/resources/views/components/about/portfolio.blade.php b/resources/views/components/about/portfolio.blade.php index eff1652..0a8b9a9 100644 --- a/resources/views/components/about/portfolio.blade.php +++ b/resources/views/components/about/portfolio.blade.php @@ -24,7 +24,7 @@

Uma composição de eventos sociais e corporativos para apresentar a versatilidade da Amare.

- Ver portfólio completo + Ver portfólio completo
diff --git a/resources/views/components/home/briefing.blade.php b/resources/views/components/home/briefing.blade.php index b3926db..74a7bcb 100644 --- a/resources/views/components/home/briefing.blade.php +++ b/resources/views/components/home/briefing.blade.php @@ -50,7 +50,7 @@ autocomplete="name" maxlength="120" placeholder="Seu nome" - class="input w-full text-amare-text placeholder:text-amare-muted/60 @error('nome') input-error @enderror" + class="input field-editorial w-full text-amare-text placeholder:text-amare-muted/60 @error('nome') input-error @enderror" @error('nome') aria-invalid="true" aria-describedby="briefing-nome-error" @enderror > @error('nome') @@ -69,7 +69,7 @@ autocomplete="email" maxlength="254" placeholder="voce@email.com" - class="input w-full text-amare-text placeholder:text-amare-muted/60 @error('email') input-error @enderror" + class="input field-editorial w-full text-amare-text placeholder:text-amare-muted/60 @error('email') input-error @enderror" @error('email') aria-invalid="true" aria-describedby="briefing-email-error" @enderror > @error('email') @@ -88,7 +88,7 @@ autocomplete="tel" maxlength="40" placeholder="(11) 90000-0000" - class="input w-full text-amare-text placeholder:text-amare-muted/60 @error('telefone') input-error @enderror" + class="input field-editorial w-full text-amare-text placeholder:text-amare-muted/60 @error('telefone') input-error @enderror" @error('telefone') aria-invalid="true" aria-describedby="briefing-telefone-error" @enderror > @error('telefone') @@ -102,7 +102,7 @@ id="briefing-tipo_evento" name="tipo_evento" required - class="select w-full text-amare-text @error('tipo_evento') select-error @enderror" + class="select field-editorial w-full text-amare-text @error('tipo_evento') select-error @enderror" @error('tipo_evento') aria-invalid="true" aria-describedby="briefing-tipo_evento-error" @enderror > @@ -125,7 +125,7 @@ value="{{ old('data_periodo') }}" maxlength="80" placeholder="Ex.: novembro de 2027" - class="input w-full text-amare-text placeholder:text-amare-muted/60 @error('data_periodo') input-error @enderror" + class="input field-editorial w-full text-amare-text placeholder:text-amare-muted/60 @error('data_periodo') input-error @enderror" @error('data_periodo') aria-invalid="true" aria-describedby="briefing-data_periodo-error" @enderror > @error('data_periodo') @@ -143,7 +143,7 @@ required maxlength="80" placeholder="Ex.: São Paulo" - class="input w-full text-amare-text placeholder:text-amare-muted/60 @error('cidade') input-error @enderror" + class="input field-editorial w-full text-amare-text placeholder:text-amare-muted/60 @error('cidade') input-error @enderror" @error('cidade') aria-invalid="true" aria-describedby="briefing-cidade-error" @enderror > @error('cidade') @@ -163,7 +163,7 @@ inputmode="numeric" autocomplete="off" placeholder="Ex.: 120" - class="input w-full text-amare-text placeholder:text-amare-muted/60 @error('convidados') input-error @enderror" + class="input field-editorial w-full text-amare-text placeholder:text-amare-muted/60 @error('convidados') input-error @enderror" @error('convidados') aria-invalid="true" aria-describedby="briefing-convidados-error" @enderror > @error('convidados') @@ -180,7 +180,7 @@ value="{{ old('servico_interesse') }}" maxlength="120" placeholder="Ex.: planejamento completo" - class="input w-full text-amare-text placeholder:text-amare-muted/60 @error('servico_interesse') input-error @enderror" + class="input field-editorial w-full text-amare-text placeholder:text-amare-muted/60 @error('servico_interesse') input-error @enderror" @error('servico_interesse') aria-invalid="true" aria-describedby="briefing-servico_interesse-error" @enderror > @error('servico_interesse') @@ -198,7 +198,7 @@ rows="5" maxlength="3000" placeholder="O que já está definido? Em que ponto você precisa de ajuda?" - class="textarea w-full min-h-[110px] text-amare-text placeholder:text-amare-muted/60 @error('mensagem') textarea-error @enderror" + class="textarea field-editorial w-full min-h-[110px] text-amare-text placeholder:text-amare-muted/60 @error('mensagem') textarea-error @enderror" @error('mensagem') aria-invalid="true" aria-describedby="briefing-mensagem-error" @enderror >{{ old('mensagem') }} @error('mensagem') diff --git a/resources/views/components/home/hero.blade.php b/resources/views/components/home/hero.blade.php index 6deafd9..660123b 100644 --- a/resources/views/components/home/hero.blade.php +++ b/resources/views/components/home/hero.blade.php @@ -19,7 +19,7 @@ @if (filled($settings->hero_secondary_cta_label)) - {{ $settings->hero_secondary_cta_label }} + {{ $settings->hero_secondary_cta_label }} @endif diff --git a/resources/views/components/home/packages.blade.php b/resources/views/components/home/packages.blade.php index 18288c2..ac0033b 100644 --- a/resources/views/components/home/packages.blade.php +++ b/resources/views/components/home/packages.blade.php @@ -64,7 +64,7 @@ href="{{ route('packages.show', $package->slug) }}" class="btn btn-ghost min-h-0 px-0 text-xs font-semibold uppercase tracking-[0.09em] text-amare-accent hover:bg-transparent hover:text-amare-accent-deep" > - Conhecer esta modalidade + Conhecer esta modalidade diff --git a/resources/views/components/home/positioning.blade.php b/resources/views/components/home/positioning.blade.php index 13a944c..b81af28 100644 --- a/resources/views/components/home/positioning.blade.php +++ b/resources/views/components/home/positioning.blade.php @@ -35,7 +35,7 @@

- Conhecer a Amare + Conhecer a Amare

diff --git a/resources/views/components/home/services.blade.php b/resources/views/components/home/services.blade.php index 8f8ac7f..9c0ac9d 100644 --- a/resources/views/components/home/services.blade.php +++ b/resources/views/components/home/services.blade.php @@ -27,7 +27,7 @@

- Ver todos os serviços + Ver todos os serviços

diff --git a/resources/views/components/home/wedding-packages.blade.php b/resources/views/components/home/wedding-packages.blade.php index ae366a9..75414e0 100644 --- a/resources/views/components/home/wedding-packages.blade.php +++ b/resources/views/components/home/wedding-packages.blade.php @@ -9,7 +9,7 @@
    @foreach ($packages as $package) @php($contactLink = \App\Support\PackageContactLink::for($settings, $package->name)) -
  1. {{ $package->level }}

    {{ $package->name }}

    {{ $package->summary }}

  2. +
  3. {{ $package->level }}

    {{ $package->name }}

    {{ $package->summary }}

  4. @endforeach
@endif diff --git a/resources/views/components/public/form-success.blade.php b/resources/views/components/public/form-success.blade.php new file mode 100644 index 0000000..9aeed04 --- /dev/null +++ b/resources/views/components/public/form-success.blade.php @@ -0,0 +1,44 @@ +@props([ + 'seal' => 'Recebido', + 'title', + 'body', + 'homeLabel' => 'Voltar para a home', + 'whatsappLabel' => 'Falar no WhatsApp', + 'whatsappText' => 'Olá, enviei um briefing e gostaria de acompanhar.', +]) + +@php + $settings = $siteSettings ?? \App\Models\SiteSetting::instance(); + $digits = preg_replace('/\D/', '', (string) ($settings->whatsapp_number ?? '')); + $whatsappHref = strlen($digits) >= 10 + ? 'https://wa.me/'.$digits.'?text='.rawurlencode($whatsappText) + : null; +@endphp + +
+

{{ $seal }}

+

{{ $title }}

+

{{ $body }}

+ +
+ + {{ $homeLabel }} + + @if ($whatsappHref) + + {{ $whatsappLabel }} + + @endif +
+
diff --git a/resources/views/errors/404.blade.php b/resources/views/errors/404.blade.php index 4bef56e..817ef70 100644 --- a/resources/views/errors/404.blade.php +++ b/resources/views/errors/404.blade.php @@ -5,7 +5,7 @@ } catch (\Throwable $e) { $pageMeta = new \App\Application\Data\PageMeta( title: 'Página não encontrada - Amare Assessoria', - description: 'A página que você procura não existe ou foi movida.', + description: 'Não encontramos este endereço. Volte à home e continue por ali.', canonical: '', robots: 'noindex, nofollow', ); @@ -18,7 +18,7 @@

Erro 404

Página não encontrada

-

O endereço que você tentou abrir não existe ou foi movido.

+

Não encontramos este endereço — talvez tenha mudado de lugar. A home continua sendo o melhor ponto de partida.

Voltar para a home diff --git a/resources/views/errors/419.blade.php b/resources/views/errors/419.blade.php index 5458746..5cf3b2e 100644 --- a/resources/views/errors/419.blade.php +++ b/resources/views/errors/419.blade.php @@ -5,7 +5,7 @@ } catch (\Throwable $e) { $pageMeta = new \App\Application\Data\PageMeta( title: 'Sessão expirada - Amare Assessoria', - description: 'Sua sessão expirou. Volte e tente enviar novamente.', + description: 'Sua sessão ficou quieta demais. Volte e envie de novo com calma.', canonical: '', robots: 'noindex, nofollow', ); @@ -18,7 +18,7 @@

Erro 419

Sessão expirada

-

Sua sessão expirou. Volte e tente enviar novamente.

+

Sua sessão ficou quieta demais e precisamos recomeçar. Volte à página anterior e envie de novo — os dados ainda estão seguros.

Voltar para a home diff --git a/resources/views/errors/429.blade.php b/resources/views/errors/429.blade.php index 3f23c59..b87cf5d 100644 --- a/resources/views/errors/429.blade.php +++ b/resources/views/errors/429.blade.php @@ -5,7 +5,7 @@ } catch (\Throwable $e) { $pageMeta = new \App\Application\Data\PageMeta( title: 'Muitas solicitações - Amare Assessoria', - description: 'Você enviou muitas solicitações em pouco tempo. Aguarde um instante e tente novamente.', + description: 'Recebemos muitos pedidos em pouco tempo. Aguarde um instante e tente de novo.', canonical: '', robots: 'noindex, nofollow', ); @@ -18,7 +18,7 @@

Erro 429

Muitas solicitações

-

Você enviou muitas solicitações em pouco tempo. Aguarde um instante e tente novamente.

+

Recebemos vários pedidos em pouco tempo. Espere um instante — assim que pudermos, tentamos de novo com calma.

Voltar para a home diff --git a/resources/views/errors/500.blade.php b/resources/views/errors/500.blade.php index 8dfa850..f143d30 100644 --- a/resources/views/errors/500.blade.php +++ b/resources/views/errors/500.blade.php @@ -5,7 +5,7 @@ } catch (\Throwable $e) { $pageMeta = new \App\Application\Data\PageMeta( title: 'Algo deu errado - Amare Assessoria', - description: 'Não foi possível concluir o pedido. Tente novamente em instantes.', + description: 'Algo saiu do roteiro do nosso lado. Tente novamente em instantes.', canonical: '', robots: 'noindex, nofollow', ); @@ -18,7 +18,7 @@

Erro 500

Algo deu errado

-

Não foi possível concluir o pedido agora. Tente novamente em instantes.

+

Algo saiu do roteiro do nosso lado. Já estamos cuidando disso — tente novamente em instantes.

Voltar para a home diff --git a/resources/views/errors/503.blade.php b/resources/views/errors/503.blade.php index 8065a93..7f9f9d9 100644 --- a/resources/views/errors/503.blade.php +++ b/resources/views/errors/503.blade.php @@ -5,7 +5,7 @@ } catch (\Throwable $e) { $pageMeta = new \App\Application\Data\PageMeta( title: 'Em manutenção - Amare Assessoria', - description: 'Estamos realizando uma breve manutenção. Tente novamente em instantes.', + description: 'Estamos em uma pausa breve de manutenção. Voltamos em instantes.', canonical: '', robots: 'noindex, nofollow', ); @@ -18,7 +18,7 @@

Erro 503

Em manutenção

-

Estamos realizando uma breve manutenção. Tente novamente em instantes.

+

Estamos em uma pausa breve para deixar tudo no lugar. Voltamos em instantes — obrigado pela paciência.

Voltar para a home diff --git a/resources/views/layouts/public.blade.php b/resources/views/layouts/public.blade.php index 4e59818..ed0268c 100644 --- a/resources/views/layouts/public.blade.php +++ b/resources/views/layouts/public.blade.php @@ -58,10 +58,10 @@