The last time we saw Kevin Costner and Diane Lane together, they were on a freeway in Kansas making a huge sacrifice for their son, Clark Kent. That was in 2013’s Man of Steel. They must have moved north since then, but their story remains the same. In the affecting Great Plains drama Let Him Go, directed by Thomas Bezucha, Costner and Lane play parents to a son whose life is tragically cut short. This time, they have a grandchild to look after, and he may require another superhero-sized sacrifice.

Based on a novel by Larry Watson, Let Him Go opens on a picturesque slice of American nostalgia: George Blackledge (Costner), a retired sheriff in rural Montana, is enjoying breakfast in his farmhouse kitchen with his wife Margaret (Lane), his son James (Ryan Bruce) and daughter-in-law Lorna (Kayli Carter), and their infant son. Their idyll doesn’t last long. Tragedy ensues when James falls off his horse and dies, and it escalates when Lorna gets married to Donnie Weboy (Will Brittain), a seemingly unremarkable young man who hides his violent temper until after their wedding day.

It’s Margaret who witnesses the abuse, and when Donnie absconds with Lorna for North Dakota, where his family lives, it’s she who convinces George to track the couple down and bring their grandson back. It’s a plan that seems destined to fail, but Costner and Lane, with their quiet, complementary performances, make you believe in it.  He is so taciturn that he almost disappears into the walls, while Lane still burns with a youthful passion. After years of trying, George has learned not to argue with his strong-willed wife when she sets her mind to something. 

When they arrive in North Dakota, they immediately enter a tense stand-off with the Weboys, who have no plans to give up the child. Run by the dominating matriarch Blanche (a scenery-chewing Lesley Manville), the Weboys are a violent, powerful clan structured like a crime ring, complete with two burly, silent sons who function as muscle. The initial meeting between the two families, ostensibly a family dinner, quickly devolves into a tense power struggle. Blanche presides over the room with the confidence of an executioner with her hand on the switch.

The film is sporadically riveting, but it cycles so quickly through different genres, including heartland weepie, neo-noir, and revisionist western, that the effect is disorienting. Sweeping vistas of mountain ranges quickly give way to the tight spaces of motel rooms and dark corners of a farmhouse at night. Cars and horses factor into the proceedings equally. Let Him Go is effective in every mode (at the very least, you’ll never be bored during it), but it might have added up to something more substantial if the filmmakers had picked a genre and stuck with it.

Still, the themes resonate deeply in this specific moment. Yes, it’s easy to link just about any work of art to the Trump era, but this one feels particularly apropos. The Weboys are a corrupt family who run their small town through sheer force; we never learn how they makes their living. Their only business is maintaining power, and their only creed is to protect their own, which makes their evil even more impenetrable. It’s a chilling portrayal of toxicity passed down through generations, and a window into the darkness of the American soul. Now is the time to watch Let Him Go. It will never resonate more.

Let Him Go opens Friday at select Virginia theaters and on demand later this fall.