diff --git a/module/finc/src/finc/View/Helper/Root/Record.php b/module/finc/src/finc/View/Helper/Root/Record.php
index c12efed09377fb0e62cd7f4866275eee5c228702..847bec98d2cfc4e5aa69fc6e1ff5c5f5ae2c254a 100644
--- a/module/finc/src/finc/View/Helper/Root/Record.php
+++ b/module/finc/src/finc/View/Helper/Root/Record.php
@@ -116,7 +116,7 @@ class Record extends \VuFind\View\Helper\Root\Record
     /**
      * Get the CSS class used to properly render an icon for given value
      *
-     * @param string $value Value to convert into CSS class
+     * @param string $value (identifier) Value to convert into CSS class
      * @param string $classfile Define alternative file for icon class without
      *                              suffix. Default: record-icon-class.phtml
      *
@@ -130,6 +130,20 @@ class Record extends \VuFind\View\Helper\Root\Record
         );
     }
 
+    /**
+     * Get the CSS class used to properly render an icon for given value
+     *
+     * @param string $classfile Define alternative file for icon text without
+     *
+     * @return string
+     */
+    public function getRecordIconText($classfile = 'record-icon-text')
+    {
+        return $this->renderTemplate(
+            $classfile . '.phtml'
+        );
+    }
+
     /**
      * Returns if style based icons should be shown (if covers are disabled!)
      *
@@ -338,7 +352,7 @@ class Record extends \VuFind\View\Helper\Root\Record
             }
             // is pattern set and matches so try rewrite url
             if (isset($r['pattern']) && 0 != preg_match('/' . $r['pattern'] . '/i', trim($link['url']))) {
-                // if function is set and available then perform on url 
+                // if function is set and available then perform on url
                 if (isset($r['function']) && is_callable($r['function'])) {
                     $link['url'] = $r['function']($link['url']);
                 }
diff --git a/themes/finc/js/advanced_search.js b/themes/finc/js/advanced_search.js
new file mode 100644
index 0000000000000000000000000000000000000000..5dad9556167bd8b8b43e983a3b53e7b2f05d26a9
--- /dev/null
+++ b/themes/finc/js/advanced_search.js
@@ -0,0 +1,141 @@
+/* Copied from bootstrap3 to set focus on new group or field - FIXME: Remove after PR is effective - #17985 - RL */
+/* exported addGroup, addSearch, deleteGroup, deleteSearch */
+var nextGroup = 0;
+var groupLength = [];
+
+function addSearch(group, _fieldValues) {
+  var fieldValues = _fieldValues || {};
+  // Build the new search
+  var inputID = group + '_' + groupLength[group];
+  var $newSearch = $($('#new_search_template').html());
+
+  $newSearch.attr('id', 'search' + inputID);
+  $newSearch.find('input.form-control')
+    .attr('id', 'search_lookfor' + inputID)
+    .attr('name', 'lookfor' + group + '[]')
+    .val('');
+  $newSearch.find('select.adv-term-type option:first-child').attr('selected', 1);
+  $newSearch.find('select.adv-term-type')
+    .attr('id', 'search_type' + inputID)
+    .attr('name', 'type' + group + '[]');
+  $newSearch.find('.adv-term-remove')
+    .attr('onClick', 'return deleteSearch(' + group + ',' + groupLength[group] + ')');
+  // Preset Values
+  if (typeof fieldValues.term !== "undefined") {
+    $newSearch.find('input.form-control').val(fieldValues.term);
+  }
+  if (typeof fieldValues.field !== "undefined") {
+    $newSearch.find('select.adv-term-type option[value="' + fieldValues.field + '"]').attr('selected', 1);
+  }
+  if (typeof fieldValues.op !== "undefined") {
+    $newSearch.find('select.adv-term-op option[value="' + fieldValues.op + '"]').attr('selected', 1);
+  }
+  // Insert it
+  $("#group" + group + "Holder").before($newSearch);
+  // Individual search ops (for searches like EDS)
+  if (groupLength[group] === 0) {
+    $newSearch.find('.first-op')
+      .attr('name', 'op' + group + '[]')
+      .removeClass('hidden');
+    $newSearch.find('select.adv-term-op').remove();
+  } else {
+    $newSearch.find('select.adv-term-op')
+      .attr('id', 'search_op' + group + '_' + groupLength[group])
+      .attr('name', 'op' + group + '[]')
+      .removeClass('hidden');
+    $newSearch.find('.first-op').remove();
+    $newSearch.find('label').remove();
+    // Show x if we have more than one search inputs
+    $('#group' + group + ' .adv-term-remove').removeClass('hidden');
+  }
+  groupLength[group]++;
+
+  // #17985 finc barf
+  $newSearch.find('input.form-control').focus();
+
+  return false;
+}
+
+function deleteSearch(group, sindex) {
+  for (var i = sindex; i < groupLength[group] - 1; i++) {
+    var $search0 = $('#search' + group + '_' + i);
+    var $search1 = $('#search' + group + '_' + (i + 1));
+    $search0.find('input').val($search1.find('input').val());
+    var select0 = $search0.find('select')[0];
+    var select1 = $search1.find('select')[0];
+    select0.selectedIndex = select1.selectedIndex;
+  }
+  if (groupLength[group] > 1) {
+    groupLength[group]--;
+    $('#search' + group + '_' + groupLength[group]).remove();
+    if (groupLength[group] === 1) {
+      $('#group' + group + ' .adv-term-remove').addClass('hidden'); // Hide x
+    }
+  }
+  return false;
+}
+
+function addGroup(_firstTerm, _firstField, _join) {
+  var firstTerm = _firstTerm || '';
+  var firstField = _firstField || '';
+  var join = _join || '';
+
+  var $newGroup = $($('#new_group_template').html());
+  $newGroup.find('.adv-group-label') // update label
+    .attr('for', 'search_lookfor' + nextGroup + '_0');
+  $newGroup.attr('id', 'group' + nextGroup);
+  $newGroup.find('.search_place_holder')
+    .attr('id', 'group' + nextGroup + 'Holder')
+    .removeClass('hidden');
+  $newGroup.find('.add_search_link')
+    .attr('id', 'add_search_link_' + nextGroup)
+    .attr('onClick', 'return addSearch(' + nextGroup + ')')
+    .removeClass('hidden');
+  $newGroup.find('.adv-group-close')
+    .attr('onClick', 'return deleteGroup(' + nextGroup + ')');
+  $newGroup.find('select.form-control')
+    .attr('id', 'search_bool' + nextGroup)
+    .attr('name', 'bool' + nextGroup + '[]');
+  $newGroup.find('.search_bool')
+    .attr('for', 'search_bool' + nextGroup);
+  if (join.length > 0) {
+    $newGroup.find('option[value="' + join + '"]').attr('selected', 1);
+  }
+  // Insert
+  $('#groupPlaceHolder').before($newGroup);
+  // Populate
+  groupLength[nextGroup] = 0;
+  addSearch(nextGroup, {term: firstTerm, field: firstField});
+  // Show join menu
+  if (nextGroup > 0) {
+    $('#groupJoin').removeClass('hidden');
+    // Show x
+    $('.adv-group-close').removeClass('hidden');
+  }
+
+  // #17985 finc barf
+  $newGroup.children('input.form-control').first().focus();
+
+  return nextGroup++;
+}
+
+function deleteGroup(group) {
+  // Find the group and remove it
+  $("#group" + group).remove();
+  // If the last group was removed, add an empty group
+  if ($('.adv-group').length === 0) {
+    addGroup();
+  } else if ($('#advSearchForm .adv-group').length === 1) {
+    $('#groupJoin').addClass('hidden'); // Hide join menu
+    $('.adv-group .adv-group-close').addClass('hidden'); // Hide x
+  }
+  return false;
+}
+
+$(document).ready(function advSearchReady() {
+  $('.clear-btn').click(function clearBtnClick() {
+    $('input[type="text"]').val('');
+    $("option:selected").removeAttr("selected");
+    $("#illustrated_-1").click();
+  });
+});
diff --git a/themes/finc/js/covers.js b/themes/finc/js/covers.js
index 1f150538799ab5778d7129604d192603de5761a5..f54f93b677c941e87ad4fc3a0406e43f54d20aba 100644
--- a/themes/finc/js/covers.js
+++ b/themes/finc/js/covers.js
@@ -1,3 +1,22 @@
+/* global Finc */
+// show picture in large size after click within a modal
+function registerCoverForModal(anchor, url) {
+  if (anchor === null || anchor === undefined || url === null || url === undefined) {
+    return;
+  }
+
+  anchor.click(function(event) {
+    event.preventDefault();
+    VuFind.modal('show');
+    var largeSizeUrl = url + '&size=large';
+    $.get(largeSizeUrl).done(function() {
+      $('#modal').find('.modal-body').html('<img src="' + largeSizeUrl + '">');
+    }).fail(function() {
+      $('#modal').find('.modal-body').html('<img src="' + url + '">');
+    });
+  });
+}
+
 /* this is a backport from VF 7 core, remove on upgrade */
 /* global VuFind */
 function loadCoverByElement(data, element) {
@@ -15,6 +34,7 @@ function loadCoverByElement(data, element) {
       anchor.show();
       anchor.attr('href', response.data.url);
       anchor.removeClass('hidden'); // finc specific
+      registerCoverForModal(anchor, response.data.url); // finc specific
     } else {
       img.remove();
       if (typeof response.data.html !== 'undefined') {
@@ -45,5 +65,6 @@ function loadCovers() {
     loadCoverByElement(data, $(this));
   });
 }
+
 // deactivated for finc - we load every single cover directly by itself in cover.phtml
 // $(document).ready(loadCovers);
diff --git a/themes/finc/scss/compiled.scss b/themes/finc/scss/compiled.scss
index 094ad9742b40178c42fa65fbb43ec01c672d515a..79421497168e1b1eaf06068475fd9e8e037d41fd 100644
--- a/themes/finc/scss/compiled.scss
+++ b/themes/finc/scss/compiled.scss
@@ -2172,8 +2172,14 @@ footer {
   }
 
   span {
-    font-size: .8em;
+    font-size: 1rem;
+    padding-top: .75rem;
+    text-align: center;
     width: 100%;
+
+    @media screen and (max-width: $screen-xs-max) {
+      display: block;
+    }
   }
 }
 
diff --git a/themes/finc/templates/RecordDriver/DefaultRecord/collection-info.phtml b/themes/finc/templates/RecordDriver/DefaultRecord/collection-info.phtml
index da6f1ba8e886185d7a21902dc4b8be2d31fbaeaf..9a632703f394087e73e9d4c8dc200cdaf71855c6 100644
--- a/themes/finc/templates/RecordDriver/DefaultRecord/collection-info.phtml
+++ b/themes/finc/templates/RecordDriver/DefaultRecord/collection-info.phtml
@@ -6,7 +6,7 @@
   $cover = $coverDetails['html'];
   $preview = $this->record($this->driver)->getPreviews(); ?>
   <?php if ($QRCode || $cover || $preview): ?>
-    <div class="media-left <?=$this->escapeHtmlAttr($coverDetails['size'])?>" aria-hidden="<?=$cover?'true':'false'?>>
+    <div class="media-left <?=$this->escapeHtmlAttr($coverDetails['size'])?>">
       <?php /* Display thumbnail if appropriate: */ ?>
       <?php if ($cover): ?>
         <?=$cover?>
diff --git a/themes/finc/templates/RecordDriver/DefaultRecord/core.phtml b/themes/finc/templates/RecordDriver/DefaultRecord/core.phtml
index abfa3146c70a0d5099f4fa7f24272815be64e954..2fb24aa1bf328fb5013725bbcdce4c9de5d10252 100644
--- a/themes/finc/templates/RecordDriver/DefaultRecord/core.phtml
+++ b/themes/finc/templates/RecordDriver/DefaultRecord/core.phtml
@@ -9,7 +9,7 @@
   $preview = $this->record($this->driver)->getPreviews();
   ?>
   <?php if ($QRCode || $cover || $preview): ?>
-    <div class="media-left <?= $this->escapeHtmlAttr($coverDetails['size']) ?> img-col" aria-hidden="<?=$cover?'true':'false'?>">
+    <div class="media-left <?= $this->escapeHtmlAttr($coverDetails['size']) ?> img-col">
       <?php /* Display thumbnail if appropriate: */ ?>
       <?php if ($cover): ?>
         <?=$cover?>
diff --git a/themes/finc/templates/RecordDriver/DefaultRecord/record-icon-class.phtml b/themes/finc/templates/RecordDriver/DefaultRecord/record-icon-class.phtml
index 7e915e408fb9e2f4232268ae813cbf3cfc436696..c9db1eba1145a5242ff7bea91bad01fe2763c155 100644
--- a/themes/finc/templates/RecordDriver/DefaultRecord/record-icon-class.phtml
+++ b/themes/finc/templates/RecordDriver/DefaultRecord/record-icon-class.phtml
@@ -2,7 +2,6 @@
 $normalizedValue = preg_replace('/[^a-z0-9]/', '', strtolower($this->value));
 
 // Convert normalizedValue to styles
-// finc: same list of states for icons like in de_15 #13704 - VE
 switch ($normalizedValue) {
   case 'local':
     echo 'fa-home';
diff --git a/themes/finc/templates/RecordDriver/DefaultRecord/record-icon-text.phtml b/themes/finc/templates/RecordDriver/DefaultRecord/record-icon-text.phtml
new file mode 100644
index 0000000000000000000000000000000000000000..50bd4d1b6e9856521d913ae9a4f4fbf9a5504ad1
--- /dev/null
+++ b/themes/finc/templates/RecordDriver/DefaultRecord/record-icon-text.phtml
@@ -0,0 +1,20 @@
+<!-- finc: recordDriver - DefaultRecord - record-icon-text  -->
+<?php
+  /* block copied from record-icon - RL */
+  $recordType = $this->driver->getRecordType();
+  if ($recordType == "marcfincpda") {
+    $type = $recordType;
+  } elseif ($recordType == "lido") {
+    $type = "object";
+  } else {
+    $type = implode('', $this->driver->getFacetAvail());
+  }
+?>
+<?php if ($iconClass = $this->record($this->driver)->getRecordIconClass($type)): ?>
+  <span class="access-icon hidden-print">
+    <span>
+      <?=$this->translate("($iconClass)")?>
+    </span>
+  </span>
+<?php endif; ?>
+<!-- finc: recordDriver - DefaultRecord - record-icon-text - END -->
\ No newline at end of file
diff --git a/themes/finc/templates/RecordDriver/DefaultRecord/record-icon.phtml b/themes/finc/templates/RecordDriver/DefaultRecord/record-icon.phtml
index b1326e3298090c15549f19039220c98795e1a4d3..b36f126e35c921bc00d91b93aa7b303a19c08382 100644
--- a/themes/finc/templates/RecordDriver/DefaultRecord/record-icon.phtml
+++ b/themes/finc/templates/RecordDriver/DefaultRecord/record-icon.phtml
@@ -1,30 +1,18 @@
 <!-- finc: recordDriver - DefaultRecord - record-icon  -->
 <?php
-/* finc: template is identical with de_15 #13704 - VE */
-
-/*$formats = [];
-foreach ($this->driver->getFormats() as $format) {
-  $formats[] = $this->record($this->driver)->getRecordIconClass($format);
-}
-$formats = array_unique($formats);
-asort($formats);
-?>
-<span class="record-icon"><img src="<?=$this->imageLink("small/".array_pop($formats).".png")?>" class="hidden-xs" alt="<?=$this->transEsc("record icon")?>" /></span>
-*/
-
-if ($this->driver->getRecordType() == "marcfincpda") {
-  $iconClass = $this->record($this->driver)->getRecordIconClass("marcfincpda");
-} elseif ($this->driver->getRecordType() == "lido") {
-  $iconClass = $this->record($this->driver)->getRecordIconClass("object");
-} else {
-  /* finc: solr field facet_avail instead of access_facet (field deprecated) #15375 - GG */
-  $facetAvail = $this->driver->getFacetAvail();
-  $facetAvail = implode('', $facetAvail);
-  $iconClass = $this->record($this->driver)->getRecordIconClass($facetAvail);
-}
+  /* finc: template is NOT identical with de_15 - RL */
+  $recordType = $this->driver->getRecordType();
+  if ($recordType == "marcfincpda") {
+    $type = $recordType;
+  } elseif ($recordType == "lido") {
+    $type = "object";
+  } else {
+    $type = implode('', $this->driver->getFacetAvail());
+  }
+  $iconClass = $this->record($this->driver)->getRecordIconClass($type);
 ?>
 <span class="access-icon hidden-print">
-  <i class="fa <?=$iconClass?>"></i>
-  <span class="hidden-xs"> <?=$this->transEsc("$this->escapeHtml($iconClass)")?></span>
+  <i aria-hidden="true" class="fa <?=$iconClass?>"></i>
+  <?php /* separate access text from icon - moved to cover.phtml */ ?>
 </span>
-<!-- finc: recordDriver - DefaultRecord - record-icon - END -->
+<!-- finc: recordDriver - DefaultRecord - record-icon - END -->
\ No newline at end of file
diff --git a/themes/finc/templates/RecordDriver/DefaultRecord/result-list.phtml b/themes/finc/templates/RecordDriver/DefaultRecord/result-list.phtml
index 384afa895b7bc80cd88d45471aa5b64ebcc199d9..767f185304e75b2ec54d4dad17025a4275a791ac 100644
--- a/themes/finc/templates/RecordDriver/DefaultRecord/result-list.phtml
+++ b/themes/finc/templates/RecordDriver/DefaultRecord/result-list.phtml
@@ -8,7 +8,7 @@ $thumbnailAlignment = $this->record($this->driver)->getThumbnailAlignment('resul
 $describedById = $driver->getSourceIdentifier() . '|' . $driver->getUniqueId();
 if ($cover):
   ob_start(); ?>
-  <div class="media-<?=$thumbnailAlignment?> <?=$this->escapeHtmlAttr($coverDetails['size'])?>" aria-hidden="true">
+  <div class="media-<?=$thumbnailAlignment?> <?=$this->escapeHtmlAttr($coverDetails['size'])?>">
     <?=$cover?>
   </div>
   <?php $thumbnail = ob_get_contents(); ?>
@@ -18,6 +18,7 @@ if ($cover):
   <?php ob_start(); ?>
   <div class="media-<?=$thumbnailAlignment?> record-icon">
     <?=$this->record($this->driver)->getRecordIcon()?>
+    <?=$this->record($this->driver)->getRecordIconText()?>
   </div>
   <?php $thumbnail = ob_get_contents(); ?>
   <?php ob_end_clean(); ?>
diff --git a/themes/finc/templates/RecordDriver/FincMissing/result-list.phtml b/themes/finc/templates/RecordDriver/FincMissing/result-list.phtml
index aab0e1066fe754dc457492d881c3a0d6ab2abd0f..d6edbf31147404a0e6ef590d9cebf01b682b780e 100644
--- a/themes/finc/templates/RecordDriver/FincMissing/result-list.phtml
+++ b/themes/finc/templates/RecordDriver/FincMissing/result-list.phtml
@@ -13,7 +13,7 @@ $thumbnail = false;
 $thumbnailAlignment = $this->record($this->driver)->getThumbnailAlignment('result');
 if ($cover):
   ob_start(); ?>
-  <div class="media-<?=$thumbnailAlignment?> <?=$this->escapeHtmlAttr($coverDetails['size'])?>" aria-hidden="true">
+  <div class="media-<?=$thumbnailAlignment?> <?=$this->escapeHtmlAttr($coverDetails['size'])?>">
     <?=$cover?>
   </div>
   <?php $thumbnail = ob_get_contents(); ?>
diff --git a/themes/finc/templates/RecordDriver/SolrAI/core.phtml b/themes/finc/templates/RecordDriver/SolrAI/core.phtml
index 0898ed1578e797ae1b186b1740baca75b825e075..8ff58d1fdd303d8224c46529e7c1677cd7e804fb 100644
--- a/themes/finc/templates/RecordDriver/SolrAI/core.phtml
+++ b/themes/finc/templates/RecordDriver/SolrAI/core.phtml
@@ -10,7 +10,7 @@
   $preview = $this->record($this->driver)->getPreviews();
   ?>
   <?php if ($QRCode || $cover || $preview): ?>
-    <div class="media-left <?= $this->escapeHtmlAttr($coverDetails['size']) ?> img-col" aria-hidden="<?=$cover?'true':'false'?>">
+    <div class="media-left <?= $this->escapeHtmlAttr($coverDetails['size']) ?> img-col">
       <?php /* Display thumbnail if appropriate: */ ?>
       <?php if ($cover): ?>
         <?=$cover?>
diff --git a/themes/finc/templates/RecordDriver/SolrAI/result-list.phtml b/themes/finc/templates/RecordDriver/SolrAI/result-list.phtml
index 0b8dc222334495369c4a119078df6840174a8a3f..16be9bd855b86b1155ba70f51928ecab646d9b4d 100644
--- a/themes/finc/templates/RecordDriver/SolrAI/result-list.phtml
+++ b/themes/finc/templates/RecordDriver/SolrAI/result-list.phtml
@@ -16,6 +16,7 @@ if ($cover):
   <?php ob_start(); ?>
   <div class="media-<?=$thumbnailAlignment?> record-icon">
     <?=$this->record($this->driver)->getRecordIcon()?>
+    <?=$this->record($this->driver)->getRecordIconText()?>
   </div>
   <?php $thumbnail = ob_get_contents(); ?>
   <?php ob_end_clean(); ?>
diff --git a/themes/finc/templates/RecordDriver/SolrLido/core.phtml b/themes/finc/templates/RecordDriver/SolrLido/core.phtml
index a2022ca6cc31d1e6a11def06b73f0bb14d496719..8eed15270f91375cb0d4162a57c86c12e0e8316d 100644
--- a/themes/finc/templates/RecordDriver/SolrLido/core.phtml
+++ b/themes/finc/templates/RecordDriver/SolrLido/core.phtml
@@ -30,7 +30,7 @@
   $preview = $this->record($this->driver)->getPreviews();
   ?>
   <?php if ($QRCode || $cover || $preview): ?>
-    <div class="media-left <?=$this->escapeHtmlAttr($coverDetails['size'])?> img-col" aria-hidden="<?=$cover?'true':'false'?>">
+    <div class="media-left <?=$this->escapeHtmlAttr($coverDetails['size'])?> img-col"?>">
       <?php /* Display thumbnail if appropriate: */ ?>
       <?php if ($cover): ?>
         <?=$cover?>
diff --git a/themes/finc/templates/RecordDriver/SolrMarc/core.phtml b/themes/finc/templates/RecordDriver/SolrMarc/core.phtml
index d001340755986b1218c25edf9191fa3004e2a71c..36078b3bbbd57eb88e6a9d5700798696e31f61e5 100644
--- a/themes/finc/templates/RecordDriver/SolrMarc/core.phtml
+++ b/themes/finc/templates/RecordDriver/SolrMarc/core.phtml
@@ -10,7 +10,7 @@
   $preview = $this->record($this->driver)->getPreviews();
   ?>
   <?php if ($QRCode || $cover || $preview): ?>
-  <div class="media-left <?=$this->escapeHtmlAttr($coverDetails['size'])?> img-col" aria-hidden="<?=$cover?'true':'false'?>">
+  <div class="media-left <?=$this->escapeHtmlAttr($coverDetails['size'])?> img-col">
       <?php /* Display thumbnail if appropriate: */ ?>
       <?php if ($cover): ?>
         <?=$cover?>
diff --git a/themes/finc/templates/myresearch/historicloans.phtml b/themes/finc/templates/myresearch/historicloans.phtml
index a86d384a051a4aa0efe60ade2da0941780c0f627..44605abc8de8fafa023af8ba0b70903984ef3263 100644
--- a/themes/finc/templates/myresearch/historicloans.phtml
+++ b/themes/finc/templates/myresearch/historicloans.phtml
@@ -51,7 +51,7 @@
           $thumbnailAlignment = $this->record($resource)->getThumbnailAlignment('account');
           if ($cover):
             ob_start(); ?>
-            <div class="media-<?=$thumbnailAlignment ?> <?=$this->escapeHtmlAttr($coverDetails['size'])?>" aria-hidden="true">
+            <div class="media-<?=$thumbnailAlignment ?> <?=$this->escapeHtmlAttr($coverDetails['size'])?>">
               <?=$cover ?>
             </div>
             <?php $thumbnail = ob_get_contents();
diff --git a/themes/finc/templates/myresearch/illrequests.phtml b/themes/finc/templates/myresearch/illrequests.phtml
index 32f59dd92179d0e9d71eb84692383d431cbdd252..6f87f860b07bdb742a7a115a18a82eabeb1a8a79 100644
--- a/themes/finc/templates/myresearch/illrequests.phtml
+++ b/themes/finc/templates/myresearch/illrequests.phtml
@@ -66,7 +66,7 @@
           $thumbnailAlignment = $this->record($resource)->getThumbnailAlignment('account');
           if ($cover):
             ob_start(); ?>
-            <div class="media-<?=$thumbnailAlignment ?> <?=$this->escapeHtmlAttr($coverDetails['size'])?>" aria-hidden="true">
+            <div class="media-<?=$thumbnailAlignment ?> <?=$this->escapeHtmlAttr($coverDetails['size'])?>">
               <?=$cover ?>
             </div>
             <?php $thumbnail = ob_get_contents(); ?>
diff --git a/themes/finc/templates/record/cover.phtml b/themes/finc/templates/record/cover.phtml
index d528c97f6358d0cb62317dc0a7e8e359ddc0ba2b..ccc96247aef93c12b7ba2671726b0028e306ff52 100644
--- a/themes/finc/templates/record/cover.phtml
+++ b/themes/finc/templates/record/cover.phtml
@@ -3,22 +3,31 @@
 <?php /* If you want to load covers in lightbox use .recordcover;
   the class .nocover prevents nocover images from loading in lightbox or can be used to hide the images */ ?>
 <?php $alt = $alt ?? $this->transEsc('Cover Image')?>
+<?php $coverId = "cover-" . $driver->getUniqueID() . "-" . time(); ?>
 <?php if ($cover): ?>
-  <?php if ($this->link): ?><a href="<?=$this->escapeHtmlAttr($this->link)?>" target="_blank" tabindex="-1"><?php endif; ?>
-  <img alt="<?=$alt?>" <?php if ($linkPreview): ?>data-linkpreview="true" <?php endif; ?>class="recordcover" src="<?=$this->escapeHtmlAttr($cover); ?>" aria-hidden="true"/>
-  <?php if ($this->link): ?></a><?php endif; ?>
+  <?php if ($this->link): ?><a id="<?=$coverId?>" href="<?=$this->escapeHtmlAttr($this->link)?>" tabindex="-1" aria-hidden="true"><?php endif; ?>
+  <img alt="<?=$alt?>" <?php if ($linkPreview): ?>data-linkpreview="true" <?php endif; ?>class="recordcover" src="<?=$this->escapeHtmlAttr($cover); ?>" />
+  <?php if ($this->link): ?>
+  </a>
+  <script>
+    registerCoverForModal($('#<?=$coverId?>'), '<?=$this->link?>');
+  </script>
+  <?php endif; ?>
 <?php elseif ($cover === false): ?>
-  <img src="<?=$this->url('cover-unavailable')?>" <?php if ($linkPreview): ?>data-linkpreview="true" <?php endif; ?>class="nocover" alt="<?=$this->transEsc('No Cover Image')?>" aria-hidden="true" />
+  <img src="<?=$this->url('cover-unavailable')?>" <?php if ($linkPreview): ?>data-linkpreview="true" <?php endif; ?>class="nocover" alt="<?=$this->transEsc('No Cover Image')?>" aria-hidden="true" tabindex="-1" />
 <?php else: ?>
-    <div id="cover-<?=$driver->getUniqueID()?>" class="ajaxcover">
-        <div class="spinner"><i class="fa fa-spinner fa-spin"></i></div>
-        <div class="cover-container">
-          <?=$this->render('record/coverReplacement')?>
-          <a class="coverlink hidden" tabindex="-1">
-            <img src onerror="loadCoverByElement({source:'<?=$this->escapeHtmlAttr($driver->getSourceIdentifier())?>', recordId:'<?=$this->escapeHtmlAttr($driver->getUniqueID())?>', size:'<?=$this->escapeHtmlAttr($size)?>'}, $('#cover-<?=$driver->getUniqueID()?>'))"
-              <?php if ($linkPreview): ?>data-linkpreview="true" <?php endif; ?> class="recordcover ajax" alt="<?=$this->escapeHtmlAttr($alt); ?>" />
-          </a>
-        </div>
-    </div>
+  <div id="<?=$coverId?>" class="ajaxcover">
+      <div class="spinner"><i class="fa fa-spinner fa-spin"></i></div>
+      <div class="cover-container">
+        <?=$this->render('record/coverReplacement')?>
+        <a class="coverlink hidden" aria-hidden="true" tabindex="-1">
+          <img <?php if ($linkPreview): ?>data-linkpreview="true" <?php endif; ?> class="recordcover ajax" alt="<?=$this->escapeHtmlAttr($alt); ?>" />
+        </a>
+        <script>
+          loadCoverByElement({source:'<?=$this->escapeHtmlAttr($driver->getSourceIdentifier())?>', recordId:'<?=$this->escapeHtmlAttr($driver->getUniqueID())?>', size:'<?=$this->escapeHtmlAttr($size)?>'}, $('#<?=$coverId?>'));
+        </script>
+      </div>
+  </div>
 <?php endif; ?>
+<?=$this->record($this->driver)->getRecordIconText()?>
 <!-- finc: record - cover - END -->