/* A typewriter accent, isolated from the approved motion system. */
@font-face {
    font-family: 'Courier Prime'; font-style: normal; font-weight: 400;
    font-display: swap; src: url('assets/fonts/courier-prime-regular.ttf') format('truetype');
}
@font-face {
    font-family: 'Courier Prime'; font-style: normal; font-weight: 700;
    font-display: swap; src: url('assets/fonts/courier-prime-bold.ttf') format('truetype');
}
:root { --typewriter: 'Courier Prime', 'Courier New', monospace; }
.hero-line, .hero-wordmark, .section-head h2, #philosophy h3,
#wipe-cards h3, .tier h3, .addon h3, #big-reveal h2,
footer h4, .thank-you-title {
    font-family: var(--typewriter); font-weight: 700; letter-spacing: -.035em;
}
.hero-line { font-size: clamp(1.3rem,7vw,6rem); line-height: 1.06; }
.hero-wordmark { letter-spacing: -.075em; }
.section-head h2, #philosophy h3, #big-reveal h2 { line-height: 1.1; }
#wipe-cards h3, .tier h3, .addon h3, footer h4 { line-height: 1.2; }
#testimonial blockquote { font-family: var(--typewriter); font-weight: 400; letter-spacing: -.035em; line-height: 1.45; }
/* Static, faint ink wear, limited to large display lettering. No animated filters. */
.hero-line, .hero-wordmark, #big-reveal h2 {
    -webkit-mask-image: url('assets/ink-grain.svg');
    mask-image: url('assets/ink-grain.svg');
    -webkit-mask-size: 160px 160px; mask-size: 160px 160px;
    -webkit-mask-repeat: repeat; mask-repeat: repeat;
}
@media (max-width: 767px) {
    .hero-line { font-size: clamp(1.3rem,7vw,3.5rem); letter-spacing: -.035em; }
    .section-head h2 { font-size: clamp(1.8rem,6.7vw,2.6rem); }
    #big-reveal h2 { font-size: clamp(2rem,7.3vw,3.5rem); }
    .tier h3, #wipe-cards h3 { font-size: 1.4rem; }
}
@media (max-height: 560px) and (orientation: landscape) {
    .hero-line { font-size: clamp(1.5rem,4.5vw,2.7rem); }
}
