.card {
    position: relative;
    background: #fff;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
    margin-bottom: 30px;
}

.card-header {
    position: relative;

    &:not(.ch-alt) {
        @media screen and (min-width: $screen-sm-min) {
            padding: 23px 25px;
        }

        @media screen and (max-width: $screen-sm-max) {
            padding: 18px;
        }
    }

    h2 {
        margin: 0;
        line-height: 100%;
        font-size: 17px;
        font-weight: 400;

        small {
            display: block;
            margin-top: 5px;
            color: #AEAEAE;
            line-height: 160%;
        }
    }

    &.ch-alt {
        @media screen and (min-width: $screen-sm-min) {
            padding: 20px 23px;
        }

        @media screen and (max-width: $screen-sm-max) {
            padding: 18px 18px 28px;
        }

        &:not([class*="bgm-"]) {
            background-color: #f7f7f7;
        }
    }

    &[class*="bgm-"] {
        h2, h2 small {
            color: #fff;
        }
    }

    .actions {
        position: absolute;
        right: 10px;
        z-index: 2;
        top: 15px;
    }

    .btn-float {
        right: 25px;
        bottom: -23px;
        z-index: 1;
    }
}

.card-body {
    &.card-padding {
        @media screen and (min-width: $screen-sm-min) {
            padding: 23px 25px;
        }

        @media screen and (max-width: $screen-sm-max) {
            padding: 18px;
        }
    }

    &.card-padding-sm {
        padding: 15px;
    }

}

.card-header:not(.ch-alt):not([class*="bgm-"]) + .card-padding {
    padding-top: 0;
}
