Slow Category Loading
You could eager load a little more to speed things up. Especially your eventVenueName and eventCity

For your query, try:

{% set entries = craft.entries ({
        section: 'events',
        limit: '30',
        order: 'postDate desc',
        with: [
            'eventMediaTile',
            'eventVenueName',
            'eventCity'
        ],
        relatedTo: category }) %}


Then in your _card do:

&lt;a href="{{ entry.url }}" title="{{ entry.title }} Tickets" class="card card-md waves-effect waves-light" aria-label="{{ entry.title }} Tickets"&gt;
    {% if entry.eventPercentageSaving &gt; 0 %}
        &lt;div class="corner-ribbon top-right"&gt;{{ entry.eventPercentageSaving }}% Off&lt;/div&gt;
    {% endif %}

    {% set cardImage = entry.eventMediaTile[0] ?? null %}
    {% if cardImage %}
        &lt;div class="card-image"&gt;
            &lt;img src="{{ cardImage.geturl }}" alt="{{ entry.title }} Preview Image"&gt;
        &lt;/div&gt;
    {% endif %}

    &lt;div class="card-content"&gt;
        &lt;h3 class="card-title"&gt;{{ entry.title }}&lt;/h3&gt;
        &lt;p&gt;{{ entry.eventVenueName[0].title ?? 'N/A' }}, {{ entry.eventCity[0].title ?? 'N/A' }}&lt;/p&gt;
        &lt;div class="btn"&gt;From £{{ entry.eventMinimumPrice }}&lt;/div&gt;
    &lt;/div&gt;
&lt;/a&gt;


If you turn the debug toolbar on your front-end (under your user's preferences) before implementing, and look at the query count, you should see a significant drop. 

If this isn't enough, you could start caching. Andrew has a great article on this.