Добрый день Матвей.
Во-первых нужно изучить Ваш договор.
Так же.п.2 Ст.108 ВК РФ гласит.
2. В случае вынужденного отказа пассажира от воздушной перевозки в связи с болезнью пассажира или члена его семьи либо близкого родственника, совместно следующих с ним на воздушном судне, что подтверждается медицинскими документами, либо в связи со смертью члена его семьи или близкого родственника, что подтверждается документально, и уведомления об этом перевозчика до окончания установленного в соответствии с федеральными авиационными правилами времени регистрации пассажиров на указанный в билете рейс, либо в связи с задержкой отправления воздушного судна, иными предусмотренными федеральными авиационными правилами действиями (бездействием) перевозчика, влекущими за собой неисполнение или ненадлежащее исполнение обязательств по договору воздушной перевозки пассажира, пассажиру возвращается уплаченная за воздушную перевозку провозная плата.
Исходя из вышеуказанных статьи деньги Вам должны вернуть. НО ещё раз повторюсь нужно изучить Ваш договор.
Насколько законен такой отказ? Авиакомпания права или все-таки они лукавят?
Исходя из тех данных которые Вы предоставили отказ не законен. Нужно написать претензию со ссылкой на нормы права. Претензию сделать в 2-х экземплярах и вручить агрегатору где на одном экземпляре поставить дату принятия претензии и роспись сотрудника и его ФИО.
Хочу дополнить. В случае вынужденного отказа пассажира от части перевозки пассажиру возвращается сумма за невыполненную часть перевозки. При этом сборы за оформление билета, ордера разных сборов, электронного многоцелевого документа, квитанции оплаты сверхнормативного багажа не возвращаются
П. 117 Приказа Минтранса России от 25.09.2008 N 155 (ред. от 16.07.2014) «Об утверждении Правил формирования и применения тарифов на регулярные воздушные перевозки пассажиров и багажа, взимания сборов в области гражданской авиации» (Зарегистрировано в Минюсте России 04.12.2008 N 12793)
www.consultant.ru/document/cons_doc_LAW_82421/f1f1f7d9e1f15fb73d94418f6a365103d7cc5400/