Help with pickup animation (Scale object up, down and dissapear)

Hello guys! I recently took up Unity and C#. I’m building a simple game where I have a few capsules spread around the board. I’ve set them up to dissapear when hit by a sphere. This works, but it’s very abrupt with just an other.GameObject.SetActive(false).

What I’d like them to do is having their scale “inflate” a little bit then “deflate” to a point where you don’t see them anymore and then remove them from the game with a SetActive(false).

As you can see from my code I only made them to inflate (tough abruptly). Any idea for a simple code to create this animation?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PickUp_Anim : MonoBehaviour {

    public float speed;

    void OnTriggerEnter (Collider other)
    {
        if (other.gameObject.CompareTag("Pick Up"))
        {
            other.gameObject.transform.localScale += new Vector3(3, 5, 3) * (Time.deltaTime * speed);
            other.gameObject.SetActive(false);
        }

    }
}

Yes, use coroutine

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class PickUp_Anim : MonoBehaviour {
 
    public float speed;
 
    private void OnTriggerEnter (Collider other)
    {
        if (other.gameObject.CompareTag("Pick Up"))
        {
            StartCoroutine(AniamteScale(other.collider.gameObject));
        }
    }

    private IEnumerator AnimateScale (GameObject obj) 
    {
     	for(float time = 0; time < 1; time += Time.deltaTime * 5) 
     	{
     		obj.transform.localScale = Vector3.Lerp(obj.transform.localScale, Vector3.zero, time);
     		yield return null;
     	}

     	other.gameObject.SetActive(false);
     }

 }