That pattern is a useful clue — the main page works but a sub-page such as /tallinn does not. Location permission in Opera for Android is granted per site, and the page that actually asks for your location is not always the address in the address bar: a map loaded in a frame can come from another origin, so allowing the main site does not always cover it.
A few things worth trying, in order:
In Android Settings > Apps > Opera > Permissions, check Location is allowed while using the app and that precise location is switched on.
In Opera, check Settings > Site settings > Location for the sites that fail, set them to Allow, then clear the stored data for one failing site and try again, accepting the prompt when it appears.
Switch off Opera's built-in VPN and ad blocker for a failing site and test again, in case either is getting in the way of the location request.
Note whether the failing pages are on HTTPS and whether the map itself is embedded from another domain — that domain would need permission as well.
Try the same pages in a private tab, and compare with Chrome on the same phone. If they work in Chrome, that points to an Opera permission or a blocked third-party origin rather than the phone's own location settings, so it is worth reporting with your Opera and Android versions and the exact failing addresses.