I like the idea of adding typography to the customizer and taking the burden of loading the font resources off the developer or end user. Controls like this, though, tend to lead me to wanting to write a more robust solution which, in this case, would be a control for modifying virtually any css property on a given target.

Here's how my brain usually goes: You've got this control with font family, size, weight, style, and line-height. Ok well then, text-align and text-decoration is certainly related so lets add that...and we should probably include color, cause that's the text color after all. Then aren't color and background color choices usually related?....and now we're looking at what a true background control would look like, and so on. Ultimately what I arrive at is a control that takes a CSS selector to target the element, and offers groups of controls to modify virtually anything css can do to an element. The theme may choose to disallow certain groups of properties on certain elements. The bottom line is, when I open customizer I don't want my themes to have 6 font controls for my headings and 6 color controls for my headings. I simply want to style my headings.

Understandably, this is MUCH more complex and quite an undertaking but isn't that ultimately a more future-focused conclusion than adding another simpler to the customizer? Perhaps this font control could be thought of in the context of a larger-scope control. That aside, Justin, I really do appreciate the work you guys are doing in core to move the customizer along.