To solve the given optimization problem, we need to formulate it as a linear programming problem and then implement it using Gurobi. The objective function to minimize is: $9x_0 + 8x_1 + x_2$, where $x_0$ represents the quantity of manila envelopes, $x_1$ represents the amount of red highlighters, and $x_2$ represents the total number of paper clips.

The constraints are:
- The sustainability score from manila envelopes and paper clips should be at least 40: $9.78x_0 + 12.61x_2 \geq 40$
- The sustainability score from manila envelopes and red highlighters should be at least 62: $9.78x_0 + 4.69x_1 \geq 62$
- The total combined sustainability score from all items should be at least 62: $9.78x_0 + 4.69x_1 + 12.61x_2 \geq 62$
- The constraint involving manila envelopes and red highlighters: $2x_0 - 7x_1 \geq 0$

All variables ($x_0, x_1, x_2$) are restricted to non-negative integer values.

Here is the Gurobi code that captures this problem:

```python
from gurobipy import *

# Create a new model
m = Model("Optimization_Problem")

# Define variables
x0 = m.addVar(vtype=GRB.INTEGER, name="manila_envelopes")
x1 = m.addVar(vtype=GRB.INTEGER, name="red_highlighters")
x2 = m.addVar(vtype=GRB.INTEGER, name="paper_clips")

# Set the objective function
m.setObjective(9*x0 + 8*x1 + x2, GRB.MINIMIZE)

# Add constraints
m.addConstr(9.78*x0 + 12.61*x2 >= 40, name="sustainability_score_min_1")
m.addConstr(9.78*x0 + 4.69*x1 >= 62, name="sustainability_score_min_2")
m.addConstr(9.78*x0 + 4.69*x1 + 12.61*x2 >= 62, name="total_sustainability_score_min")
m.addConstr(2*x0 - 7*x1 >= 0, name="envelopes_highlighters_constraint")

# Optimize the model
m.optimize()

# Print the solution
if m.status == GRB.OPTIMAL:
    print("Optimal solution found:")
    print("Manila Envelopes:", x0.x)
    print("Red Highlighters:", x1.x)
    print("Paper Clips:", x2.x)
    print("Objective Function Value:", m.objVal)
else:
    print("No optimal solution found. Status:", m.status)
```