Как сделать: если текст не помещается по ширине блока и переносится на другую строку, то уменьшить размер текста так, чтобы он вмещался в одну строку?
Используй js, проверяй количество знаков в строке, в зависимости от их количества (попадания в интервал) присваивай нужный font-size. Логика у тебя теперь есть, код напиши сам, заодно поймёшь его.
Одно из этих свойств css сделает текст резиновым
font-size: 5vmax; 
font-size: 3vw;