.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-infobox {
    --ha-infobox-media-offset-x: 0;
    --ha-infobox-media-offset-y: 0;
    --ha-infobox-media-rotate: 0
}

.ha-infobox>.elementor-widget-container {
    padding: 25px;
    border-radius: 5px;
    background-color: #fff;
    box-shadow: 0 3px 40px rgba(36, 36, 36, .1)
}

.ha-infobox.ha-infobox-media-dir-left .elementor-widget-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.ha-infobox.ha-infobox-media-dir-left .elementor-widget-container .ha-infobox-figure {
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start;
    margin: 0 25px 0 0 !important
}

.ha-infobox-title {
    margin-top: 0;
    margin-bottom: 10px;
    color: #151515;
    font-size: 24px
}

.ha-infobox-figure {
    display: inline-block;
    margin: 0 130px 25px !important;
    -webkit-transform: translate(var(--ha-infobox-media-offset-x), var(--ha-infobox-media-offset-y));
    -ms-transform: translate(var(--ha-infobox-media-offset-x), var(--ha-infobox-media-offset-y));
    transform: translate(var(--ha-infobox-media-offset-x), var(--ha-infobox-media-offset-y))
}

.ha-infobox-figure--icon {
    text-align: center;
    font-size: 48px;
    line-height: 1;
    -webkit-transform: translate(var(--ha-infobox-media-offset-x), var(--ha-infobox-media-offset-y)) rotate(var(--ha-infobox-media-rotate));
    -ms-transform: translate(var(--ha-infobox-media-offset-x), var(--ha-infobox-media-offset-y)) rotate(var(--ha-infobox-media-rotate));
    transform: translate(var(--ha-infobox-media-offset-x), var(--ha-infobox-media-offset-y)) rotate(var(--ha-infobox-media-rotate))
}

.ha-infobox-figure i,
.ha-infobox-figure svg {
    position: relative;
    display: block;
    width: 1em;
    height: 1em;
    -webkit-transform: rotate(calc(-1*var(--ha-infobox-media-rotate)));
    -ms-transform: rotate(calc(-1*var(--ha-infobox-media-rotate)));
    transform: rotate(calc(-1*var(--ha-infobox-media-rotate)));
    fill: currentColor
}

.ha-infobox-figure i:before {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.ha-infobox-figure img {
    width: 100%;
    height: 100%;
    vertical-align: bottom;
    object-fit: cover
}

.ha-infobox.ha-infobox-media-dir-top .ha-infobox-body {
    margin-top: var(--ha-infobox-media-offset-y)
}

.ha-infobox-text p {
    margin-top: 0;
    margin-bottom: 0
}

.ha-infobox-text+.ha-btn--link {
    margin-top: 25px
}

.ha-infobox .ha-btn--icon-after .ha-btn-icon,
.ha-infobox .ha-btn--icon-before .ha-btn-icon {
    -webkit-transition: inherit;
    transition: inherit;
    -webkit-transform: translateX(var(--infobox-btn-icon-translate-x, 0));
    -ms-transform: translateX(var(--infobox-btn-icon-translate-x, 0));
    transform: translateX(var(--infobox-btn-icon-translate-x, 0))
}

.ha-infobox .ha-btn--icon-after:focus .ha-btn-icon,
.ha-infobox .ha-btn--icon-after:hover .ha-btn-icon,
.ha-infobox .ha-btn--icon-before:focus .ha-btn-icon,
.ha-infobox .ha-btn--icon-before:hover .ha-btn-icon {
    -webkit-transform: translateX(var(--infobox-btn-icon-translate-x-hover, 10px));
    -ms-transform: translateX(var(--infobox-btn-icon-translate-x-hover, 10px));
    transform: translateX(var(--infobox-btn-icon-translate-x-hover, 10px))
}

.ha-testimonial--basic>.elementor-widget-container {
    padding: 25px;
    border: 1px solid #ececec;
    border-radius: 5px
}

.ha-testimonial--basic .ha-testimonial__content {
    margin-bottom: 25px
}

.ha-testimonial--bubble .ha-testimonial__content {
    position: relative;
    margin-bottom: 25px;
    padding: 25px;
    border-radius: 6px;
    background-color: #fff;
    box-shadow: 0 .2rem 2.8rem rgba(36, 36, 36, .1);
    line-height: 1.6
}

.ha-testimonial--bubble .ha-testimonial__content:after {
    position: absolute;
    bottom: -14px;
    color: #fff;
    content: "\e911";
    font-style: normal;
    font-size: 36px;
    font-family: happy icons;
    -webkit-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg)
}

.ha-testimonial--left.ha-testimonial--bubble .ha-testimonial__content:after {
    left: 15px
}

.ha-testimonial--center.ha-testimonial--bubble .ha-testimonial__content:after {
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(-180deg);
    -ms-transform: translateX(-50%) rotate(-180deg);
    transform: translateX(-50%) rotate(-180deg)
}

.ha-testimonial--right.ha-testimonial--bubble .ha-testimonial__content:after {
    right: 15px
}

.ha-testimonial__reviewer {
    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;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.ha-testimonial__reviewer-thumb {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 65px;
    -ms-flex: 0 0 65px;
    flex: 0 0 65px;
    max-width: 65px;
    height: 65px
}

.ha-testimonial__reviewer-thumb img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover
}

.ha-testimonial__reviewer-name {
    margin-bottom: 10px;
    color: #562dd4;
    font-weight: 700;
    font-size: 18px
}

.ha-testimonial__reviewer-title {
    color: #8c8c8c;
    font-size: 16px
}

.ha-testimonial--left .ha-testimonial__reviewer-meta {
    padding-left: 25px
}

.ha-testimonial--center .ha-testimonial__reviewer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
}

.ha-testimonial--center .ha-testimonial__reviewer-meta {
    padding-top: 15px;
    max-width: 100%
}

.ha-testimonial--left .ha-testimonial__reviewer-meta,
.ha-testimonial--right .ha-testimonial__reviewer-meta {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 calc(100% - 65px);
    -ms-flex: 0 0 calc(100% - 65px);
    flex: 0 0 calc(100% - 65px);
    max-width: calc(100% - 65px)
}

.ha-testimonial--right .ha-testimonial__reviewer {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.ha-testimonial--right .ha-testimonial__reviewer-meta {
    padding-right: 25px
}