.ha-btn {
    display: inline-block;
    max-width: 100%;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
    font-size: 14px;
    line-height: 1;
    -webkit-transition: all .3s;
    transition: all .3s
}

.ha-btn:not(.ha-btn--link) {
    padding: 15px 25px;
    border-radius: 5px;
    background-color: #562dd4;
    color: #fff
}

.ha-btn:not(.ha-btn--link):focus,
.ha-btn:not(.ha-btn--link):hover {
    background-color: #e2498a
}

.ha-btn.ha-btn--link {
    color: #562dd4
}

.ha-btn.ha-btn--link:focus,
.ha-btn.ha-btn--link:hover {
    color: #e2498a
}

.ha-btn-icon+.ha-btn-text,
.ha-btn-text+.ha-btn-icon {
    margin-left: 5px
}

.ha-btn-icon--svg {
    display: inline-block
}

.ha-btn-icon--svg svg {
    width: auto;
    height: 1em;
    fill: currentColor
}

.ha-badge {
    padding: 10px 18px;
    border-radius: 50px;
    background-color: #fff;
    font-size: 12px;
    line-height: 1;
    -webkit-transform: translate(var(--ha-badge-translate-x), var(--ha-badge-translate-y));
    -ms-transform: translate(var(--ha-badge-translate-x), var(--ha-badge-translate-y));
    transform: translate(var(--ha-badge-translate-x), var(--ha-badge-translate-y));
    --ha-badge-translate-x: 0;
    --ha-badge-translate-y: 0
}

.ha-badge--top-left {
    top: 25px;
    left: 25px
}

.ha-badge--top-center {
    top: 25px;
    left: 50%;
    --ha-badge-translate-x: -50%
}

.ha-badge--top-right {
    top: 25px;
    right: 25px
}

.ha-badge--middle-center,
.ha-badge--middle-left {
    top: 50%;
    left: 25px;
    --ha-badge-translate-x: -50%
}

.ha-badge--middle-center {
    left: 50%;
    --ha-badge-translate-y: -50%
}

.ha-badge--middle-right {
    top: 50%;
    right: 25px;
    --ha-badge-translate-y: -50%
}

.ha-badge--bottom-left {
    bottom: 25px;
    left: 25px
}

.ha-badge--bottom-center {
    bottom: 25px;
    left: 50%;
    --ha-badge-translate-x: -50%
}

.ha-badge--bottom-right {
    right: 25px;
    bottom: 25px
}

.ha-card {
    --ha-card-body-width-left: calc(100% - var(--ha-card-image-width) + (-1 * var(--ha-card-image-offset-x)));
    --ha-card-body-width-right: calc(100% - var(--ha-card-image-width) + var(--ha-card-image-offset-x));
    --ha-card-image-offset-x: calc(1px - 1px);
    --ha-card-image-offset-y: calc(1px - 1px);
    --ha-card-image-width: 100%
}

.ha-card>.elementor-widget-container {
    border-radius: 5px;
    background-color: #fff;
    -webkit-box-shadow: 0 3px 40px rgba(36, 36, 36, .1);
    box-shadow: 0 3px 40px rgba(36, 36, 36, .1)
}

.ha-card-figure {
    position: relative;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 var(--ha-card-image-width);
    -ms-flex: 0 0 var(--ha-card-image-width);
    flex: 0 0 var(--ha-card-image-width);
    max-width: var(--ha-card-image-width);
    width: 100%;
    height: 250px;
    -webkit-transform: translate(var(--ha-card-image-offset-x), var(--ha-card-image-offset-y));
    -ms-transform: translate(var(--ha-card-image-offset-x), var(--ha-card-image-offset-y));
    transform: translate(var(--ha-card-image-offset-x), var(--ha-card-image-offset-y))
}

.ha-card-figure img {
    width: 100%;
    height: 100%;
    vertical-align: bottom;
    -o-object-fit: cover;
    object-fit: cover
}

.ha-card-figure .ha-badge {
    position: absolute
}

.ha-card-body {
    padding: 25px
}

.ha-card-body .ha-btn svg {
    width: auto;
    height: 1em;
    fill: currentColor
}

.ha-card-title {
    margin-top: 0;
    margin-bottom: 10px;
    color: #151515;
    font-weight: 700;
    font-size: 22px
}

.ha-card-text {
    margin-bottom: 25px;
    color: #616161;
    font-size: 16px;
    line-height: 1.7
}

.ha-card-text>p {
    margin-top: 0;
    margin-bottom: 0
}

.ha-card--top .ha-card-figure {
    display: inline-block
}

.ha-card--top .ha-card-figure img {
    border-radius: 5px 5px 0 0
}

.ha-card--top .ha-card-body {
    margin-top: var(--ha-card-image-offset-y);
    max-width: initial;
    width: 100%
}

.ha-card.ha-card--left,
.ha-card.ha-card--right {
    --ha-card-image-width: 50%
}

.ha-card--left>.elementor-widget-container,
.ha-card--right>.elementor-widget-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-align: center
}

.ha-card--left .ha-card-body,
.ha-card--right .ha-card-body {
    padding: 35px
}

.ha-card--left .ha-card-body {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 var(--ha-card-body-width-left);
    -ms-flex: 0 0 var(--ha-card-body-width-left);
    flex: 0 0 var(--ha-card-body-width-left);
    margin-left: var(--ha-card-image-offset-x);
    max-width: var(--ha-card-body-width-left)
}

.ha-card--left .ha-card-figure img {
    border-radius: 5px 0 0 5px
}

.ha-card--right .ha-card-body {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 var(--ha-card-body-width-right);
    -ms-flex: 0 0 var(--ha-card-body-width-right);
    flex: 0 0 var(--ha-card-body-width-right);
    margin-right: calc(-1*var(--ha-card-image-offset-x));
    max-width: var(--ha-card-body-width-right)
}

.ha-card--right .ha-card-figure img {
    border-radius: 0 5px 5px 0
}

@media (max-width:1024px) {
    .ha-card--tablet-top .ha-card-figure {
        display: inline-block
    }

    .ha-card--tablet-top .ha-card-figure img {
        border-radius: 5px 5px 0 0
    }

    .ha-card--tablet-top .ha-card-body {
        margin-top: var(--ha-card-image-offset-y);
        padding: 25px;
        max-width: initial;
        width: 100%
    }

    .ha-card--tablet-left>.elementor-widget-container,
    .ha-card--tablet-right>.elementor-widget-container {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        -ms-flex-align: center
    }

    .ha-card--tablet-left .ha-card-body {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 var(--ha-card-body-width-left);
        -ms-flex: 0 0 var(--ha-card-body-width-left);
        flex: 0 0 var(--ha-card-body-width-left);
        margin-left: var(--ha-card-image-offset-x);
        max-width: var(--ha-card-body-width-left)
    }

    .ha-card--tablet-left .ha-card-figure img {
        border-radius: 5px 0 0 5px
    }

    .ha-card--tablet-right .ha-card-body {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 var(--ha-card-body-width-right);
        -ms-flex: 0 0 var(--ha-card-body-width-right);
        flex: 0 0 var(--ha-card-body-width-right);
        margin-right: calc(-1*var(--ha-card-image-offset-x));
        max-width: var(--ha-card-body-width-right)
    }

    .ha-card--tablet-right .ha-card-figure img {
        border-radius: 0 5px 5px 0
    }
}

@media (max-width:767px) {
    .ha-card--mobile-top .ha-card-figure {
        display: inline-block
    }

    .ha-card--mobile-top .ha-card-figure img {
        border-radius: 5px 5px 0 0
    }

    .ha-card--mobile-top .ha-card-body {
        margin-top: var(--ha-card-image-offset-y);
        padding: 25px;
        max-width: initial;
        width: 100%
    }

    .ha-card--mobile-left>.elementor-widget-container,
    .ha-card--mobile-right>.elementor-widget-container {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        -ms-flex-align: center
    }

    .ha-card--mobile-left .ha-card-body {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 var(--ha-card-body-width-left);
        -ms-flex: 0 0 var(--ha-card-body-width-left);
        flex: 0 0 var(--ha-card-body-width-left);
        margin-left: var(--ha-card-image-offset-x);
        max-width: var(--ha-card-body-width-left)
    }

    .ha-card--mobile-left .ha-card-figure img {
        border-radius: 5px 0 0 5px
    }

    .ha-card--mobile-right .ha-card-body {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 var(--ha-card-body-width-right);
        -ms-flex: 0 0 var(--ha-card-body-width-right);
        flex: 0 0 var(--ha-card-body-width-right);
        margin-right: calc(-1*var(--ha-card-image-offset-x));
        max-width: var(--ha-card-body-width-right)
    }

    .ha-card--mobile-right .ha-card-figure img {
        border-radius: 0 5px 5px 0
    }
}

/** Widgets: card **/