// Button: Outline
.button-outline {
    overflow: hidden;
    position: relative;
    display: inline-flex;
    align-items: center;
    height: 32px;
    padding: 1px 16px 0;
    background: none;
    font-family: $font-sans-sb;
    font-size: rem(14px);
    color: #fff;
    border: 2px solid #fff;
    border-radius: 50vh;
    text-decoration: none;
    cursor: pointer;
    outline: none;
    transition: all 275ms $ease-cubic;
    will-change: border, color;

    @include breakpoint (sm) {
        height: 40px;
        font-size: rem(18px);
    }


    // Second text
    .text {
        span {
            display: block;
        }

        &:after {
            opacity: 0;
            content: attr(data-text);
            position: absolute;
            display: block;
            text-align: center;
            top: 50%;
            left: 0;
            right: 0;
            transform: translateY(-120%);
        }

        span, &:after {
            transition: transform 275ms $ease-cubic, opacity 275ms $ease-cubic;
            will-change: transform, opacity;
        }
    }

    // Disabled
    &.disabled {
        color: $color-lightpurple;
        border-color: $color-lightpurple;
    }

    // Hover
    &:hover {
        color: $color-tertiary;
        border-color: $color-tertiary;

        span {
            opacity: 0;
            transform: translateY(100%);
        }
        .text:after {
            opacity: 1;
            transform: translateY(-50%);
        }
    }
}
