How would you use web components, shadow DOM, or native browser APIs like Intersection Observer or LocalStorage?