.button { display: inline-flex; @if ( get-font-family(heading) != get-font-family(base) ) { @include font-family(heading); } @include font-size(8, mobile, true, false, true); @if ( get-font-size(8, desktop) != get-font-size(8, mobile) ) { @include media( '>medium' ) { @include font-size(8, desktop, true, false, true); } } @include font-weight(semibold); line-height: 16px; text-decoration: none !important; text-transform: uppercase; background-color: color(bg, 3); color: color(primary, 1) !important; border: none; border-radius: 2px; cursor: pointer; justify-content: center; padding: 16px 32px; height: 48px; text-align: center; white-space: nowrap; &:hover { background: lighten(color(bg, 3), 1%); } &:active { outline: 0; } &::before { border-radius: 2px; } } .button-shadow { position: relative; &::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; box-shadow: 0 8px 24px rgba(color(bg, 1), .25); mix-blend-mode: multiply; transition: box-shadow .15s ease; } &:hover { &::before { box-shadow: 0 8px 24px rgba(color(bg, 1), .35); } } } .button-sm { padding: 8px 24px; height: 32px; &.button-shadow { &::before { box-shadow: 0 4px 16px rgba(color(bg, 1), .25); } &:hover { &::before { box-shadow: 0 4px 16px rgba(color(bg, 1), .35); } } } } .button-primary { color: color(typography, 1i) !important; background-color: color(primary, 1); &:hover { background: lighten(color(primary, 1), 1%); } &.button-shadow { &::before { box-shadow: 0 8px 16px rgba(color(primary, 1), .25); mix-blend-mode: normal; } &:hover { &::before { box-shadow: 0 8px 16px rgba(color(primary, 1), .35); } } } .button-sm { &.button-shadow { &::before { box-shadow: 0 4px 16px rgba(color(primary, 1), .25); } &:hover { &::before { box-shadow: 0 4px 16px rgba(color(primary, 1), .35); } } } } } .button-block { display: flex; }