```python
def cap_after(passage: str) -> str:
    """Return a passage with the first letter of every sentence in capitals,
    a sentence beginning at the start of the passage and again after any full stop.
    Letters anywhere else are left exactly as they are.
    """
    if not passage:
        return ""

    # Split the passage into sentences
    sentences = passage.split('. ')
    
    # Capitalize the first sentence
    capitalized_sentences = [sentences[0].capitalize()]
    
    # Process the rest of the sentences
    for sentence in sentences[1:]:
        # Check if the sentence ends with a period or exclamation mark
        if sentence.endswith(('.', '!')):
            capitalized_sentences.append(sentence.capitalize())
        else:
            capitalized_sentences.append(sentence)
    
    # Join the sentences back into a single string with proper spacing
    return '. '.join(capitalized_sentences)
```