/* End custom CSS */

.elementor-780 .elementor-element.elementor-element-77a45fd {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--justify-content: space-between;
	--align-items: center;
	--gap: 10px 10px;
	--row-gap: 10px;
	--column-gap: 10px;
	--padding-top: 120px;
	--padding-bottom: 120px;
	--padding-left: 20px;
	--padding-right: 20px;
}

.elementor-780 .elementor-element.elementor-element-77a45fd:not(.elementor-motion-effects-element-type-background), .elementor-780 .elementor-element.elementor-element-77a45fd > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: var(--e-global-color-secondary);
}

.elementor-widget-image .widget-image-caption {
	color: var(--e-global-color-text);
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-size: var(--e-global-typography-text-font-size);
	font-weight: var(--e-global-typography-text-font-weight);
	text-transform: var(--e-global-typography-text-text-transform);
	font-style: var(--e-global-typography-text-font-style);
	text-decoration: var(--e-global-typography-text-text-decoration);
	line-height: var(--e-global-typography-text-line-height);
}

.elementor-widget-heading .elementor-heading-title {
	font-family: var(--e-global-typography-primary-font-family), Sans-serif;
	font-size: var(--e-global-typography-primary-font-size);
	font-weight: var(--e-global-typography-primary-font-weight);
	text-transform: var(--e-global-typography-primary-text-transform);
	font-style: var(--e-global-typography-primary-font-style);
	text-decoration: var(--e-global-typography-primary-text-decoration);
	line-height: var(--e-global-typography-primary-line-height);
	color: var(--e-global-color-primary);
}

.elementor-780 .elementor-element.elementor-element-eb27003 .elementor-heading-title {
	color: var(--e-global-color-accent);
}

.elementor-widget-text-editor {
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-size: var(--e-global-typography-text-font-size);
	font-weight: var(--e-global-typography-text-font-weight);
	text-transform: var(--e-global-typography-text-text-transform);
	font-style: var(--e-global-typography-text-font-style);
	text-decoration: var(--e-global-typography-text-text-decoration);
	line-height: var(--e-global-typography-text-line-height);
	color: var(--e-global-color-text);
}

.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap {
	background-color: var(--e-global-color-primary);
}

.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap {
	color: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
}

.elementor-780 .elementor-element.elementor-element-46f63aa {
	--display: flex;
	--align-items: center;
	--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
	--gap: 30px 30px;
	--row-gap: 30px;
	--column-gap: 30px;
	--margin-top: 40px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-a97fb1a {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
	--align-items: center;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-7b3e833 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-7b3e833.e-con {
	--flex-grow: 0;
	--flex-shrink: 0;
}

.elementor-780 .elementor-element.elementor-element-d9b8728 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-d9b8728.e-con {
	--flex-grow: 0;
	--flex-shrink: 0;
}

.elementor-780 .elementor-element.elementor-element-fae9d44 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-fae9d44.e-con {
	--flex-grow: 0;
	--flex-shrink: 0;
}

.elementor-780 .elementor-element.elementor-element-8e05c76 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-8e05c76.e-con {
	--flex-grow: 0;
	--flex-shrink: 0;
}

.elementor-780 .elementor-element.elementor-element-ad22436 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
	--align-items: center;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-b4d751d {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-b4d751d.e-con {
	--flex-grow: 0;
	--flex-shrink: 0;
}

.elementor-780 .elementor-element.elementor-element-c3cb073 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-c3cb073.e-con {
	--flex-grow: 0;
	--flex-shrink: 0;
}

.elementor-780 .elementor-element.elementor-element-99f963a {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-99f963a.e-con {
	--flex-grow: 0;
	--flex-shrink: 0;
}

.elementor-780 .elementor-element.elementor-element-43e57d4 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-780 .elementor-element.elementor-element-43e57d4.e-con {
	--flex-grow: 0;
	--flex-shrink: 0;
}

.elementor-widget-button .elementor-button {
	background-color: var(--e-global-color-accent);
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-size: var(--e-global-typography-accent-font-size);
	font-weight: var(--e-global-typography-accent-font-weight);
	text-transform: var(--e-global-typography-accent-text-transform);
	font-style: var(--e-global-typography-accent-font-style);
	text-decoration: var(--e-global-typography-accent-text-decoration);
	line-height: var(--e-global-typography-accent-line-height);
	letter-spacing: var(--e-global-typography-accent-letter-spacing);
}

.elementor-780 .elementor-element.elementor-element-fd54b9d .elementor-button {
	background-color: var(--e-global-color-primary);
	font-family: var(--e-global-typography-7364239-font-family), Sans-serif;
	font-size: var(--e-global-typography-7364239-font-size);
	font-weight: var(--e-global-typography-7364239-font-weight);
	text-transform: var(--e-global-typography-7364239-text-transform);
	font-style: var(--e-global-typography-7364239-font-style);
	text-decoration: var(--e-global-typography-7364239-text-decoration);
	line-height: var(--e-global-typography-7364239-line-height);
	fill: var(--e-global-color-2f37759);
	color: var(--e-global-color-2f37759);
	border-radius: 0px 0px 0px 0px;
	padding: 10px 25px 10px 25px;
}

.elementor-780 .elementor-element.elementor-element-fd54b9d .elementor-button:hover, .elementor-780 .elementor-element.elementor-element-fd54b9d .elementor-button:focus {
	background-color: var(--e-global-color-accent);
	color: var(--e-global-color-2f37759);
}

.elementor-780 .elementor-element.elementor-element-fd54b9d > .elementor-widget-container {
	margin: 75px 0px 0px 0px;
}

.elementor-780 .elementor-element.elementor-element-fd54b9d .elementor-button:hover svg, .elementor-780 .elementor-element.elementor-element-fd54b9d .elementor-button:focus svg {
	fill: var(--e-global-color-2f37759);
}

@media (min-width:768px) {
	.elementor-780 .elementor-element.elementor-element-46f63aa {
		--width: 100%;
	}
}

@media (max-width:1024px) {
	.elementor-780 .elementor-element.elementor-element-77a45fd {
		--padding-top: 40px;
		--padding-bottom: 40px;
		--padding-left: 20px;
		--padding-right: 20px;
	}
	
	.elementor-widget-image .widget-image-caption {
		font-size: var(--e-global-typography-text-font-size);
		line-height: var(--e-global-typography-text-line-height);
	}
	
	.elementor-widget-heading .elementor-heading-title {
		font-size: var(--e-global-typography-primary-font-size);
		line-height: var(--e-global-typography-primary-line-height);
	}
	
	.elementor-widget-text-editor {
		font-size: var(--e-global-typography-text-font-size);
		line-height: var(--e-global-typography-text-line-height);
	}
	
	.elementor-780 .elementor-element.elementor-element-a97fb1a {
		--flex-wrap: wrap;
	}
	
	.elementor-780 .elementor-element.elementor-element-ad22436 {
		--flex-wrap: wrap;
	}
	
	.elementor-widget-button .elementor-button {
		font-size: var(--e-global-typography-accent-font-size);
		line-height: var(--e-global-typography-accent-line-height);
		letter-spacing: var(--e-global-typography-accent-letter-spacing);
	}
	
	.elementor-780 .elementor-element.elementor-element-fd54b9d .elementor-button {
		font-size: var(--e-global-typography-7364239-font-size);
		line-height: var(--e-global-typography-7364239-line-height);
	}
}

@media (max-width:767px) {
	.elementor-widget-image .widget-image-caption {
		font-size: var(--e-global-typography-text-font-size);
		line-height: var(--e-global-typography-text-line-height);
	}
	
	.elementor-widget-heading .elementor-heading-title {
		font-size: var(--e-global-typography-primary-font-size);
		line-height: var(--e-global-typography-primary-line-height);
	}
	
	.elementor-widget-text-editor {
		font-size: var(--e-global-typography-text-font-size);
		line-height: var(--e-global-typography-text-line-height);
	}
	
	.elementor-widget-button .elementor-button {
		font-size: var(--e-global-typography-accent-font-size);
		line-height: var(--e-global-typography-accent-line-height);
		letter-spacing: var(--e-global-typography-accent-letter-spacing);
	}
	
	.elementor-780 .elementor-element.elementor-element-fd54b9d > .elementor-widget-container {
		margin: 25px 0px 10px 0px;
	}
	
	.elementor-780 .elementor-element.elementor-element-fd54b9d .elementor-button {
		font-size: var(--e-global-typography-7364239-font-size);
		line-height: var(--e-global-typography-7364239-line-height);
	}
}

/* Start custom CSS for container, class: .elementor-element-46f63aa */
.image-hover {
	position: relative;
	display: inline-block;
	width: fit-content;
	height: auto;
}

/* Make sure all image containers take up space */
.image-hover .elementor-widget-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	transition: opacity .4s ease;
}

/* Ensure default image is shown by default */
.image-hover .default-img {
	opacity: 1;
	z-index: 1;
	position: relative;
}

/* Hide hover image initially */
.image-hover .hover-img {
	opacity: 0;
	z-index: 2;
	pointer-events: none;
}

/* On hover, swap visibility */
.image-hover:hover .hover-img {
	opacity: 1;
}

.image-hover:hover .default-img {
	opacity: 0;
}
