Начните с line-height: 1.5 для обычного абзаца и подберите значение по вашему шрифту. При размере 16px это дает строку высотой 24px, но сами буквы не становятся выше. Число без единицы наследуется как множитель, поэтому заголовок с другим font-size рассчитает собственную высоту строки. Если родитель задает line-height в пикселях или em, потомок может получить уже вычисленную длину и оказаться слишком тесным.
Причина вашей путаницы в разных уровнях размеров. Font-size меняет масштаб букв, line-height управляет строками, margin отделяет один абзац от другого, а height ограничивает весь блок. Не пытайтесь заменить одно другим. Уберите лишнюю фиксированную высоту у текстового блока и проверьте несколько строк с переносами. Чрезмерно маленький интервал способен привести к наложению текста.
Ответить на вопрос