I don't know if I understand you well but I think you are confusing the things a bit.
With the pseudo-element ::first-letter you can't affect the indent, because the indent is for PARAGRAPHS, while ::first-letter is for the first letter of a paragraph. So, if you want to have not indented the first paragraph after <h> tags (or <hr> tag), then you should use something like:
Code:
h1 + p, h2 + p, h3 + p, h4 + p,
h5 + p, h6 + p, hr + p {
text-indent: 0;
}
And, if you also want to style the first letter of the first paragraph after a <h> tag, then you should use something like:
Code:
h1 + p::first-letter, h2 + p::first-letter,
h3 + p::first-letter, h4 + p::first-letter,
h5 + p::first-letter, h6 + p::first-letter,
hr + p::first-letter {
font-weight: bold;
}