diff --git a/src/gtk-3.20/scss/widgets/_button.scss b/src/gtk-3.20/scss/widgets/_button.scss
index 429b3c2..c4b3465 100644
--- a/src/gtk-3.20/scss/widgets/_button.scss
+++ b/src/gtk-3.20/scss/widgets/_button.scss
@@ -291,9 +291,15 @@
 
     &, &.flat {
         &:focus, &:hover {
-            @include linear-gradient(shade($button_bg, 1.2));
+            @if (lightness($button_bg) > 50) {
+                @include linear-gradient(shade($button_bg, .95));
+            } @else {
+                @include linear-gradient(shade($button_bg, 1.2));
+            }
+
             @include border(rgba(0, 0, 0, .2 + $border_strength));
 
+            -gtk-icon-effect: highlight;
             box-shadow: 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength);
         }