Here is a solution using cals. Since cals cell commands are in effect until they are turned off, it is easy to colourise rows. Just define commands for each colour you need using the definition of \gray
I have used. Turn on \gray
(or any other colours you have defined) before the first cell you want to be gray and turn it off (same command) when you want to the normal background.
Using background colour to emphasise rows, the toprule
and midrule
are unnecessary (I have not turned them off here). My tabular looks different since I do not have Plex Serif and Plex Sans in all the different weights.
To avoid that the second header line do not line up, I have explisitly line it up by a \vfil
in the cells. In addition, I have loaded the package verbatimbox to allow the use of verbatimematerial in the cells.

\documentclass[a4paper]{article}
\usepackage{cals, xcolor}
\usepackage{verbatimbox}
\usepackage[margin=2.5cm]{geometry}
\newsavebox\myVerb
\newcommand*{\verbBox}{\usebox\myVerb}
\let\nc=\nullcell % Shortcuts
\let\sc=\spancontent
\begin{document}
\begin{calstable}
\begin{verbbox}[\footnotesize]
\selectfont
\end{verbbox}
% Defining 3 column relativ to each other and relativ to the margins
\colwidths{{\dimexpr(\columnwidth)/90*12\relax}
{\dimexpr(\columnwidth)/90*9\relax}
{\dimexpr(\columnwidth)/90*11\relax}
{\dimexpr(\columnwidth)/90*10\relax}
{\dimexpr(\columnwidth)/90*10\relax}
{\dimexpr(\columnwidth)/90*10\relax}
{\dimexpr(\columnwidth)/90*10\relax}
{\dimexpr(\columnwidth)/90*10\relax}
{\dimexpr(\columnwidth)/90*8\relax}
}
% The tabular fills the text area
% Set up the tabular
\makeatletter
\def\cals@framers@width{0.4pt} % Outside frame rules, reduce if the rule is too heavy
\def\cals@framecs@width{0pt}
\def\cals@bodyrs@width{0.4pt}
\cals@setpadding{Ag}
\cals@setcellprevdepth{Al}
\def\cals@cs@width{0.4pt} % Inside rules, reduce if the rule is too heavy
\def\cals@rs@width{0.4pt}
\def\cals@bgcolor{}
\def\gray{\ifx\cals@bgcolor\empty
\def\cals@bgcolor{gray!30}
\else \def\cals@bgcolor{} \fi}
\def\tb{\ifx\cals@borderT\relax % Top border switch (off-on)
\def\cals@borderT{0pt}
\else \let\cals@borderT\relax\fi}
\def\bb{\ifx\cals@borderB\relax % Botton border switch (off-on)
\def\cals@borderB{0pt}
\else \let\cals@borderB\relax\fi}
\def\rb{\ifx\cals@borderR\relax % Right border switch (off-on)
\def\cals@borderR{0pt}
\else \let\cals@borderR\relax\fi}
\def\lb{\ifx\cals@borderL\relax % Left border switch (off-on)
\def\cals@borderL{0pt}
\else \let\cals@borderL\relax\fi}
% R1
\thead{
\brow
\gray\bb\lb\rb\cell{Typeface}
\cell{Bold}
\cell{Semibold}
\cell{Medium}
\cell{Text}
\cell{Regular}
\cell{Light}
\cell{Extra L}
\cell{Thin}\bb
\erow
% R2 Body
\brow
\ttfamily\footnotesize\cell{\vfil\theverbbox}
\cell{\vfil b}
\cell{\vfil sb}
\cell{\vfil mb}
\cell{\vfil tx}
\cell{\vfil m}
\cell{\vfil l}
\cell{\vfil el}
\cell{\vfil t}\rmfamily\small\gray
\erow
}
% R3 Body
\brow
\bb\cell{Plex Serif}
\cell{\bfseries Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\erow
% R4 Body
\brow
\itshape\cell{Plex Serif}
\cell{\bfseries Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\normalfont
\erow
% R5 Body
\brow
\cell{}
\cell{}
\cell{}
\cell{}
\cell{}
\cell{}
\cell{}
\cell{}
\cell{}
\erow
% R6 Body
\brow
\sffamily\cell{Plex Sans}
\cell{\bfseries Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\erow
% R7 Body
\brow
\itshape\cell{ Plex Sans}
\cell{\bfseries Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}
\cell{Word}\normalfont
\erow
\makeatletter
\end{calstable}\par % \par needed to align the tabular
\end{document}