/**
 * GEO page — Figma 1399:1886 (1440×14846).
 * Reuses .inia-lu-*, .inia-omb-*, .inia-seo-* via page shell classes.
 */

/* —— Buttons —— */
/* 14px padding + 24px line-height renders 52; Figma specs every CTA at 48. */
.inia-geo-page .inia-omb-hero .elementor-button,
.inia-geo-page .inia-geo-case-copy .elementor-button {
	min-height: 48px;
	height: 48px;
	padding: 14px 24px !important;
}

/* Every CTA on this frame carries the 20px-blur drop shadow, not the 40px default. */
.inia-geo-page .inia-omb-hero .elementor-button,
.inia-geo-page .inia-geo-case-copy .elementor-button,
.inia-geo-page .inia-lu-cta-blue .elementor-button {
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2) !important;
}

/* —— Banner (Figma 1399:1914 — secondary CTA pinned at y 370) —— */
.inia-geo-page .inia-geo-banner {
	position: relative;
}

.inia-geo-page .inia-geo-banner__btn {
	position: absolute;
	top: 370px;
	left: 0;
	right: 0;
	width: fit-content;
	margin-inline: auto;
}

.inia-geo-page .inia-geo-banner__btn .elementor-button {
	min-height: 48px;
	height: 48px;
	padding: 14px 24px !important;
	white-space: nowrap;
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2) !important;
}

/* —— Case Study (future + partner) —— */
.inia-geo-page .inia-geo-case {
	width: 100%;
	max-width: 1440px;
	padding: 80px !important;
	box-sizing: border-box;
}

.inia-geo-page .inia-geo-case--future {
	min-height: 568px;
	height: 568px;
}

.inia-geo-page .inia-geo-case--partner {
	min-height: 616px;
	height: 616px;
}

/*
 * Only the inner wrapper resets padding/height — Elementor lays the section out
 * with its own 80px padding, and this container renders as e-con-full anyway.
 */
.inia-geo-page .inia-geo-case > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 120px !important;
	height: 100% !important;
	padding: 0 !important;
}

.inia-geo-page .inia-geo-case-copy {
	width: 520px !important;
	max-width: 520px !important;
	flex: 0 0 520px !important;
}

.inia-geo-page .inia-geo-case-copy .elementor-widget-text-editor p {
	margin: 0 !important;
	font-family: "DM Sans", sans-serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	font-weight: 500 !important;
}

.inia-geo-page .inia-geo-case-bullet,
.inia-geo-page .inia-geo-case-copy .inia-geo-case-bullet {
	color: var(--inai-electric-blue, #2d5bff) !important;
	position: relative;
	padding-left: 24px;
}

.inia-geo-page .inia-geo-case-bullet::before {
	content: "•";
	position: absolute;
	left: 8px;
	color: var(--inai-electric-blue, #2d5bff);
}

.inia-geo-page .inia-geo-case-results {
	width: 640px !important;
	max-width: 640px !important;
	flex: 0 0 640px !important;
	min-height: 390px !important;
	/* Figma strokes render inside the frame; trim 1px so the 1px border keeps 640×390. */
	padding: 31px !important;
	box-sizing: border-box;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.inia-geo-page .inia-geo-case-chart img,
.inia-geo-page .inia-geo-case-results .inia-omb-case-chart img {
	width: 576px !important;
	max-width: 100%;
	height: 326px !important;
	object-fit: cover;
	border-radius: 32px;
	border: 1px solid #fff;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
	display: block;
	box-sizing: border-box;
}

/* —— Was ist GEO? Q&A —— */
.inia-geo-page .inia-geo-qa {
	width: 100%;
	max-width: 1440px;
}

.inia-geo-page .inia-geo-qa-band {
	width: 100%;
	background-color: #173393 !important;
}

.inia-geo-page .inia-geo-qa-band,
.inia-geo-page .inia-geo-qa-band > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
	gap: 64px !important;
	align-items: stretch !important;
}

.inia-geo-page .inia-geo-qa-card {
	width: 400px !important;
	max-width: 100%;
	min-height: 341px !important;
	height: 341px !important;
	padding: 31px !important;
	box-sizing: border-box;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.inia-geo-page .inia-geo-qa-card,
.inia-geo-page .inia-geo-qa-card > .e-con-inner {
	gap: 16px !important;
	height: 100% !important;
}

.inia-geo-page .inia-geo-qa-eyebrow,
.inia-geo-page .inia-geo-qa-eyebrow p {
	margin: 0 !important;
	color: #fff !important;
	font-family: "DM Sans", sans-serif !important;
	font-size: 12px !important;
	line-height: 16px !important;
	font-weight: 600 !important;
	letter-spacing: 1.8px !important;
	text-transform: uppercase !important;
}

.inia-geo-page .inia-geo-qa-icon img {
	width: 85px !important;
	height: 70px !important;
	object-fit: contain;
}

.inia-geo-page .inia-geo-qa-card .elementor-heading-title,
.inia-geo-page .inia-geo-qa-card .elementor-widget-text-editor,
.inia-geo-page .inia-geo-qa-card .elementor-widget-text-editor p {
	color: #fff !important;
	margin: 0 !important;
}

.inia-geo-page .inia-geo-qa-card .elementor-widget-text-editor p + p {
	margin-top: 0 !important;
}

/* —— Vorteile —— */
.inia-geo-page .inia-geo-vorteile {
	width: 100%;
	max-width: 1440px;
	height: 320px;
	min-height: 320px;
	overflow: hidden;
}

.inia-geo-page .inia-geo-vorteile-panel {
	width: 836px !important;
	max-width: min(836px, 100%);
	padding: 23px !important;
	box-sizing: border-box;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.inia-geo-page .inia-geo-vorteile-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
	width: 100%;
}

.inia-geo-page .inia-geo-vorteile-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 8px;
	font-family: "DM Sans", sans-serif;
	font-size: 16px;
	line-height: 24px;
	font-weight: 500;
}

.inia-geo-page .inia-geo-vorteile-dash,
.inia-geo-page .inia-geo-vorteile-lead {
	color: var(--inai-electric-blue, #2d5bff);
}

.inia-geo-page .inia-geo-vorteile-rest {
	color: #000;
}

/* —— Team horizontal scroll —— */
.inia-geo-page .inia-geo-team {
	width: 100%;
	max-width: 1440px;
	height: 478px;
	min-height: 478px;
	overflow: hidden;
}

/* Elementor renders this container as e-con-full, so the section is the scroller. */
.inia-geo-page .inia-geo-team,
.inia-geo-page .inia-geo-team > .e-con-inner {
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.inia-geo-page .inia-geo-team > .e-con-inner {
	height: 100% !important;
}

.inia-geo-page .inia-geo-team::-webkit-scrollbar,
.inia-geo-page .inia-geo-team > .e-con-inner::-webkit-scrollbar {
	display: none;
}

.inia-geo-page .inia-geo-team-track {
	width: max-content !important;
	max-width: none !important;
	/* Figma: Laura starts at -130 */
	margin-left: -130px;
	min-width: 1616px;
}

.inia-geo-page .inia-geo-team-track,
.inia-geo-page .inia-geo-team-track > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	gap: 16px !important;
	align-items: flex-start !important;
	width: max-content !important;
}

.inia-geo-page .inia-geo-team-card {
	width: 256px !important;
	flex: 0 0 256px;
}

/* Figma: 16px only between photo and name/role block (not between name & role) */
.inia-geo-page .inia-geo-team-card,
.inia-geo-page .inia-geo-team-card > .e-con-inner {
	gap: 0 !important;
}

.inia-geo-page .inia-geo-team-card__img {
	margin-bottom: 16px !important;
}

.inia-geo-page .inia-geo-team-card__img img {
	width: 256px !important;
	height: 384px !important;
	object-fit: cover;
	border-radius: 24px;
	border: 1px solid #fff;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
	display: block;
}

.inia-geo-page .inia-geo-team-card__name .elementor-heading-title {
	margin: 0 !important;
	font-size: 24px !important;
	line-height: 31px !important;
	text-align: center;
}

.inia-geo-page .inia-geo-team-card__role,
.inia-geo-page .inia-geo-team-card__role p {
	margin: 0 !important;
	font-family: "DM Sans", sans-serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	font-weight: 500 !important;
	text-align: center;
}

/* —— Zahlen —— */
.inia-geo-page .inia-geo-zahlen {
	width: 100%;
	max-width: 1440px;
	height: 312px;
	min-height: 312px;
	overflow: hidden;
}

.inia-geo-page .inia-geo-zahlen-panel {
	width: 1200px !important;
	max-width: min(1200px, 100%);
	padding: 31px !important;
	box-sizing: border-box;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.inia-geo-page .inia-geo-zahlen-eyebrow,
.inia-geo-page .inia-geo-zahlen-eyebrow p {
	margin: 0 !important;
	color: var(--inai-electric-blue, #2d5bff) !important;
	font-family: "DM Sans", sans-serif !important;
	font-size: 12px !important;
	line-height: 16px !important;
	font-weight: 600 !important;
	letter-spacing: 1.8px !important;
	text-transform: uppercase !important;
}

.inia-geo-page .inia-geo-zahlen-metrics,
.inia-geo-page .inia-geo-zahlen-metrics > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	justify-content: space-between !important;
	align-items: flex-start !important;
	width: 100% !important;
	gap: 0 !important;
}

.inia-geo-page .inia-geo-metric .inia-geo-metric__value .elementor-heading-title,
.inia-geo-page .inia-geo-metric .elementor-heading-title {
	margin: 0 !important;
	font-family: var(--inai-font-display, "Bricolage Grotesque", sans-serif) !important;
	font-size: 64px !important;
	line-height: 88px !important;
	font-weight: 600 !important;
	color: var(--inai-electric-blue, #2d5bff) !important;
	text-align: center;
	white-space: nowrap;
}

.inia-geo-page .inia-geo-metric__label,
.inia-geo-page .inia-geo-metric__label p {
	margin: 0 !important;
	font-family: "DM Sans", sans-serif !important;
	font-size: 12px !important;
	line-height: 16px !important;
	font-weight: 600 !important;
	letter-spacing: 1.8px !important;
	text-transform: uppercase !important;
	text-align: center;
	color: #000 !important;
}

.inia-geo-page .inia-geo-metric__label p + p {
	color: var(--inai-electric-blue, #2d5bff) !important;
}

/* —— GEO Leistungen —— */
.inia-geo-page .inia-geo-features .inia-omb-feature-card {
	min-height: 245px !important;
	height: 245px !important;
	padding: 31px !important;
	box-sizing: border-box !important;
	/* Figma pins the numeral icon to the right; copy is stretched back below. */
	align-items: flex-end !important;
}

.inia-geo-page .inia-geo-features .inia-geo-feature-card--tall,
.inia-geo-page .inia-geo-features .inia-omb-feature-row:nth-child(4) .inia-omb-feature-card {
	min-height: 269px !important;
	height: 269px !important;
}

.inia-geo-page .inia-geo-features .inia-omb-feature-card,
.inia-geo-page .inia-geo-features .inia-omb-feature-card > .e-con-inner {
	align-items: flex-end !important;
	width: 100%;
}

.inia-geo-page .inia-geo-features .inia-omb-feature-card > .elementor-widget-heading,
.inia-geo-page .inia-geo-features .inia-omb-feature-card > .elementor-widget-text-editor,
.inia-geo-page .inia-geo-features .inia-omb-feature-card .elementor-heading-title,
.inia-geo-page .inia-geo-features .inia-omb-feature-card .elementor-widget-text-editor {
	width: 100%;
	align-self: stretch;
	text-align: left;
}

.inia-geo-page .inia-geo-features .inia-omb-feature-row:last-child {
	margin-bottom: 0 !important;
}

/* —— Unternehmen 2×3 —— */
.inia-geo-page .inia-geo-unternehmen {
	width: 100%;
	max-width: 1440px;
	height: 1591px;
	min-height: 1591px;
	overflow: hidden;
}

.inia-geo-page .inia-geo-unternehmen-grid {
	width: 1150px !important;
	max-width: min(1150px, 100%);
}

.inia-geo-page .inia-geo-unternehmen-grid,
.inia-geo-page .inia-geo-unternehmen-grid > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	gap: 24px !important;
	align-items: stretch !important;
	row-gap: 24px !important;
	column-gap: 24px !important;
}

.inia-geo-page .inia-geo-unternehmen-card {
	width: 563px !important;
	max-width: 100%;
	height: 485px !important;
	min-height: 485px !important;
	padding: 39px !important;
	box-sizing: border-box;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.inia-geo-page .inia-geo-unternehmen-card__img img {
	width: 483px !important;
	max-width: 100%;
	height: 320px !important;
	object-fit: cover;
	border-radius: 24px;
	display: block;
}

.inia-geo-page .inia-geo-unternehmen-card .elementor-heading-title {
	margin: 0 !important;
	font-size: 24px !important;
	line-height: 31px !important;
}

/* —— Kalender —— */
.inia-geo-page .inia-lu-kalender {
	max-width: 1200px !important;
	width: 100% !important;
}

@media (max-width: 1199px) {
	/* Banner shrinks by aspect ratio, so a fixed 370 would fall out the bottom. */
	.inia-geo-page .inia-geo-banner__btn {
		top: auto !important;
		bottom: 24px !important;
	}

	.inia-geo-page .inia-geo-case,
	.inia-geo-page .inia-geo-case--future,
	.inia-geo-page .inia-geo-case--partner {
		height: auto !important;
		min-height: 0 !important;
		padding: 48px 24px !important;
	}

	.inia-geo-page .inia-geo-case,
	.inia-geo-page .inia-geo-case > .e-con-inner {
		flex-direction: column !important;
		flex-wrap: wrap !important;
		align-items: stretch !important;
		gap: 48px !important;
		height: auto !important;
	}

	/* Section keeps its own gutters; only the (optional) inner wrapper resets. */
	.inia-geo-page .inia-geo-case > .e-con-inner {
		padding: 0 !important;
	}

	.inia-geo-page .inia-geo-case-copy,
	.inia-geo-page .inia-geo-case-results {
		width: 100% !important;
		max-width: 100% !important;
		flex: 1 1 auto !important;
		/* Desktop pins 390; once the chart scales the panel must hug it. */
		min-height: 0 !important;
		height: auto !important;
		padding: 24px !important;
	}

	.inia-geo-page .inia-geo-case-chart img,
	.inia-geo-page .inia-geo-case-results .inia-omb-case-chart img {
		width: 100% !important;
		height: auto !important;
		aspect-ratio: 576 / 326;
	}

	.inia-geo-page .inia-geo-qa-band,
	.inia-geo-page .inia-geo-qa-band > .e-con-inner {
		gap: 24px !important;
		/* Desktop keeps 69px/56px insets, which swallow the viewport once narrow. */
		padding: 48px var(--inai-side-gutter, 24px) !important;
	}

	.inia-geo-page .inia-geo-qa-card {
		width: 100% !important;
		max-width: 400px;
		height: auto !important;
		min-height: 0;
	}

	.inia-geo-page .inia-geo-vorteile-panel {
		width: 100% !important;
	}

	.inia-geo-page .inia-geo-team-track {
		margin-left: 0;
		min-width: 0;
		padding-left: 24px;
		padding-right: 24px;
	}

	.inia-geo-page .inia-geo-zahlen-panel {
		width: 100% !important;
	}

	.inia-geo-page .inia-geo-zahlen-metrics,
	.inia-geo-page .inia-geo-zahlen-metrics > .e-con-inner {
		flex-wrap: wrap !important;
		justify-content: center !important;
		gap: 24px !important;
	}

	.inia-geo-page .inia-geo-unternehmen-grid {
		width: 100% !important;
		padding-inline: var(--inai-side-gutter, 24px) !important;
		box-sizing: border-box;
	}

	.inia-geo-page .inia-geo-unternehmen-grid,
	.inia-geo-page .inia-geo-unternehmen-grid > .e-con-inner {
		justify-content: center;
	}

	.inia-geo-page .inia-geo-vorteile,
	.inia-geo-page .inia-geo-zahlen,
	.inia-geo-page .inia-geo-unternehmen {
		height: auto !important;
		min-height: 0 !important;
		overflow: visible !important;
	}

	/* Panels are width:100% cards, so the gutter has to come from the section. */
	.inia-geo-page .inia-geo-vorteile,
	.inia-geo-page .inia-geo-zahlen {
		padding-inline: var(--inai-side-gutter, 24px) !important;
		box-sizing: border-box;
	}

	.inia-geo-page .inia-geo-unternehmen-card {
		width: 100% !important;
		/* Elementor's per-element CSS also declares max-width, so this needs to win. */
		max-width: 563px !important;
		height: auto !important;
		min-height: 0 !important;
	}

	.inia-geo-page .inia-geo-team {
		height: auto !important;
		min-height: 0 !important;
	}

	.inia-geo-page .inia-geo-features .inia-omb-feature-card,
	.inia-geo-page .inia-geo-features .inia-geo-feature-card--tall,
	.inia-geo-page .inia-geo-features .inia-omb-feature-row:nth-child(4) .inia-omb-feature-card {
		height: auto !important;
		min-height: 0 !important;
	}

	.inia-geo-page .inia-geo-features .inia-omb-feature-card,
	.inia-geo-page .inia-geo-features .inia-omb-feature-card > .e-con-inner {
		flex-wrap: nowrap !important;
		flex-direction: column !important;
		height: auto !important;
	}
}

@media (max-width: 1024px) {
	.inia-geo-page .inia-geo-qa-band,
	.inia-geo-page .inia-geo-qa-band > .e-con-inner {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px !important;
		justify-items: stretch;
	}

	.inia-geo-page .inia-geo-qa-card {
		max-width: 100%;
	}
}

@media (max-width: 767px) {
	.inia-geo-page .inia-geo-metric .elementor-heading-title {
		font-size: clamp(36px, 10vw, 48px) !important;
		line-height: 1.2 !important;
	}

	.inia-geo-page .inia-geo-case {
		min-height: 0;
		padding: 40px var(--inai-side-gutter, 16px) !important;
	}

	.inia-geo-page .inia-geo-qa-band,
	.inia-geo-page .inia-geo-qa-band > .e-con-inner {
		grid-template-columns: 1fr !important;
		gap: 20px !important;
		padding: 40px var(--inai-side-gutter, 16px) !important;
	}

	.inia-geo-page .inia-geo-qa > .elementor-widget-heading .elementor-heading-title,
	.inia-geo-page .inia-geo-vorteile > .elementor-widget-heading .elementor-heading-title,
	.inia-geo-page .inia-geo-zahlen > .elementor-widget-heading .elementor-heading-title,
	.inia-geo-page .inia-geo-unternehmen > .elementor-widget-heading .elementor-heading-title,
	.inia-geo-page .inia-geo-features > .elementor-widget-heading .elementor-heading-title,
	.inia-geo-page .inia-geo-features h2.elementor-heading-title {
		font-size: 28px !important;
		line-height: 34px !important;
	}

	.inia-geo-page .inia-geo-qa-card .elementor-heading-title {
		font-size: 24px !important;
		line-height: 31px !important;
	}

	.inia-geo-page .inia-geo-unternehmen-card .elementor-heading-title {
		font-size: 20px !important;
		line-height: 28px !important;
	}

	.inia-geo-page .inia-geo-features .inia-omb-feature-card .elementor-heading-title {
		font-size: 24px !important;
		line-height: 31px !important;
	}

	.inia-geo-page .inia-geo-metric .elementor-heading-title {
		font-size: clamp(36px, 10vw, 48px) !important;
		line-height: 1.2 !important;
	}

	.inia-geo-page .inia-geo-team-track {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding-left: var(--inai-side-gutter, 16px);
		padding-right: var(--inai-side-gutter, 16px);
	}

	.inia-geo-page .inia-geo-team-card__img img {
		width: 220px !important;
		height: 330px !important;
	}

	.inia-geo-page .inia-geo-team-card {
		width: 220px !important;
		flex-basis: 220px;
	}

	.inia-geo-page .inia-geo-unternehmen-card__img img {
		height: auto !important;
		aspect-ratio: 483 / 320;
	}

	.inia-geo-page .inia-geo-unternehmen-grid,
	.inia-geo-page .inia-geo-unternehmen-grid > .e-con-inner,
	.inia-geo-page .inia-geo-unternehmen-grid {
		gap: 20px !important;
		row-gap: 20px !important;
	}
}
