@mixin text-link($color: var(--color-primary), $hover-opacity: 0.70) { .icon { &:first-child { padding-right: 5px; } &:last-child:not(:only-child) { padding-left: 5px; } } &:not(.underline) { text-decoration: none; .icon { text-decoration: none; } } &:hover { opacity: $hover-opacity; transition: opacity var(--transition-duration) var(--transition-type); text-decoration: underline; .icon { text-decoration: none; } } color: $color; cursor: pointer; }