$social_links * @property list|null $method_steps * @property list|null $corporate_steps * @property list|null $principles * @property bool $analytics_enabled * @property string|null $default_og_image_path * @property string|null $default_og_image_alt * @property string|null $about_image_path * @property string|null $about_image_alt * @property string|null $founder_image_path * @property string|null $founder_image_alt * @property string|null $hero_image_path * @property string|null $hero_image_alt * @property string|null $services_hero_image_path * @property string|null $services_hero_image_alt * @property string|null $portfolio_hero_image_path * @property string|null $portfolio_hero_image_alt * @property string|null $logo_path * @property string|null $logo_alt */ #[Fillable([ 'brand_name', 'logo_path', 'logo_alt', 'hero_eyebrow', 'hero_title', 'hero_subtitle', 'hero_cta_label', 'hero_secondary_cta_label', 'hero_note', 'hero_image_path', 'hero_image_alt', 'services_hero_image_path', 'services_hero_image_alt', 'portfolio_hero_image_path', 'portfolio_hero_image_alt', 'about_summary', 'about_image_path', 'about_image_alt', 'founder_image_path', 'founder_image_alt', 'manifesto_title', 'manifesto_lead', 'manifesto_body', 'method_intro', 'method_steps', 'corporate_steps', 'principles', 'email', 'phone', 'whatsapp_number', 'city', 'social_links', 'default_meta_title', 'default_meta_description', 'default_og_image_path', 'default_og_image_alt', 'analytics_enabled', 'analytics_script', ])] #[UsePolicy(SiteSettingPolicy::class)] class SiteSetting extends Model { public static function instance(): self { return static::query()->firstOrCreate([], [ 'brand_name' => 'Amare Assessoria', 'hero_eyebrow' => 'Assessoria e produção de eventos · São Paulo', 'hero_title' => 'Celebrações com propósito', 'hero_subtitle' => 'Planejamento completo para casamentos e eventos corporativos.', 'hero_cta_label' => 'Solicitar proposta', 'hero_secondary_cta_label' => 'Conheça nosso olhar', 'hero_note' => 'Planejamento cuidadoso, comunicação clara e execução segura — do primeiro encontro ao último detalhe.', 'about_summary' => 'Assessoria boutique em São Paulo - SP.', 'manifesto_title' => 'Sofisticação que também se traduz em organização.', 'manifesto_lead' => 'Um evento memorável não nasce apenas de uma boa estética. Ele depende de decisões bem conduzidas, fornecedores alinhados e atenção constante ao que realmente importa.', 'manifesto_body' => 'A Amare combina sensibilidade e precisão para criar encontros coerentes com cada cliente, marca e ocasião — sem fórmulas prontas, excessos ou ruído.', 'method_intro' => 'Clareza em cada etapa. Tranquilidade durante todo o processo.', 'method_steps' => self::defaultMethodSteps(), 'corporate_steps' => self::defaultCorporateSteps(), 'principles' => self::defaultPrinciples(), 'email' => 'amareassessoriaeventos@gmail.com', 'phone' => '(11) 99999-9999', 'whatsapp_number' => null, 'city' => 'São Paulo - SP', 'social_links' => [], 'default_meta_title' => 'Amare Assessoria de Eventos', 'default_meta_description' => 'Assessoria premium para casamentos e eventos corporativos em São Paulo.', 'analytics_enabled' => false, ]); } /** * @return list */ public static function defaultMethodSteps(): array { return [ [ 'title' => 'Escuta', 'body' => 'Entendimento do contexto, das prioridades, do público e do que o evento precisa comunicar.', ], [ 'title' => 'Direção', 'body' => 'Definição de escopo, próximos passos, responsabilidades e critérios para orientar decisões.', ], [ 'title' => 'Produção', 'body' => 'Coordenação de cronograma, fornecedores, detalhes, alinhamentos e contingências.', ], [ 'title' => 'Execução', 'body' => 'Presença atenta no evento para que o planejado aconteça com ritmo, cuidado e segurança.', ], ]; } /** * @return list */ public static function defaultCorporateSteps(): array { return [ [ 'title' => 'Planejamento', 'body' => 'Estruturação de escopo, cronograma e prioridades.', ], [ 'title' => 'Produção', 'body' => 'Coordenação dos elementos necessários para colocar o evento de pé.', ], [ 'title' => 'Execução', 'body' => 'Condução e acompanhamento do evento conforme o projeto aprovado.', ], ]; } /** * @return list */ public static function defaultPrinciples(): array { return [ 'Personalização sem complicação desnecessária', 'Comunicação clara e decisões bem orientadas', 'Atenção à experiência de clientes e convidados', 'Execução responsável do início ao fim', ]; } /** * @return array */ protected function casts(): array { return [ 'social_links' => 'array', 'method_steps' => 'array', 'corporate_steps' => 'array', 'principles' => 'array', 'analytics_enabled' => 'boolean', ]; } }