/*
	Theme Name: Exchange Communications
	Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
	Description: Child theme for Exchange Communications based on the Hello Elementor theme.
	Author: tigerbond
	Template: hello-elementor
	Version: 1.0.0
*/

body { max-width: 100%; overflow-x: hidden; }

p {
	padding: 0 0 20px;
	margin: 0;
}

ul {
	padding-bottom: 20px;
	margin-block-end: .9rem;
}

.ratio-1x1 img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
	max-width: 100%;
}

.ratio-4x3 img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	max-width: 100%;
}

.ratio-16x9 img {
	aspect-ratio: 16 / 9;
	object-fit: cover;
	max-width: 100%;
}

.btn-lined .elementor-button-link {
	position: relative;
}

.btn-lined .elementor-button-link::after {
	background-color: #EE6C4D;
	bottom: 0;
	content: '';
	height: 1px;
	left: 0;
	position: absolute;
	transition: width 0.5s ease;
	width: 0;
}

.btn-lined .elementor-button-link:hover::after {
	width: 100%;
}

.btn-lined.btn-white .elementor-button-link::after {
	background-color: #ffffff;
}

.fade-box .elementor-heading-title,
.fade-box .elementor-widget-container,
.fade-box .elementor-button-link {
	transition: all 0.3s linear;
}

.fade-box:hover .elementor-heading-title,
.fade-box:hover .elementor-widget-container {
	color: #ffffff !important;
}

.fade-box:hover .elementor-button-link {
	background-color: #ffffff !important;
	color: #022852 !important;
}

.btn-icon .elementor-button-link {
	position: relative;
}

.btn-icon .elementor-button-link .elementor-button-icon {
	transform: translateX(0);
	transition: transform 0.3s linear;
}

.btn-icon .elementor-button-link:hover .elementor-button-icon {
	transform: translateX(5px);
}

.unbullet-list ul {
	padding: 0;
	list-style: none;
}

.unbullet-list ul li {
	border-bottom: 1px solid #E7E7E7;
	margin: 0 0 10px;
	padding: 0 0 10px;
}

.elementor-widget-text-editor .elementor-widget-container p:last-child {
	padding-bottom: 0;
	margin-block-end: 0;
}

.arrow-cta-wrapper.e-con {
	--overflow: hidden;
}

.arrow-animation-cta {
	position: relative;
}

.arrow-animation-cta::after {
	content: '';
	background: linear-gradient(180deg, #EC9674 0%, #839ECE 40%, #7297CB 100%);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	z-index: 1;
}

.arrow-animation-cta.cta-blue::after {
	background: linear-gradient(180deg, rgba(127, 161, 212, 1) 0%, rgba(12, 70, 132, 1) 100%);
}

.arrow-animation-cta.cta-full-blue::after {
	background: linear-gradient(189deg, rgba(12, 70, 132, 1) 0%, rgba(127, 161, 212, 1) 100%);
}

.arrow-animation-cta > div {
	z-index: 2;
}

@keyframes arrow-gradient-clients {
	0% {
		background-position: 100%;
	}

	100% {
		background-position: -100%;
	}
}

.shape-block::after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	mask-image: url('/wp-content/uploads/2024/06/shape-mask-outline.png');
	mask-repeat: no-repeat;
	mask-position: center center;
	mask-size: cover;
	z-index: 0;
	background: #F8FAFC58;
	background-size: cover;
	transition: background 0.3s linear, mask-image 0.3s linear;
	pointer-events: none;
}

.shape-block.hovering::after {
	mask-image: url('/wp-content/uploads/2024/06/shape-mask.png');
	background: radial-gradient(circle, #EE6C4D, #0C4684);
}

.alt-shape-block::after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-image: url('/wp-content/uploads/2025/05/alt-shape-bkg.jpg');
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	mask-image: url('/wp-content/uploads/2024/06/service-mask.png');
	mask-repeat: no-repeat;
	mask-position: top center;
	mask-size: cover;
	z-index: 0;
	pointer-events: none;
}

@media screen and (min-width: 1040px) {
	.arrow-animation-cta::after {
		top: 0;
		left: auto;
		right: 0;
		width: 100vw;
		height: 100%;
		z-index: 1;
	}
	
	.arrow-animation-cta.cta-right::after {
		right: auto;
		left: 0;
	}

	.arrow-animation::before {
		content: '' !important;
		background: linear-gradient(180deg, rgba(0, 7, 27, 1) 0%, rgba(12, 70, 132, 1) 42%, rgba(127, 161, 212, 1) 100%) !important;
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		width: 100vw !important;
		height: 100% !important;
		z-index: 0;
	}
	
	.arrow-animation.arrow-left::before {
		left: auto !important;
		right: 0 !important;
	}

	.arrow-animation::after {
		content: '';
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		mask-image: url('/wp-content/uploads/2023/12/arrow-background-mask-inverted.png');
		mask-repeat: no-repeat;
		mask-position: center center;
		mask-size: auto 85%;
		animation: arrow-gradient-clients 10s linear forwards infinite;
		background-image: radial-gradient(circle,rgba(127, 161, 212, 1) 0%, rgba(12, 70, 132, 1) 50%, rgba(0, 7, 27, 1) 100%);
		background-size: 200% 200%;
		pointer-events: none;
		z-index: 1;
	}

	.alt-shape-block::after {
		content: '';
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		background-image: url('/wp-content/uploads/2025/05/alt-shape-bkg.jpg');
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		mask-image: url('/wp-content/uploads/2024/06/service-mask.png');
		mask-repeat: no-repeat;
		mask-position: center center;
		mask-size: cover;
		z-index: 0;
		pointer-events: none;
	}

	.shape-block::after {
		content: '';
		width: 50%;
        height: 100%;
        position: absolute;
        left: 25%;
        top: 0;
        mask-position: center center;
        mask-size: cover;
	}
}

@media only screen and (min-width: 768px) {
	.testimonials.elementor-testimonial--align-left.elementor-testimonial--layout-image_inline .elementor-testimonial__footer {
		justify-content: flex-end;
	}

	.testimonials .elementor-testimonial__footer cite,
	selector .elementor-testimonial__header cite {
		flex-direction: row;
	}

	.testimonials .elementor-testimonial__name {
		padding-right: 5px;
	}

	.testimonials .elementor-swiper-button-prev svg,
	.testimonials .elementor-swiper-button-next svg {
		display: none;
	}

	.testimonials .elementor-swiper-button-prev,
	.testimonials .elementor-swiper-button-next {
		background: url('/wp-content/uploads/2023/12/Chevron_Group.svg') no-repeat center center;
		height: 50px;
		width: 30px;
	}

	.testimonials .elementor-swiper-button-prev {
		transform: translateY(-50%) rotateY(-180deg);
	}

	article.case-study > div {
		height: 100%;
	}
	article.case-study > div > div {
		height: 100%;
	}
}

.max-height img {
	max-height: 450px;
	object-fit: cover;
}