.dsm_card .et_pb_module_inner {
    width: 100%;
}

.et_pb_equal_columns .dsm_card {
    display: flex;
    height: 100%;
}

.et_pb_equal_columns .dsm_card_vb_outer_wrapper {
    height: 100%;
    display: flex;

}

.et_pb_equal_columns .dsm_card_wrapper {
    display: flex;
    height: calc(100% - 240px);
    flex-direction: column;
    justify-content: center;
}

.dsm_card_layout_inline,
.dsm_card_layout_inline .et_pb_module_inner {
    display: flex;
    align-items: center;
    width: 100%;
}

.dsm_card_layout_inline .dsm_card_image_wrapper {
    flex: 0 0 50%;
}

.dsm_card_wrapper {
    padding: 20px;
}

.dsm_card_icon {
    display: inline-block;
    margin-bottom: 30px;
    line-height: 0;
    max-width: 100%;
}

.dsm_card_icon_wrap {
    display: block;
    margin: auto;
    overflow: hidden;
}

.dsm_card_image_wrapper {
    margin: 0;
    padding: 0;
    position: relative;
    width: 100%;
    line-height: 0;
    border-style: solid;
    border-width: 0;
    justify-content: flex-start;
    display: flex;
}

.dsm_card_badge_text {
    position: absolute;
    padding: 7px 15px;
    max-width: 100%;
    border-radius: 50px;
    background-color: #fff;
    font-size: 12px;
    border-style: solid;
    border-width: 0;
    line-height: 1em;
    z-index: 3;
}

.dsm_badge_icon_wrap {
    padding-right: 5px;
    font-size: 12px;
}

.dsm_card_badge_top_right .dsm_card_badge_text {
    top: 1rem;
    right: 1rem;
}

.dsm_card_badge_top_left .dsm_card_badge_text {
    top: 1rem;
    left: 1rem;
}

.dsm_card_badge_top_center .dsm_card_badge_text {
    top: 1rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.dsm_card_badge_bottom_right .dsm_card_badge_text {
    bottom: 1rem;
    right: 1rem;
}

.dsm_card_badge_bottom_left .dsm_card_badge_text {
    bottom: 1rem;
    left: 1rem;
}

.dsm_card_badge_bottom_center .dsm_card_badge_text {
    bottom: 1rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.dsm_card_badge_center .dsm_card_badge_text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.dsm_card_badge_center_left {
    display: flex;
    justify-content: left;
    align-items: center;
}

.dsm_card_badge_center_left .dsm_card_badge_text {
    left: 1rem;
}

.dsm_card_badge_center_right {
    display: flex;
    justify-content: right;
    align-items: center;
}

.dsm_card_badge_center_right .dsm_card_badge_text {
    right: 1rem;
}

.dsm_card_image_background {
    position: absolute;
    width: 100%;
    height: 100%;
}

.dsm_card_img {
    display: block;
    align-self: center;
}

.dsm_card_image_stretch {
    width: 100%;
}

/*Overlay*/
.dsm_card .et_overlay {
    border-width: 0;
}

.dsm_card_image_wrapper .dsm-card-icon-empty.et_overlay:before {
    display: none;
}

.dsm-card-overlay-off .et_overlay {
    opacity: 1;
    z-index: 0;
}

.dsm-card-overlay-off:hover .et_overlay {
    opacity: 0;
}

.dsm_card_image_wrapper .et_overlay {
    display: flex;
}

.dsm_card_image_wrapper .et_overlay:before {
    /*
    top: 0;
    left: 0;*/
    margin: 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

/*Button Icon*/
.dsm_card .et_pb_button[data-icon]:not([data-icon=""]):after {
    content: attr(data-icon);
}

/*Animation*/

.dsm_card_image_animation .dsm_card_image_wrapper {
    overflow: hidden;
}

.dsm_card_image_animation_zoom_in:hover .dsm_card_image_background {
    transform: scale(1.5);
}

.dsm_card_image_animation_zoom_out .dsm_card_image_background {
    transform: scale(1.5);
}

.dsm_card_image_animation_zoom_out:hover .dsm_card_image_background {
    transform: scale(1);
}

.dsm_card_image_animation_zoom_in_n_rotate:hover .dsm_card_image_background {
    transform: scale(1.5) rotate(25deg);
}

.dsm_card_image_animation_zoom_out_n_rotate .dsm_card_image_background {
    transform: scale(1.5) rotate(25deg);
}

.dsm_card_image_animation_zoom_out_n_rotate:hover .dsm_card_image_background {
    transform: scale(1) rotate(0);
}

@media only screen and (max-width: 980px) {

    .dsm_card_tablet_layout_stacked .et_pb_module_inner,
    .dsm_card_layout_inline.dsm_card_tablet_layout_stacked .et_pb_module_inner {
        display: initial;
    }

    .dsm_card_tablet_layout_inline .et_pb_module_inner {
        display: flex;
    }

    .dsm_card_tablet_layout_inline .dsm_card_image_wrapper {
        order: 0;
        flex: 0 0 50%;
    }
}

@media only screen and (max-width: 767px) {

    .dsm_card_phone_layout_stacked .et_pb_module_inner,
    .dsm_card_layout_inline.dsm_card_phone_layout_stacked .et_pb_module_inner {
        display: initial;
    }

    .dsm_card_phone_layout_inline .et_pb_module_inner {
        display: flex;
    }

    .dsm_card_phone_layout_inline .dsm_card_image_wrapper {
        order: 0;
        flex: 0 0 50%;
    }
}
.dsm-typing-effect,
.dsm-before-typing-effect,
.dsm-after-typing-effect {
	display: inline-block;
}

.dsm-typing-wrapper,
.dsm-before-typing-effect,
.dsm-after-typing-effect {
	border-style: solid;
}

.dsm-typing-strings {
	display: none;
	visibility: hidden;
	height: 0;
	width: 0;
	text-indent: -9999px;
	white-space: nowrap;
}
.dsm_masonry_gallery,
.dsm_masonry_gallery .grid-item {
	border-style: solid;
	line-height: 0;
}

.dsm_masonry_gallery .grid-item a {
	display: inline-block;
	line-height: 0;
}

.dsm_masonry_gallery .grid-item img {
	display: block;
	max-width: 100%;
}

.dsm_masonry_gallery .et_pb_image_wrap {
	display: inline-block;
	position: relative;
	max-width: 100%;
	line-height: 0;
	overflow: hidden;
}

.dsm_masonry_gallery_svg img {
	width: 100%;
}

.dsm_masonry_gallery .dsm-overlay:before,
.et-db #et-boc .et-l .dsm_masonry_gallery .dsm-overlay:before {
	content: none;
}

.dsm_masonry_gallery .grid-item .dsm-overlay .dsm-overlay-inner {
	display: flex;
	width: 100%;
	height: 100%;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.dsm_masonry_gallery .grid-item .dsm-overlay,
.et-db #et-boc .et-l .dsm_masonry_gallery .grid-item .dsm-overlay {
	border: 0;
	transition: all .4s;
}

.dsm_masonry_gallery .grid-item a,
.dsm_masonry_gallery .grid-item .dsm-overlay .dsm-overlay-title,
.dsm_masonry_gallery .grid-item .dsm-overlay .dsm-overlay-caption,
.dsm_masonry_gallery .grid-item .dsm-overlay .dsm-overlay-desc {
	color: #ffffff;
}

.dsm_masonry_gallery .grid-item .dsm-overlay .dsm-overlay-desc,
.dsm_masonry_gallery .grid-item .dsm-overlay .dsm-overlay-caption {
	line-height: 1.7em;
	padding: 0;
}

.dsm_masonry_gallery .grid-item:hover .dsm-overlay,
.et-db #et-boc .et-l .dsm_masonry_gallery .grid-item:hover .dsm-overlay {
	opacity: 1;
	z-index: 1;
}

.dsm_masonry_zoom_hover .grid-item:hover img {
	transition: transform .4s ease-in-out;
	transform: scale(1.2);
}

.dsm_masonry_zoom_hover .grid-item img {
	transition: transform .4s ease-in-out;
}


.et_overlay {
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background: hsla(0, 0%, 100%, .9);
	opacity: 0;
	pointer-events: none;
	-webkit-transition: all .3s;
	transition: all .3s;
	border: 1px solid #e5e5e5;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-font-smoothing: antialiased
}

.et_overlay:before {
	color: #2ea3f2;
	content: "\E050";
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	font-size: 32px;
	-webkit-transition: all .4s;
	transition: all .4s
}