```python
def fleet_hops(count: int, lts: list, builds: list, hop: int) -> int:
    if hop == 0:
        raise ValueError("Hop must be greater than zero")
    
    lts_set = set(lts)
    hops = 0
    
    for build in builds:
        if not (0 <= build < count):
            raise ValueError("Device build must be a whole number from 0 through count-1")
        
        if build == count - 1:
            continue
        
        target = build + hop
        if target >= count:
            target = count - 1
        
        while target not in lts_set:
            target -= 1
            if target < build:
                break
        
        if target < build:
            raise ValueError("No long-term-support release found between current and target build")
        
        hops += target - build
    
    return hops
```