@props([]) @php // Optional background video still takes precedence over the photo carousel. $heroMedia = app(\App\Services\HeroMediaService::class); $heroVideo = $heroMedia->url(); $configured = app(\App\Services\HeroSlidesService::class)->slides(); // Three full-bleed photos; the copy stays fixed across all of them. $images = []; for ($index = 0; $index < 3; $index++) { $images[] = $configured[$index] ?? asset('images/real/hero/'.($index + 1).'.jpg'); } /* | The copy is admin-managed through the `hero_*` settings; the defaults | below mirror the original hardcoded copy so the HTML is unchanged until | the admin edits these from the panel. Images/video stay as they were. */ $settings = app(\App\Services\SettingsService::class); $heroTitleLine1 = $settings->get('hero_title_line1', 'PIEDRA LAJA'); $heroTitleLine2 = $settings->get('hero_title_line2', 'NATURAL'); $heroSubtitle = $settings->get('hero_subtitle', '100% natural de canteras peruanas'); $heroCtaLabel = $settings->get('hero_cta_label', 'Descubre nuestra colección'); $heroCtaUrl = $settings->get('hero_cta_url', route('products.index')); $heroNextLabel = $settings->get('hero_next_label', 'Siguiente'); @endphp
{{-- Background layer: photo carousel + grain + edge-only gradients. --}}
@foreach ($images as $index => $image)
@endforeach
@if ($heroVideo) @endif {{-- Fixed copy, anchored bottom-left. --}}
{{-- Two stacked words: the first sits behind in a muted tone, the second is indented and overlaps the line above. --}}

{{ $heroTitleLine1 }} {{ $heroTitleLine2 }}

{{ $heroSubtitle }}

{{ $heroCtaLabel }}
{{-- Forward control: manual advance (the slider also auto-advances). --}}