diff --git a/res/css/_animations.sass b/res/css/_animations.sass
new file mode 100644
index 0000000000000000000000000000000000000000..03ba8b9e8b79932236b57506d52be6c47f04f66c
--- /dev/null
+++ b/res/css/_animations.sass
@@ -0,0 +1,8 @@
+@keyframes slidein
+  from
+    margin-top: 1rem
+    opacity: 0
+
+  to
+    margin-top: 0
+    opacity: 1
\ No newline at end of file
diff --git a/res/css/_content.sass b/res/css/_content.sass
index 0a412817ab1fe64580102efe37580e3f3bfb5528..ee95b8faf394842326d7087275b3e0e1ef14d6eb 100644
--- a/res/css/_content.sass
+++ b/res/css/_content.sass
@@ -19,6 +19,8 @@
     margin-top: 0
     margin-bottom: 20px
     position: relative
+    animation-duration: 0.6s
+    animation-name: slidein
 
     &.focus:not(.hasmore)
       > .container
@@ -194,6 +196,8 @@
       .context
         display: block
         position: relative
+        animation-duration: 1s
+        animation-name: slidein
 
         &.focus
           padding: 0
diff --git a/res/css/search.css b/res/css/search.css
index 349f3eca9f563ca3fa8a87e0760709ec6eeeb14e..e8c2a7a20fb56693f9ec6b14c897e3949d48bf0d 100644
--- a/res/css/search.css
+++ b/res/css/search.css
@@ -913,7 +913,9 @@ body {
     display: block;
     margin-top: 0;
     margin-bottom: 20px;
-    position: relative; }
+    position: relative;
+    animation-duration: 0.6s;
+    animation-name: slidein; }
     .results .buffer.focus:not(.hasmore) > .container > .inline-button {
       display: none; }
     .results .buffer .title {
@@ -1071,7 +1073,9 @@ body {
         background-image: url(../icons/chevron-down.svg); }
       .results .buffer .container .context {
         display: block;
-        position: relative; }
+        position: relative;
+        animation-duration: 1s;
+        animation-name: slidein; }
         .results .buffer .container .context.focus {
           padding: 0;
           margin: 0.5rem -0.5rem; }
@@ -1205,3 +1209,11 @@ body {
             content: '['; }
           .results .buffer .container .context .message.notice .sender:after {
             content: ']'; }
+
+@keyframes slidein {
+  from {
+    margin-top: 1rem;
+    opacity: 0; }
+  to {
+    margin-top: 0;
+    opacity: 1; } }
diff --git a/res/css/search.sass b/res/css/search.sass
index 7b3289be1ae4444278a76c122a5d28d0e6062b99..f5db1ffe420543054694fc86d86138dccbec0571 100644
--- a/res/css/search.sass
+++ b/res/css/search.sass
@@ -26,4 +26,5 @@ body
 
 @import "nav"
 @import "searchoptions"
-@import "content"
\ No newline at end of file
+@import "content"
+@import "animations"
\ No newline at end of file