Best way to apply font-size for fonts

the FCC curriculum show the font-size: 3vw; to format font-size. is it the best way? I’ve found myself using some media queries to make it responsive (it becomes too small for mobile without @media ) . so if one rule-set isn’t enough for all devices , then why we should use it ? why not em or rem altogether?