diff --git a/module/finc/src/finc/View/Helper/Root/Record.php b/module/finc/src/finc/View/Helper/Root/Record.php
index 0ee9a8b12620a60eeb67ae596cf426a03a283c5c..63cb9fffe3821c1d3fa4f9f5a1df4c96f73cddd2 100644
--- a/module/finc/src/finc/View/Helper/Root/Record.php
+++ b/module/finc/src/finc/View/Helper/Root/Record.php
@@ -110,24 +110,29 @@ class Record extends \VuFind\View\Helper\Root\Record
     /**
      * Render a (list of) record icons.
      *
+     * @param string $tpl Define alternative template for record icon. Default:
+     *                      record-icon.phtml
+     *
      * @return string
      */
-    public function getRecordIcon()
+    public function getRecordIcon($tpl = 'record-icon')
     {
-        return $this->renderTemplate('record-icon.phtml');
+        return $this->renderTemplate($tpl . '.phtml');
     }
 
     /**
      * Get the CSS class used to properly render an icon for given value
      *
      * @param string $value Value to convert into CSS class
+     * @param string $classfile Define alternative file for icon class without
+     *                              suffix. Default: record-icon-class.phtml
      *
      * @return string
      */
-    public function getRecordIconClass($value)
+    public function getRecordIconClass($value, $classfile = 'record-icon-class')
     {
         return $this->renderTemplate(
-            'record-icon-class.phtml', ['value' => $value]
+            $classfile . '.phtml', ['value' => $value]
         );
     }
 
diff --git a/themes/finc/images/sprite-mediaicons.png b/themes/finc/images/sprite-mediaicons.png
new file mode 100644
index 0000000000000000000000000000000000000000..bef26e1f52b8b8c692e0b1825bd2135ace1e2a54
Binary files /dev/null and b/themes/finc/images/sprite-mediaicons.png differ
diff --git a/themes/finc/scss/default.scss b/themes/finc/scss/default.scss
index 338bc0ca9b17c4359f94f6a24844a14f0717e2db..48da08e2c9184a10cb8d209030f1fed1511d1767 100644
--- a/themes/finc/scss/default.scss
+++ b/themes/finc/scss/default.scss
@@ -148,4 +148,139 @@ form label {font-size: 1rem;}
 // Make sure, distance to close-button is sufficient
 .modal-body .alert-box { margin-top: 1.5rem; }
 // Secondary close button
-.reveal-modal .secondary.close-reveal-modal { @include button-style($bg:$secondary-color); border-left-color: #fff; font-weight: 300; font-size: .8125rem; line-height: 15px; position: relative; right: auto; top: auto;}
\ No newline at end of file
+.reveal-modal .secondary.close-reveal-modal { @include button-style($bg:$secondary-color); border-left-color: #fff; font-weight: 300; font-size: .8125rem; line-height: 15px; position: relative; right: auto; top: auto;}
+
+//LIST VIEW
+// Sprites Mediaicons
+.sprite-media-icon {
+  width: 50px;
+  height: 54px;
+  float: left;
+  background: url('../../finc/images/sprite-mediaicons.png') 0 0 repeat;
+}
+
+// 1st row
+.book {
+  background-position: 0px 0px;
+}
+
+.thesis {
+  background-position: -50px 0px;
+}
+
+.ebook {
+  background-position: -100px 0px;
+}
+
+.sets {
+  background-position: -150px 0px;
+}
+
+.electronic {
+  background-position: -250px 0px;
+}
+
+// 2nd row
+.journal {
+  background-position: 0px -55px;
+}
+
+.electronicjournal {
+  background-position: -50px -55px;
+}
+
+.newspaper {
+  background-position: -100px -55px;
+}
+
+.manuscript {
+  background-position: -150px -55px;
+}
+
+.braille {
+  background-position: -200px -55px;
+}
+
+.microfilm {
+  background-position: -250px -55px;
+}
+
+// 3rd row
+.software {
+  background-position: 0px -110px;
+}
+
+.software-set {
+  background-position: -100px -110px;
+}
+
+.kit {
+  background-position: -100px -110px;
+}
+
+.image {
+  background-position: -150px -110px;
+}
+
+.slide {
+  background-position: -200px -110px;
+}
+
+.globe {
+  background-position: -250px -110px;
+}
+
+// 4th row
+.film {
+  background-position: 0px -165px;
+}
+
+.dvd {
+  background-position: -50px -165px;
+}
+
+.video {
+  background-position: -100px -165px;
+}
+
+.video-set {
+  background-position: -100px -165px;
+}
+
+.map {
+  background-position: -200px -165px;
+}
+
+.unknown {
+  background-position: -250px -165px;
+}
+
+// 5th row
+.audio {
+  background-position: 0 -220px;
+}
+
+.cd {
+  background-position: -50px -220px;
+}
+
+.audiotape {
+  background-position: -100px -220px;
+}
+
+.musicalscore {
+  background-position: -150px -220px;
+}
+
+.chart {
+  background-position: -200px -220px;
+}
+
+.physicalobject {
+  background-position: -250px -220px;
+}
+
+// 6th row
+.audio-set {
+  background-position: 0 -275px;
+}
\ No newline at end of file
diff --git a/themes/finc/templates/RecordDriver/SolrDefault/record-icon-sprite-class.phtml b/themes/finc/templates/RecordDriver/SolrDefault/record-icon-sprite-class.phtml
new file mode 100644
index 0000000000000000000000000000000000000000..67fd2b1e0804cc26a10bd364a160161d2184b85b
--- /dev/null
+++ b/themes/finc/templates/RecordDriver/SolrDefault/record-icon-sprite-class.phtml
@@ -0,0 +1,175 @@
+<?
+$normalizedValue = preg_replace('/[^a-z0-9]/', '', strtolower($this->value));
+// Convert normalizedValue to styles
+switch ($normalizedValue) {
+
+    //block book
+    case 'book':
+    case 'articles':
+        echo 'book';
+        break;
+    //block general audio
+    case 'audio':
+    case 'musicrecording':
+    case 'record':
+    case 'soundrecordingmedium':
+    case 'soundrecording':
+        echo 'audio';
+        break;
+    //block tape audio
+    case 'audiotape':
+    case 'cassette':
+    case 'soundcassette':
+        echo 'audiotape';
+        break;
+    //block braille
+    case 'braille':
+        echo 'braille';
+        break;
+    //block digital audio
+    case 'cd':
+    case 'dvdaudio':
+    case 'sounddisc':
+        echo 'cd';
+        break;
+    //block digital video
+    case 'dvd':
+    case 'blueraydisc':
+    case 'dvdvideo':
+    case 'videodisc':
+        echo 'dvd';
+        break;
+    //block ebook
+    case 'ebook':
+        echo 'ebook';
+        break;
+    //block digital non-book
+    case 'electronicnewspaper':
+    case 'newspaperarticle':
+    case 'newspaper':
+    case 'textresource':
+        echo 'newspaper';
+        break;
+    //block manuscripts
+    case 'manuscript':
+    case 'nachlass':
+        echo 'manuscript';
+        break;
+    //block articles
+    case 'article':
+    case 'articlearticle':
+    case 'electronic':
+    case 'electronicarticle':
+    case 'electronicresourcedatacarrier':
+    case 'electronicresourceremoteaccess':
+        echo 'electronic';
+        break;
+    //block globe
+    case 'globe':
+        echo 'globe';
+        break;
+    //block kit
+    case 'kit':
+        echo 'kit';
+        break;
+    //block journal
+    case 'journal':
+    case 'journalnewspaper':
+    case 'serial':
+        echo 'journal';
+        break;
+    //block ejournal
+    case 'electronicjournal':
+    case 'electronicserial':
+        echo 'electronicjournal';
+        break;
+    //block map
+    case 'map':
+    case 'atlas':
+        echo 'map';
+        break;
+    //block microfilm
+    case 'microfilm':
+    case 'microfiche':
+    case 'microform':
+        echo 'microfilm';
+        break;
+    //block musical score
+    case 'musicalscore':
+    case 'notatedmusic':
+    case 'electronicmusicalscore':
+        echo 'musicalscore';
+        break;
+    //block images
+    case 'photo':
+    case 'artprint':
+    case 'collage':
+    case 'drawing':
+    case 'flashcard':
+    case 'painting':
+    case 'photonegative':
+    case 'placard':
+    case 'print':
+    case 'sensorimage':
+    case 'transparency':
+        echo 'image';
+        break;
+    //block physical object
+    case 'physicalobject':
+        echo 'physicalobject';
+        break;
+    //block othe rimages
+    case 'sensorimage':
+    case 'chart':
+        echo 'chart';
+        break;
+    //block sets
+    case 'sets':
+        echo 'sets';
+        break;
+    //block slide
+    case 'slide':
+        echo 'slide';
+        break;
+    //block software
+    case 'software':
+    case 'cdrom':
+    case 'chipcartridge':
+    case 'disccartridge':
+    case 'dvdrom':
+    case 'floppydisk':
+    case 'tapecartridge':
+    case 'tapecassette':
+    case 'tapereel':
+        echo 'software';
+        break;
+    //block thesis
+    case 'thesis':
+    case 'electronicthesis':
+        echo 'thesis';
+        break;
+
+    //block unknown
+    case 'unknown':
+        echo 'unknown';
+        break;
+    //block analog video
+    case 'vhs':
+    case 'video':
+    case 'videotape':
+    case 'videocartridge':
+    case 'videocassette':
+        echo 'video';
+        break;
+    //block film
+    case 'audiovisualmedia':
+    case 'filmstrip':
+    case 'motionpicture':
+    case 'videoreel':
+        echo 'film';
+        break;
+    //default
+    default:
+        echo 'unknown';
+        break;
+}
\ No newline at end of file
diff --git a/themes/finc/templates/RecordDriver/SolrDefault/record-icon-sprite.phtml b/themes/finc/templates/RecordDriver/SolrDefault/record-icon-sprite.phtml
new file mode 100644
index 0000000000000000000000000000000000000000..d50cbfc5586e22b2c1f5d3f0d613235bcf0254c5
--- /dev/null
+++ b/themes/finc/templates/RecordDriver/SolrDefault/record-icon-sprite.phtml
@@ -0,0 +1,11 @@
+<?
+$formats = [];
+foreach ($this->driver->getFormats() as $format) {
+    $formats[] = $this->record($this->driver)->getRecordIconClass(
+        $format, 'record-icon-sprite-class'
+    );
+}
+$formats = array_unique($formats);
+asort($formats);
+?>
+<span class="sprite-media-icon <?= array_pop($formats) ?>"></span>
\ No newline at end of file