After experimenting, I've discovered that using a single colon with the pseudo tag first-line functions perfectly. Why then is a double colon typically used for this tag? Is it truly necessary?
Per WC3 Schools:
p::first-line
{
color:#ff0000;
font-variant:small-caps;
}
However, the following code also works effectively:
p:first-line
{
color:#ff0000;
font-variant:small-caps;
}