```python
def route_stops(route: str) -> list:
    """
    Breaks a route written as stop names joined by greater-than signs into the stops themselves,
    trimming any spaces around each one.
    
    :param route: A string representing a route with stop names separated by > signs.
    :return: A list of stop names.
    """
    if not route:
        return []
    
    # Split the route by > and strip spaces from each stop name
    stops = [stop.strip() for stop in route.split('>')]
    return stops

def route_hops(route: str) -> int:
    """
    Counts the journeys between stops, one fewer than the stops, and none at all for a blank route.
    
    :param route: A string representing a route with stop names separated by > signs.
    :return: The number of hops between stops.
    """
    stops = route_stops(route)
    if not stops:
        return 0
    
    # The number of hops is one less than the number of stops
    return len(stops) - 1
```