/* Contact Section Widget */

/* Force full-width, remove all spacing */
.elementor-widget-contact-section {
	padding: 0 !important;
	margin: 0 !important;
	width: 100vw !important;
	max-width: 100vw !important;
	left: 50% !important;
	right: 50% !important;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
	position: relative !important;
}

.elementor-widget-contact-section .elementor-widget-container {
	padding: 0 !important;
	margin: 0 !important;
}

/* Remove Elementor container padding */
.e-con-inner:has(> .elementor-widget-contact-section) {
	padding: 0 !important;
}

/* Main section */
.contact-section {
	padding: 112px 64px;
	box-sizing: border-box;
}

/* Container */
.contact-section .contact-container {
	max-width: 1280px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 80px;
}

/* Content area */
.contact-section .contact-content {
	display: flex;
	gap: 80px;
}

/* Header section */
.contact-section .contact-header {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 24px;
	max-width: 700px;
}

.contact-section .contact-tagline {
	font-family: Inter, sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.5;
	margin: 0;
	color: #ffffff;
}

.contact-section .contact-heading {
	font-family: Inter, sans-serif;
	font-weight: 400;
	font-size: 48px;
	line-height: 1.2;
	letter-spacing: -0.48px;
	margin: 0;
	color: #ffffff;
}

.contact-section .contact-description {
	font-family: Inter, sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.5;
	margin: 0;
	color: #ffffff;
}

/* Contact info area */
.contact-section .contact-info {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 32px;
	max-width: 500px;
}

.contact-section .contact-info-item {
	display: flex;
	gap: 16px;
	align-items: flex-start;
}

.contact-section .contact-icon {
	width: 24px;
	height: 24px;
	flex-shrink: 0;
}

.contact-section .contact-icon img {
	width: 100%;
	height: 100%;
	display: block;
}

.contact-section .contact-details {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.contact-section .contact-label {
	font-family: Inter, sans-serif;
	font-weight: 400;
	font-size: 20px;
	line-height: 1.4;
	letter-spacing: -0.2px;
	margin: 0;
	color: #ffffff;
}

.contact-section .contact-link {
	font-family: Inter, sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.5;
	margin: 0;
	color: #ffffff;
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, 0.4);
	transition: text-decoration-color 0.2s;
}

.contact-section .contact-link:hover {
	text-decoration-color: rgba(255, 255, 255, 1);
}

.contact-section .contact-text {
	font-family: Inter, sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.5;
	margin: 0;
	color: #ffffff;
}

/* Image section */
.contact-section .contact-image {
	width: 100%;
	height: 720px;
}

.contact-section .contact-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
