/**
 * Elementor — 2026 premium styling alignment
 */

.elementor-widget-heading .elementor-heading-title {
	letter-spacing: -0.03em;
	font-family: 'Exo', sans-serif !important;
	font-weight: 700 !important;
}

.elementor-section.elementor-section-boxed > .elementor-container {
	padding-left: var(--container-padding, 1.5rem);
	padding-right: var(--container-padding, 1.5rem);
}

.elementor-widget-container .elementor-button {
	border-radius: 999px !important;
	font-weight: 700 !important;
	padding: 0.875rem 1.75rem !important;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
}

.elementor-widget-container .elementor-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 16px 40px rgba(59, 123, 193, 0.25);
}

.elementor-widget-icon-box .elementor-icon-box-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	background: linear-gradient(135deg, rgba(59, 123, 193, 0.12) 0%, rgba(140, 198, 63, 0.12) 100%);
	border-radius: 14px;
}

.elementor-widget-icon-box .elementor-icon {
	font-size: 1.5rem;
}

.elementor-widget-image-box,
.elementor-widget-icon-box {
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.elementor-column:hover .elementor-widget-image-box,
.elementor-column:hover .elementor-widget-icon-box {
	transform: translateY(-4px);
}

.elementor-posts-container .elementor-post__card,
.elementor-posts-container .elementor-post {
	border-radius: 24px !important;
	overflow: hidden;
	border: 1px solid rgba(15, 23, 42, 0.08) !important;
	box-shadow: 0 8px 32px rgba(15, 23, 42, 0.06) !important;
	transition: transform 0.4s ease, box-shadow 0.4s ease !important;
}

.elementor-posts-container .elementor-post__card:hover,
.elementor-posts-container .elementor-post:hover {
	transform: translateY(-8px);
	box-shadow: 0 24px 56px rgba(59, 123, 193, 0.12) !important;
}

.elementor-field-group input,
.elementor-field-group textarea,
.elementor-field-group select {
	border-radius: 14px !important;
	border: 1px solid rgba(15, 23, 42, 0.1) !important;
}

.elementor-field-group input:focus,
.elementor-field-group textarea:focus {
	border-color: #3B7BC1 !important;
	box-shadow: 0 0 0 4px rgba(59, 123, 193, 0.12) !important;
}

.elementor-kit-29,
.elementor-default {
	--e-global-color-primary: #3B7BC1;
	--e-global-color-secondary: #8CC63F;
	--e-global-color-text: #1E293B;
	--e-global-color-accent: #2E5DA3;
	font-family: 'Exo', sans-serif;
}

/* Spacer sections with mesh feel */
.elementor-section-wrap > .elementor-section:first-child {
	position: relative;
}

.elementor-section.elementor-section-height-min-height {
	min-height: 60vh;
}
