/**
 * Elementor compatibility layer for A67.
 *
 * @package a67
 */

:root {
	--a67-e-width-narrow: var(--container-narrow);
	--a67-e-width-regular: var(--container-regular);
	--a67-e-width-wide: var(--container-wide);
	--a67-e-width-full: 100%;
}

.a67-elementor-page .entry-content,
.a67-elementor-page .page-layout-content {
	max-width: none;
}

.a67-elementor-page .elementor-widget-heading .elementor-heading-title {
	margin: 0;
	font-family: var(--font-heading);
	line-height: 1.25;
	color: var(--color-text);
}

.a67-elementor-page .elementor-widget-text-editor,
.a67-elementor-page .elementor-widget-text-editor p,
.a67-elementor-page .elementor-widget-text-editor li,
.a67-elementor-page .elementor-widget-post-content,
.a67-elementor-page .elementor-widget-post-content p,
.a67-elementor-page .elementor-widget-post-content li {
	font-family: var(--font-body);
	line-height: 1.8;
	color: var(--color-text);
}

.a67-elementor-page .elementor-section.elementor-section-stretched {
	max-width: 100%;
	inset-inline-start: 0 !important;
}

/* Reduce margin collisions in nested containers. */
.a67-elementor-page .elementor-element .elementor-widget:not(:last-child) {
	margin-bottom: var(--space-5);
}

.a67-elementor-page .elementor-widget-wrap > .elementor-element.elementor-widget:last-child {
	margin-bottom: 0;
}

.a67-elementor-page .elementor-widget-container > :last-child {
	margin-bottom: 0;
}

.a67-elementor-page .elementor-form .elementor-field-group {
	margin-bottom: var(--space-4);
}

.a67-elementor-page .elementor-form .elementor-field-label,
.a67-elementor-page .elementor-field-label {
	display: block;
	margin-bottom: var(--space-2);
	font-weight: 700;
	color: var(--color-text);
}

.a67-elementor-page .elementor-field,
.a67-elementor-page .elementor-form input:not([type="checkbox"]):not([type="radio"]),
.a67-elementor-page .elementor-form textarea,
.a67-elementor-page .elementor-form select {
	width: 100%;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	background: var(--color-surface);
	color: var(--color-text);
	padding: 0.7rem 0.85rem;
}

.a67-elementor-page .elementor-form .elementor-button {
	border-radius: var(--radius-md);
	box-shadow: var(--shadow-soft);
}

.a67-elementor-page .elementor-message,
.a67-elementor-page .elementor-error,
.a67-elementor-page .elementor-message-danger {
	border-radius: var(--radius-sm);
	padding: 0.6rem 0.8rem;
}

.a67-elementor-page .elementor-icon-list-items .elementor-icon-list-item {
	align-items: center;
}

html[dir="rtl"] .a67-elementor-page .elementor-icon-list-item .elementor-icon-list-icon {
	margin-left: 0.5rem;
	margin-right: 0;
}

html:not([dir="rtl"]) .a67-elementor-page .elementor-icon-list-item .elementor-icon-list-icon {
	margin-right: 0.5rem;
	margin-left: 0;
}

html[dir="rtl"] .a67-elementor-page .elementor-accordion .elementor-tab-title .elementor-accordion-icon {
	margin-left: 0.5rem;
	margin-right: 0;
}

html[dir="rtl"] .a67-elementor-page .elementor-tabs .elementor-tab-title {
	text-align: right;
}

.a67-e-width-narrow .elementor-container,
.a67-e-width-narrow {
	max-width: var(--a67-e-width-narrow);
	margin-inline: auto;
}

.a67-e-width-regular .elementor-container,
.a67-e-width-regular {
	max-width: var(--a67-e-width-regular);
	margin-inline: auto;
}

.a67-e-width-wide .elementor-container,
.a67-e-width-wide {
	max-width: var(--a67-e-width-wide);
	margin-inline: auto;
}

.a67-e-width-full {
	max-width: var(--a67-e-width-full);
}

.a67-e-space-sm {
	padding-block: var(--space-4);
}

.a67-e-space-md {
	padding-block: var(--space-6);
}

.a67-e-space-lg {
	padding-block: var(--space-7);
}

.a67-e-divider-top {
	border-top: 1px solid var(--color-border);
}

.a67-e-divider-bottom {
	border-bottom: 1px solid var(--color-border);
}

.a67-e-surface {
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-soft);
	padding: var(--space-6);
}

.a67-e-kicker {
	font-family: var(--font-ui);
	font-weight: 700;
	font-size: 0.82rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin-bottom: var(--space-2);
	color: var(--color-link);
}

.a67-e-hero {
	background: linear-gradient(130deg, rgba(15, 76, 129, 0.08), rgba(231, 111, 81, 0.06));
	border-radius: var(--radius-lg);
	border: 1px solid var(--color-border);
	padding: clamp(1.25rem, 3vw, 2.25rem);
}

.a67-e-hero h1 {
	margin-bottom: var(--space-3);
}

.a67-e-network .story-grid {
	margin-top: var(--space-4);
}

@media (max-width: 1024px) {
	.a67-e-surface {
		padding: var(--space-5);
	}
}

@media (max-width: 782px) {
	.a67-e-width-narrow,
	.a67-e-width-regular,
	.a67-e-width-wide {
		max-width: 100%;
	}

	.a67-e-space-md {
		padding-block: var(--space-5);
	}

	.a67-e-space-lg {
		padding-block: var(--space-6);
	}
}
