```python
def fleet_hops(count: int, lts: list, builds: list, hop: int) -> int:
    if not all(isinstance(b, int) and 0 <= b < count for b in builds):
        raise ValueError("All devices must be running a valid release number.")
    
    lts_set = set(lts)
    hops = 0
    
    for build in builds:
        if build == count - 1:
            continue
        
        target = min(build + hop, count - 1)
        
        while target not in lts_set and target > build:
            target -= 1
        
        if target < build:
            raise ValueError("No valid long-term-support release found for device.")
        
        hops += target - build
    
    return hops
```