Сделал себе на сайте вертикальное мега меню=)
сделалось довольно просто=) делал на теме по умолчанию, в принципе я весь шаблон переделал на дефолтной теме, но то же самое можно сделать для любой темы, ниже описание:
ШАГ 1:
в файле \plugins\system\jat3\base-themes\default\blocks\mainnav.php
ищем строку 17, удаляем ее и все что ниже
ШАГ 2:
в файле \plugins\system\jat3\base-themes\default\page\default.php
ищем строку 141 и заменяем код на этот:
<div id="ja-left" class="column sidebar" style="width:<?php echo $l ?>%">
                <!-- MEGA MENU LEFT -->
                
                <?php if (($jamenu = $this->loadMenu())) $jamenu->genMenu (); ?>
                <!-- jdoc:include type="menu" level="0" / -->
                
                <?php if ($this->hasSubmenu() && ($jamenu = $this->loadMenu())) : ?>
                <div id="ja-subnav" class="clearfix">
                <?php $jamenu->genMenu (1); ?>
                <!-- jdoc:include type="menu" level="1" / -->
                </div>
                <?php endif;?>
                
                <!-- END MEGA MENU LEFT -->
            
                <?php
                //left-mass-top
ШАГ 3:
редактируем файл \templates\default\css\menu\mega.css
в самом верху вставляем код:
/* VERTICAL MEGA MENU SETTINGS */
.ja-megamenu li.haschild-over .childcontent, .ja-megamenu li.mega li.haschild-over .childcontent, .ja-megamenu li.mega li.mega li.haschild-over .childcontent, .ja-megamenu li.mega li.mega li.mega li.haschild-over .childcontent, .ja-megamenu li.mega li.mega li.mega li.mega li.haschild-over .childcontent, .ja-megamenu li.mega li.mega li.mega li.mega li.mega li.haschild-over .childcontent
, .ja-megamenu li.haschild .childcontent, .ja-megamenu li.mega li.haschild .childcontent, .ja-megamenu li.mega li.mega li.haschild .childcontent, .ja-megamenu li.mega li.mega li.mega li.haschild .childcontent, .ja-megamenu li.mega li.mega li.mega li.mega li.haschild .childcontent, .ja-megamenu li.mega li.mega li.mega li.mega li.mega li.haschild .childcontent
{
    left: 135px !important;
    margin-top: -45px !important;
}
этот код и определяет дочерние пункты меню...
все остальное делаем редактированием css
чтоб пункты меню растягивались на свободное пространство родительского элемента а не по ширине надписи просто уберите значение float:left; тогда блок с пунктом меню будет растягиваться по ширине родительского блока.
далее юзаем фф с фаирбагом и дописываем нужные стили=)
для кастом тем, просто копируем эти файлы по той же структуре и делаем те же изменения
образец здесь: 
http://plastichelper.ru