КРАТКО
Основные вещи:
1. Страница 404 должна отдавать HTTP-код состояния сервера именно '404'. Если она отдает код '200 ОК' - значит она неверно настроена, и поисковики вам этого не простят.
2. Не надо выдумывать, пользуйтесь официальной документацией https://docs.joomla.org/Custom_error_pages/ru
Порядок действий:
Начнем. Первым делом идем в папку templates/system берем там файл error.php и копируем его в корень своего шаблона. Если хотите просто поменять стили, то скопируйте templates/system/css/error.css в каталог CSS вашего шаблона и там уже меняйте как вам угодно.
Кастомизировать ошибку можно как угодно, я же немного поправил файл error.php, подключил туда свои стили и скрипты, все это также хранится у меня в шаблоне. Объяснять как это именно сделано нет смысла, поскольку у каждого будет свой шаблон и свой код.
Хочется заметить что файл error.php не зависит от Joomla!CMS но зависит от Joomla! Platform. Что это значит? Только то что в этом файле не работают конструкции типа <jdoc:include>
Страница 404 ни в коем случае не должна отдавать код "200"!!!!!!!
Напоминаю, что вопросы можно задать в группе https://t.me/newqosgroup