Croatia narrowly got the better of Spain, booking their place in the semi-finals at the International Swimming Federation World Men's Junior Water Polo Championships in Kuwait City.
Despite trailing their opponents 3-1 after the first quarter, the 2017 silver medallists fought back to claim a 7-6 win at Al-Nasar Sport Club.
Awaiting Croatia in the last four tomorrow are defending champions Greece, who needed a penalty shootout to down the United States following an 11-11 draw.
The other semi-final pits Serbia against Italy after they both came through their penultimate-round encounters.
Serbia came back from 5-3 down at half-time to beat Montenegro 10-9.
Later in the day, European champions Italy defeated Japan 17-5.
Today also saw the ninth-to-12th-place playoffs take place.
Canada overcame Australia 11-8 to set up a ninth-place playoff with Hungary, who thrashed New Zealand 20-4.
Australia and New Zealand will go head-to-head to determine the 11th-place finisher.
The 13th-place playoff will be between Russia and South Africa, after the former beat China 19-7 and the latter defeated Egypt 8-7.
Uzbekistan advanced to the 17th-place playoff by overcoming hosts Kuwait 23-9 and were joined by Brazil, 11-8 winners over Iran.
China and Egypt will contest the 15th-place playoff, while Kuwait will meet Iran in the battle to avoid finishing last out of the 20 competing teams.