```python
def steer_forklift(aisles: int, bays: int, moves: list) -> list:
    if aisles <= 0 or bays <= 0:
        raise ValueError("Aisle or bay count must be a positive integer.")
    
    for move in moves:
        if move not in ['north', 'south', 'east', 'west']:
            raise ValueError(f"Invalid move word: {move}.")
        
        if move == 'north' and bays < 1:
            raise ValueError("Cannot move north: out of bounds.")
        elif move == 'south' and bays > aisles - 1:
            raise ValueError("Cannot move south: out of bounds.")
        elif move == 'east' and aisles < 1:
            raise ValueError("Cannot move east: out of bounds.")
        elif move == 'west' and aisles > bays - 1:
            raise ValueError("Cannot move west: out of bounds.")
    
    return [aisles, bays]
```