How to apply an image style based on a condition (a date for ex.)?
Yes you can do it with rules module with the help of Field formatter conditions module


  Adds conditions to field formatters. Configuration happens on the
  "Manage Display" screens of every entity type on a per field basis
  when clicking on the cogwheel on the right.




Supports


Rules
Field API fields
Display Suite fields (only branch 2)


Simple conditions and actions


Hide source field when target field is empty.
Hide source field when target field is not empty.
Hide source field when current user has specific roles.
Hide source field on specific pages.
Hide source field when target field contains a specific string.
Hide source field when target field doesn't contain a specific string.
Hide link field if title is empty.
Hide date field if from/to has expired.


Rules actions


Hide a field.
Change image style.


Rules should always be a 'A field is rendered' event before they can be selected in the conditions dropdown on the "Manage Display" screens per field.