diff --git a/site_settings.tokens.inc b/site_settings.tokens.inc
old mode 100644
new mode 100755
index c2b2c46..994709d
--- a/site_settings.tokens.inc
+++ b/site_settings.tokens.inc
@@ -125,7 +125,6 @@ function site_settings_tokens($type, $tokens, array $data, array $options, Bubbl
 
       // We may be deep into a multidimensional array.
       if (isset($name_parts[2]) && !empty($name_parts[2])) {
-
         // Break apart the on our separator to get the series of array keys we
         // need to navigate down.
         $additional_depth = $name_parts[2];
@@ -165,6 +164,13 @@ function site_settings_tokens($type, $tokens, array $data, array $options, Bubbl
  */
 function _site_settings_retrieve_deep_value($settings, array $keys) {
   if ($keys) {
+    // TODO: Dirty hack, see https://www.drupal.org/project/site_settings/issues/2943440:
+    if(is_array($settings) && isset($settings['format'])) {
+      // Get rendered markup This is a text_format field with format selected:
+      return check_markup($settings['value'], $settings['format']);
+    }
+    // Dirty hack END
+
     $next_key = array_shift($keys);
     if (isset($settings[$next_key]) && is_array($keys)) {
       return _site_settings_retrieve_deep_value($settings[$next_key], $keys);
