Delete companies with the least number of flights I have solved the task of

Delete the companies that made the least number of flights.

the visual table diagram is here. The exercise is here
This is my source code -it's &quot;arrow antipattern&quot; , what is more elegant solution?
the inner most counts num of flights and groups by company, this is used to compare and find the actual minimum, then just select company names and delete.
DELETE FROM company 
WHERE  name IN (SELECT name 
                FROM   (SELECT name 
                        FROM   trip 
                               INNER JOIN company 
                                       ON trip.company = company.id 
                        GROUP  BY name 
                        HAVING Count(trip.id) = (SELECT Min(kolv) AS mini  
                                                 FROM   (SELECT 
                                                Count(trip.id) AS kolv 
                                                         FROM   trip 
                                                INNER JOIN company 
                                                        ON trip.company 
                                                           = 
                                                           company.id 
                                                         GROUP  BY name 
                                                         ORDER  BY kolv)k)) o)
If you can with MySQL 8.0, use the WITH Common Table Expression to simplify this query.
https://dev.mysql.com/doc/refman/8.0/en/with.html
The idea is to extract out the nested queries into ones in the WITH statement before the main query and then use them just like tables in the main query.