{# Image Reveal Module - Performance-optimized animated images #}
{# Shorthand variables for cleaner code #}
{% set c = module.content %}
{% set anim = module.animation %}
{% set s = module.style %}
{% set a = module.advanced %}
{% set animation_class = "reveal-" ~ name %}
{% set has_animation = anim.animation_type != 'none' %}
{% set has_displacement = s.enable_displacement %}
{% set displacement_x = s.displacement_x|default(0) %}
{% set displacement_y = s.displacement_y|default(0) %}
{% set displacement_unit = s.displacement_unit|default('px') %}
{% if c.image.src %}
{% endif %}
{% if c.show_caption and c.caption %}
{{ c.caption }}
{% endif %}
{# NOTE: do NOT add a "no-JS reveal" here. HubSpot's CSS
aggregation hoists the
{# Minimal Intersection Observer for triggering animations on viewport entry #}
{% if has_animation %}
{% endif %}