.elementor-widget-zrs-box {
    align-self: center;
}


.elementor-widget-zrs-box-lite .zr_box { flex-direction: column; align-items: center; }
.elementor-widget-zrs-box-lite .zr_box_media {
    align-self: var(--zr-lite-media-alignment, var(--zr-lite-default-media-alignment, center));
}
.elementor-widget-zrs-box-lite .zr_box_content {
    justify-content: var(--zr-lite-content-justify, flex-start);
}

.zr_box {
    position: relative;
    isolation: isolate;
    display: flex;
    width: 100%;
    height: var(--zr-box-height, auto);
    box-sizing: border-box;
    align-items: center;
    --zr-box-media-vertical-multiplier: 1;
    --zr-box-media-horizontal-multiplier: 0;
    column-gap: calc(var(--zr-box-media-gap, 12px) * var(--zr-box-media-horizontal-multiplier));
}

.zr_box::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    opacity: var(--zr-box-background-opacity, 100%);
    pointer-events: none;
}

.zr_box_overlay_link {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block;
    border-radius: inherit;
}

.zr_box_has_overlay_link .zr_box_media,
.zr_box_has_overlay_link .zr_box_media * {
    pointer-events: none;
}

.zr_box_media {
    position: relative;
    
    margin-bottom: calc(var(--zr-box-media-gap, 12px) * var(--zr-box-media-vertical-multiplier));
    background-image: none !important;
    background-color: transparent !important;
    flex: 0 0 auto;
    box-sizing: border-box;
}

.zr_box_media::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    background-color: var(--zr-box-media-bg-color, transparent);
    opacity: var(--zr-box-media-bg-opacity, 100%);
    pointer-events: none;
}

.zr_box_media_image {
    box-sizing: content-box;
    width: 70px;
    overflow: hidden;
}

.zr_box_media_icon {
    display: inline-flex;
    width: auto;
    height: auto;
    overflow: visible;
}

.zr_box_media_inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.zr_box_media_image .zr_box_media_inner {
    width: 100%;
    height: 100%;
}

.zr_box_media_icon .zr_box_media_inner {
    width: auto;
    height: auto;
}

.zr_box_media img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: contain;
}

.zr_box_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: currentColor;
    font-size: 70px;
    line-height: 1;
}

.zr_box_icon svg {
    display: block;
    width: 1em;
    height: 1em;
    fill: currentColor;
    color: currentColor;
}

.zr_box_content {
    position: relative;
    box-sizing: border-box;
    min-width: 0;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    align-self: stretch;
    justify-content: flex-start;
    text-align: center;
}

.zr_box_title,
.zr_box_subtitle,
.zr_box_description {
    position: relative;
    max-width: 100%;
    margin-top: 0;
}

.zr_box_title,
.zr_box_description {
    width: 100%;
}

.zr_box_content > .zr_box_title,
.zr_box_content > .zr_box_description,
.zr_box_content > .zr_box_subtitle {
    margin-bottom: 0;
}

.zr_box_content > .zr_box_subtitle {
    margin-top: var(--zr-box-subtitle-top-gap, 8px);
}

.zr_box_content > .zr_box_description {
    margin-top: var(--zr-box-description-top-gap, 8px);
}

.zr_box_content > .zr_box_subtitle:first-child,
.zr_box_content > .zr_box_description:first-child {
    margin-top: 0;
}

.elementor-widget-zrs-box .zr_box_title,
.elementor-widget-zrs-box-lite .zr_box_title {
    padding: 0;
    font-size: 20px;
    font-weight: 600;
}

.zr_box_subtitle {
    width: var(--zr-box-subtitle-width, fit-content);
    font-size: 18px;
    box-sizing: border-box;
}

.zr_box > .zr_box_subtitle_badge {
    position: absolute;
    z-index: 3;
    top: var(--zr-subtitle-badge-top, 15px);
    right: var(--zr-subtitle-badge-right, 15px);
    width: var(--zr-box-subtitle-width, max-content);
    max-width: 100%;
    margin: 0 !important;
    display: block;
    pointer-events: none;
}

.zr_box_badge_left > .zr_box_subtitle_badge {
    left: var(--zr-subtitle-badge-left, 15px);
    right: auto;
}

.zr_box_badge_center > .zr_box_subtitle_badge {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
}


.elementor-widget-zrs-box .zr_box_description,
.elementor-widget-zrs-box-lite .zr_box_description {
    font-family: var(--e-global-typography-text-font-family, inherit);
    font-size: var(--e-global-typography-text-font-size, inherit);
    font-weight: var(--e-global-typography-text-font-weight, inherit);
    line-height: var(--e-global-typography-text-line-height, inherit);
    letter-spacing: var(--e-global-typography-text-letter-spacing, inherit);
}



.zr_box_button_wrap {
    position: relative;
    z-index: 2;
}

.zr_box_content > .zr_box_button_wrap:not(:first-child) {
    padding-top: var(--zr-box-button-top-gap, 8px);
}

.zr_box_button_wrap.zr_box_button_bottom {
    margin-top: auto;
}

.zr_box_button_wrap.zr_box_button_normal {
    margin-top: 0;
}

.zr_box_button {
    position: relative;
    z-index: 2;
    pointer-events: auto;
}

.zr_box_button_has_icon .elementor-button-content-wrapper {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.zr_box_button_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    font-size: inherit;
    line-height: 1;
}

.zr_box_button_icon i,
.zr_box_button_icon svg {
    display: block;
    width: 1em;
    height: 1em;
    fill: currentColor;
}

.zr_box a:not(.zr_box_overlay_link),
.zr_box button,
.zr_box input,
.zr_box select,
.zr_box textarea {
    position: relative;
    z-index: 2;
}
