diff --git a/themes/de_105/scss/compiled.scss b/themes/de_105/scss/compiled.scss
index 2f49efa8fccd4682b7a1946f13a8ad29a8b4f233..bf3070a7e054948ae2e5712f11d206605118e440 100644
--- a/themes/de_105/scss/compiled.scss
+++ b/themes/de_105/scss/compiled.scss
@@ -513,6 +513,11 @@ a {
   }
 }
 
+.language button {
+  background-color: $white;
+  color: $brand-primary;
+}
+
 .navbar-toggle {
   color: $white;
   padding-top: 1em;
diff --git a/themes/de_105/templates/Recommend/EbscoResults.phtml b/themes/de_105/templates/Recommend/EbscoResults.phtml
index 8fb99b68fde987f685ddc24298178b334140c5d8..ad426aee3711dae7e4aebdd21e9a7568695967cc 100644
--- a/themes/de_105/templates/Recommend/EbscoResults.phtml
+++ b/themes/de_105/templates/Recommend/EbscoResults.phtml
@@ -4,9 +4,9 @@ $data = $this->recommend->getResult();
 if (is_array($data['results']) && count($data['results']) > 0): ?>
   <?php /* Design should follow structure of recommend - sidefacets - CK */ ?>
   <div id="side-panel-ebsco" class="facet-group">
-    <div class="facet title" data-toggle="collapse" href="#side-collapse-ebsco">
+    <a class="title" data-toggle="collapse" href="#side-collapse-ebsco">
         <?= $this->transEsc('Ebsco::title_hits_databases') ?>
-    </div>
+    </a>
     <ul id="side-collapse-ebsco" class="collapse in">
         <?php foreach ($data['results'] as $result): ?>
       <li class="facet">
diff --git a/themes/de_105/templates/RecordDriver/DefaultRecord/data-authors.phtml b/themes/de_105/templates/RecordDriver/DefaultRecord/data-authors.phtml
index 773d5ba19a8132ec66d0ea44aba2397b3c6a9179..2457fb8f8f4d57edf947814564436cb2a9d5f97a 100644
--- a/themes/de_105/templates/RecordDriver/DefaultRecord/data-authors.phtml
+++ b/themes/de_105/templates/RecordDriver/DefaultRecord/data-authors.phtml
@@ -24,7 +24,7 @@ $types = [
             <?php ob_start(); ?>
             <span class="author-data" property="<?=$this->escapeHtml($schemaLabel)?>" typeof="Person">
               <span property="name">
-                <a href="<?=$this->url('search-results')?>?lookfor=&quot;<?=trim($this->escapeHtml($author))?>&quot;&amp;type=Author">
+                <a href="<?=$this->record($this->driver)->getLink('author', $author)?>">
             <?=$this->escapeHtml($author)?>
                 </a>
               </span>
diff --git a/themes/de_105/templates/RecordDriver/DefaultRecord/result-list.phtml b/themes/de_105/templates/RecordDriver/DefaultRecord/result-list.phtml
index 99455b65243877a9ac674997fcb775460893c2cb..51bdebfea84949e6850b49077ad74af7582ae4f6 100644
--- a/themes/de_105/templates/RecordDriver/DefaultRecord/result-list.phtml
+++ b/themes/de_105/templates/RecordDriver/DefaultRecord/result-list.phtml
@@ -56,7 +56,7 @@ $describedById = $driver->getSourceIdentifier() . '|' . $driver->getUniqueId();
             <?php $authorCount = count($summAuthors);
             foreach ($summAuthors as $i => $summAuthor): ?>
               <?php /* de_105: do not show more than 4 authors in resultlist #13763 - VE */ ?>
-              <a href="<?=$this->url('search-results')?>?lookfor=&quot;<?=trim($this->escapeHtml($summAuthor))?>&quot;&amp;type=Author" class="author"><?=$this->highlight($summAuthor)?></a><?=$i + 1 < $authorCount ? ';' : ''?>
+              <a href="<?=$this->record($this->driver)->getLink('author', $this->highlight($summAuthor, null, true, false))?>" class="author"><?=$this->highlight($summAuthor)?></a><?=$i + 1 < $authorCount ? ';' : ''?>
             <?php endforeach; ?>
                 <?php if ($summAuthorCount > 3): ?> et al. <?php endif; ?>
           <?php endif; ?>
diff --git a/themes/de_105/templates/RecordDriver/SolrAI/result-list.phtml b/themes/de_105/templates/RecordDriver/SolrAI/result-list.phtml
index df854c67796ddc96f5d3d9ec3ce5adf95e882079..b229ee2c82fbbbc5732c511db6178e2b8e6cf948 100644
--- a/themes/de_105/templates/RecordDriver/SolrAI/result-list.phtml
+++ b/themes/de_105/templates/RecordDriver/SolrAI/result-list.phtml
@@ -49,7 +49,7 @@ if ($cover):
             foreach ($summAuthors as $i => $summAuthor): ?>
               <?php /* de_105: do not show more than 4 authors in resultlist #13763 - VE */ ?>
               <?php if ($i <= $maxAuthorCount): ?>
-                <a href="<?=$this->url('search-results')?>?lookfor=&quot;<?=trim($this->escapeHtml($summAuthor))?>&quot;&amp;type=Author" class="author"><?=$this->highlight($summAuthor)?></a><?=$i + 1 < $authorCount ? ',' : ''?>
+                <a href="<?=$this->record($this->driver)->getLink('author', $this->highlight($summAuthor, null, true, false))?>" class="author"><?=$this->highlight($summAuthor)?></a><?=$i + 1 < $authorCount ? ',' : ''?>
               <?php else: ?>
               ...<?php break; ?>
               <?php endif; ?>
diff --git a/themes/de_105/templates/RecordDriver/SolrMarc/data-additionalAuthors.phtml b/themes/de_105/templates/RecordDriver/SolrMarc/data-additionalAuthors.phtml
index 9b8089b8e25c5878609c16b2d9c79a225482698f..f795370941351b52d4d52cc8659b73078e679527 100644
--- a/themes/de_105/templates/RecordDriver/SolrMarc/data-additionalAuthors.phtml
+++ b/themes/de_105/templates/RecordDriver/SolrMarc/data-additionalAuthors.phtml
@@ -3,7 +3,7 @@
 <?php if (!empty($data)): ?>
     <?php $i = 0; foreach ($data as $subject => $values): ?>
       <?= ($i++ == 0) ? '' : ', '; ?>
-      <?php if (!empty($values['name'])): ?><a href="<?=$this->url('search-results')?>?lookfor=&quot;<?=trim($this->escapeHtml($values['name']))?>&quot;&amp;type=Author"><?=trim($this->escapeHtml($values['name']))?></a>
+      <?php if (!empty($values['name'])): ?><a href="<?=$this->url('search-results')?>?lookfor=%22<?=urlencode(trim($values['name']))?>%22&amp;type=Author"><?=trim($this->escapeHtml($values['name']))?></a>
         <?php if (!empty($values['relator'])): ?>(<?=$this->escapeHtml($values['relator'])?>)<?php endif; ?>
         <?php if (!empty($values['dates'])): ?> <?=$this->escapeHtml($values['dates'])?><?php endif; ?>
       <?php endif; ?>
diff --git a/themes/de_105/templates/RecordDriver/SolrMarc/data-subject.phtml b/themes/de_105/templates/RecordDriver/SolrMarc/data-subject.phtml
index 7ddf9c6e23b93e093fb1838920cbc69f8b3c32ed..c00f72218a9d3ce576a0d19598fd4bff4ee1c61d 100644
--- a/themes/de_105/templates/RecordDriver/SolrMarc/data-subject.phtml
+++ b/themes/de_105/templates/RecordDriver/SolrMarc/data-subject.phtml
@@ -4,8 +4,8 @@
         <?php if (!empty($field)): ?>
             <?php foreach ($field as $subfield): ?>
               <?php /* replace blanks with question marks for search-links #13158 - VE */ ?>
-              <?php $link = $subfield;//mb_strtolower(str_replace(" ","?", $subfield)); ?>
-              <a href="<?=$this->url('search-results')?>?lookfor=<?=trim($this->escapeHtml($link))?>&amp;type=udk_raw_de105"><?=trim($this->escapeHtml($subfield))?></a><br/>
+              <?php $link = $subfield; /* mb_strtolower(str_replace(" ","?", $subfield)); */?>
+              <a href="<?=$this->url('search-results')?>?lookfor=<?=urlencode(trim($link))?>&amp;type=udk_raw_de105"><?=trim($this->escapeHtml($subfield))?></a><br/>
             <?php endforeach; ?>
         <?php endif; ?>
     <?php endforeach; ?>
diff --git a/themes/de_105/templates/footer.phtml b/themes/de_105/templates/footer.phtml
index a0d417f15d7621b3e02e6b099576f43228f88112..0c5546b2fa8f7f8cbdb7c12468557b58209b6508 100644
--- a/themes/de_105/templates/footer.phtml
+++ b/themes/de_105/templates/footer.phtml
@@ -20,7 +20,7 @@
           // 30 days ago
           $newDate = date('Y-m-d\TH:i:s\Z', mktime(0, 0, 0, date('m'), date('d')-30, date('Y')));
           ?>
-        <li><a href="<?=$this->url('search-results')?>?type=AllFields&daterange[]=de105_date&de105_datefrom=<?=$newDate ?>&de105_dateto=<?=$currDate ?>&amp;sort=de105_date+desc&amp;limit=20"><?=$this->transEsc('New Items')?></a></li>
+        <li><a href="<?=$this->url('search-results')?>?type=AllFields&daterange%5b%5d=de105_date&de105_datefrom=<?=$newDate ?>&de105_dateto=<?=$currDate ?>&amp;sort=de105_date+desc&amp;limit=20"><?=$this->transEsc('New Items')?></a></li>
         <li><?=$this->externalLink('https://fernleihe.boss.bsz-bw.de/Bsz/saveIsil/DE-105', $this->transEsc('Interlibrary loan')) ?></li>
         <?php /* Custom finc - CK */ ?>
         <li><?=$this->externalLink('https://tu-freiberg.de/ub/service/anschaffungsvorschlag', $this->transEsc('Suggestions for acquisition')) ?></li>
diff --git a/themes/de_105/templates/header.phtml b/themes/de_105/templates/header.phtml
index 4778d3022f3e33b2f95d66fc4d6a5a7517edde17..00bc8202e09cd3978890e749563bfaaf0ee5b7e6 100644
--- a/themes/de_105/templates/header.phtml
+++ b/themes/de_105/templates/header.phtml
@@ -119,10 +119,10 @@
                     </form>
                     <?php foreach ($this->layout()->allLangs as $langCode => $langName): ?>
                           <?php if ($langCode !== $this->layout()->userLang) : ?>
-                          <a type="submit" class="btn btn-transparent" href="#" onClick="document.langForm.mylang.value='<?=$langCode?>';document.langForm.submit()" title="<?=$this->displayLanguageOption($langName)?>">
+                          <button type="submit" class="btn btn-transparent" data-href="#" onClick="document.langForm.mylang.value='<?=$langCode?>';document.langForm.submit()" title="<?=$this->displayLanguageOption($langName)?>">
                             <span class="visible-sm-only"><?=$langCode?></span>
                             <span class="hidden-sm"><?=$this->displayLanguageOption($langName)?></span>
-                          </a>
+                          </button>
                           <?php endif; ?>
                     <?php endforeach; ?>
                   </li>
diff --git a/themes/de_105/templates/layout/layout.phtml b/themes/de_105/templates/layout/layout.phtml
index cc3977f49257aaf5d217cb0b9b21fe6e0b7bb4f6..eb08f125c72a1841184bbe406901e9462631ad50 100644
--- a/themes/de_105/templates/layout/layout.phtml
+++ b/themes/de_105/templates/layout/layout.phtml
@@ -213,7 +213,7 @@ if (!isset($this->layout()->searchbox)) {
 
 <!-- MODAL IN CASE WE NEED ONE -->
 <?php /* move X button to logical pos. in structure + make accessible via tab - CK */ ?>
-<div id="modal" class="modal fade hidden-print" tabindex="-1" role="dialog" aria-modal="true" aria-labelledby="modal-title" aria-hidden="true" aria-describedby="modal-description">
+<div id="modal" class="modal fade hidden-print" tabindex="-1" role="dialog" aria-modal="true" aria-hidden="true" aria-describedby="modal-description">
   <div class="modal-dialog">
     <div class="modal-content">
       <button type="button" class="close" data-dismiss="modal" tabindex="0" aria-label="<?= $this->transEsc('CloseModal') ?>">
diff --git a/themes/de_105/templates/record/cart-buttons.phtml b/themes/de_105/templates/record/cart-buttons.phtml
index b0bf07f4a279712f7bd3874cff44928e9d1ddf0c..e3bbd83751232b69fbe4607309b0cca82a2faa77 100644
--- a/themes/de_105/templates/record/cart-buttons.phtml
+++ b/themes/de_105/templates/record/cart-buttons.phtml
@@ -5,7 +5,7 @@
 
 <?php /* refs 19059: Remove link label/text - GG */ ?>
     <?php $cartId = $this->source . '|' . $this->id; ?>
-    <span class="btn-bookbag-toggle" data-cart-id="<?=$this->escapeHtmlAttr($this->id)?>" data-cart-source="<?=$this->escapeHtmlAttr($this->source)?>">
+    <div class="btn-bookbag-toggle" data-cart-id="<?=$this->escapeHtmlAttr($this->id)?>" data-cart-source="<?=$this->escapeHtmlAttr($this->source)?>">
       <?php /* Make add-to/remove-from bookbag accessible for keyboard navigation - CK */ ?>
     <a <?php if($hideText ?? false) :?>data-toggle="tooltip"<?php endif; ?>  class="cart-add hidden<?php if (!$cart->contains($cartId)): ?> correct<?php endif ?>" href="javascript:" tabindex="0" role="button" aria-label="<?=$this->transEsc('Add to Book Bag')?>" <?php if($hideText ?? false) :?>title="<?=$this->transEsc('Add to Book Bag')?>"<?php endif; ?>>
       <i class="cart-link-icon fa fa-plus" aria-hidden="true"></i><span class="cart-link-label"> <?php if(!($hideText ?? false)) :?><?=$this->transEsc('Add to Book Bag') ?><?php endif ?></span>
@@ -13,16 +13,17 @@
     <a <?php if(!empty($hideText ?? false)) :?>data-toggle="tooltip"<?php endif; ?> class="cart-remove hidden<?php if ($cart->contains($cartId)): ?> correct<?php endif ?>" href="javascript:" tabindex="0" role="button" aria-label="<?=$this->transEsc('Remove from Book Bag')?>" <?php if($hideText ?? false) :?>title="<?=$this->transEsc('Remove from Book Bag')?>"<?php endif; ?>>
       <i class="cart-link-icon fa fa-minus-circle" aria-hidden="true"></i> <span class="cart-link-label"> <?php if(!($hideText ?? false)) :?><?=$this->transEsc('Remove from Book Bag') ?><?php endif ?></span>
     </a>
-    <noscript>
-      <form method="post" name="addForm" action="<?=$this->url('cart-processor')?>">
+    <form class="cartProcessorNoJs" method="post" name="addForm" action="<?=$this->url('cart-processor')?>">
+      <noscript>
         <input type="hidden" name="ids[]" value="<?=$this->escapeHtmlAttr($cartId)?>"/>
         <?php if ($cart->contains($cartId)): ?>
           <input class="btn btn-default" type="submit" name="delete" value="<?=$this->transEsc('Remove from Book Bag')?>"/>
         <?php else: ?>
           <input class="btn btn-default" type="submit" name="add" value="<?=$this->transEsc('Add to Book Bag')?>"/>
         <?php endif; ?>
-      </form>
-    </noscript>
-  </span>
+      </noscript>
+    </form>
+    <script>$(document).ready(function() { $(".cartProcessorNoJs").css('display', 'none'); });</script>
+  </div>
 <?php endif; ?>
 <!-- de_105: record - cart-buttons END -->