/* Unternehmen — desktop lock. Mobile/tablet media queries added after desktop QA. */

.unternehmen-page {
	overflow: hidden;
}

.unternehmen-hero {
	background: #012e55;
	padding: 96px 0;
}

.unternehmen-hero-blob {
	width: 460px;
	height: 460px;
	right: -16px;
	top: 26px;
	background: #1a4a73;
	opacity: 0.45;
}

.unternehmen-hero-cloud-tr {
	width: 214px;
	right: 0;
	top: 21px;
	opacity: 0.5;
	mix-blend-mode: normal;
}

.unternehmen-hero-cloud-bl {
	width: 349px;
	left: -126px;
	top: 396px;
}

.unternehmen-hero-cloud-br {
	width: 344px;
	right: -110px;
	bottom: -40px;
	opacity: 0.5;
	mix-blend-mode: normal;
}

.unternehmen-hero .page-width-boxed {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
	text-align: center;
}

.unternehmen-hero-media {
	height: 460px;
	border-radius: 28px;
	background: #012e55;
	width: 100%;
}

.unternehmen-hero-copy {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	width: 100%;
}

.unternehmen-hero-head {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	width: 100%;
}

.unternehmen-hero-crumb {
	font-family: "Source Sans 3", sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.4;
	color: #c7d2de;
	margin: 0;
}

.unternehmen-hero .theme-title-xl {
	color: #fff;
}

.unternehmen-hero-lead {
	max-width: 860px;
	margin: 0 auto;
	color: #c7d2de;
}

.unternehmen-story {
	background: #fff;
	padding: 88px 0;
}

.unternehmen-story-inner {
	display: flex;
	gap: 48px;
	align-items: flex-start;
}

.unternehmen-story-copy {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.unternehmen-story-block {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.unternehmen-story-block .theme-title-md {
	color: #012e55;
}

.unternehmen-story-media {
	width: 480px;
	height: 400px;
	flex-shrink: 0;
	border-radius: 16px;
}

.unternehmen-stats {
	background: #012e55;
	padding: 34px 0;
}

.unternehmen-stats-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 40px;
	flex-wrap: wrap;
}

.unternehmen-stats-inner span {
	font-family: "Cal Sans", "Source Sans 3", sans-serif;
	font-size: 22px;
	line-height: 1.4;
	color: #fff;
	text-transform: uppercase;
}

.unternehmen-stats-dot {
	width: 5px;
	height: 5px;
	border-radius: 3px;
	background: #f04;
	display: block;
	flex-shrink: 0;
}

.unternehmen-werte {
	background: #f5f7fa;
	padding: 88px 0;
}

.unternehmen-werte .theme-glow-pink {
	width: 220px;
	height: 220px;
	left: -80px;
	top: 184px;
}

.unternehmen-werte .theme-glow-blue {
	width: 240px;
	height: 240px;
	right: -67px;
	top: 40px;
}

.unternehmen-werte-header,
.unternehmen-section-header {
	text-align: center;
	margin-bottom: 40px;
}

.unternehmen-section-header .theme-text {
	max-width: 820px;
	margin: 14px auto 0;
}

.unternehmen-werte-header .theme-title-lg {
	margin-top: 12px;
}

.unternehmen-werte-row {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
}

.unternehmen-werte-card,
.unternehmen-job-card,
.unternehmen-team-card,
.unternehmen-standort-card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 10px 26px 0 rgba(1, 46, 84, 0.07);
	min-width: 0;
}

.unternehmen-werte-card {
	padding: 30px 28px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.unternehmen-werte-card-media {
	height: 140px;
	border-radius: 12px;
}

.unternehmen-werte-icon {
	width: 48px;
	height: 48px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.unternehmen-werte-icon.is-blue {
	background: rgba(89, 178, 255, 0.07);
}

.unternehmen-werte-icon.is-red {
	background: rgba(255, 69, 69, 0.08);
}

.unternehmen-werte-icon.is-gold {
	background: #fff6d6;
}

.unternehmen-zert {
	background: #fff;
	padding: 80px 0;
}

.unternehmen-zert-card {
	display: flex;
	gap: 24px;
	align-items: flex-start;
	padding: 32px 36px;
	border: 1px solid #e4e8ec;
	border-radius: 16px;
	box-shadow: 0 10px 26px 0 rgba(1, 46, 84, 0.07);
}

.unternehmen-zert-copy {
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 0;
}

.unternehmen-gallery {
	background: #f5f7fa;
	padding: 64px 0;
}

.unternehmen-gallery .theme-glow-pink {
	width: 360px;
	height: 360px;
	left: -120px;
	top: -80px;
}

.unternehmen-gallery .theme-glow-blue {
	width: 200px;
	height: 200px;
	right: 2px;
	bottom: 5px;
}

.unternehmen-gallery-row {
	display: flex;
	gap: 20px;
	align-items: flex-start;
}

.unternehmen-gallery-col {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.unternehmen-gallery-media {
	border-radius: 18px;
	width: 100%;
}

.unternehmen-gallery-col-tall .unternehmen-gallery-media {
	height: 460px;
}

.unternehmen-gallery-col-pair .unternehmen-gallery-media {
	height: 220px;
}

.unternehmen-gallery-col-mixed .unternehmen-gallery-media:first-child {
	height: 300px;
}

.unternehmen-gallery-col-mixed .unternehmen-gallery-media:last-child {
	height: 140px;
}

.unternehmen-team {
	background: #fff;
	padding: 90px 0;
}

.unternehmen-team .theme-glow-blue {
	width: 240px;
	height: 240px;
	right: -67px;
	top: 40px;
}

.unternehmen-team .theme-glow-pink {
	width: 220px;
	height: 220px;
	left: -80px;
	bottom: 80px;
}

.unternehmen-team-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
}

.unternehmen-team-card {
	border: 1px solid #e4e8ec;
	overflow: hidden;
}

.unternehmen-team-photo {
	height: 200px;
}

.unternehmen-team-photo.is-bottom > img {
	object-position: center bottom;
}

.unternehmen-team-meta {
	padding: 16px 20px 18px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.unternehmen-team-meta p {
	font-family: "Source Sans 3", sans-serif;
	font-size: 14px;
	line-height: 1.5;
	color: #9e9e9e;
}

.unternehmen-standorte {
	background: #f5f7fa;
	padding: 90px 0;
}

.unternehmen-standorte .theme-glow-blue {
	width: 240px;
	height: 240px;
	right: -67px;
	top: 40px;
}

.unternehmen-standorte .theme-glow-pink {
	width: 220px;
	height: 220px;
	left: -80px;
	bottom: 160px;
}

.unternehmen-map {
	position: relative;
	height: 320px;
	background: #e3eaf1;
	border-radius: 20px;
	overflow: hidden;
	margin-bottom: 40px;
}

.unternehmen-map-label {
	position: absolute;
	left: 40px;
	top: 26px;
	font-family: "Source Sans 3", sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.4;
	color: #9fb1c2;
	z-index: 1;
}

.unternehmen-map-pin {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 6px;
	transform: translateY(-50%);
	z-index: 1;
}

.unternehmen-map-dot {
	width: 22px;
	height: 22px;
	border-radius: 11px;
	background: #f04;
	border: 3px solid #fff;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
	flex-shrink: 0;
}

.unternehmen-map-tag {
	background: #fff;
	border-radius: 14px;
	padding: 5px 10px;
	font-family: "Source Sans 3", sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.4;
	color: #012e55;
	box-shadow: 0 3px 8px rgba(1, 46, 84, 0.12);
	white-space: nowrap;
}

.unternehmen-standorte-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	justify-content: center;
}

.unternehmen-standort-card {
	width: 410px;
	padding: 26px 26px 28px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.unternehmen-standort-head {
	display: flex;
	gap: 14px;
	align-items: center;
}

.unternehmen-standort-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #ffe3ea;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.unternehmen-standort-icon::after {
	content: "";
	width: 16px;
	height: 16px;
	border-radius: 8px;
	background: #f04;
	border: 2px solid #fff;
}

.unternehmen-standort-badge {
	font-family: "Source Sans 3", sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.4;
	color: #f04;
	text-transform: uppercase;
	margin-top: 2px;
}

.unternehmen-standort-emphasis {
	font-family: "Source Sans 3", sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.4;
	color: #012e55;
}

.unternehmen-karriere {
	background: #fff;
	padding: 90px 0;
}

.unternehmen-karriere .theme-glow-blue {
	width: 240px;
	height: 240px;
	right: -67px;
	top: 40px;
}

.unternehmen-karriere .theme-glow-pink {
	width: 220px;
	height: 220px;
	left: -80px;
	top: 514px;
}

.unternehmen-jobs-row {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
}

.unternehmen-job-card {
	border: 1px solid #e4e8ec;
	padding: 28px 28px 26px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.unternehmen-job-media {
	height: 130px;
	border-radius: 12px;
}

.unternehmen-job-meta {
	align-self: flex-start;
	width: auto;
	white-space: nowrap;
	background: #edf0f3;
	border-radius: 20px;
	padding: 6px 12px;
	font-family: "Source Sans 3", sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.4;
	color: #012e55;
}

.unternehmen-job-link {
	font-family: "Source Sans 3", sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.4;
	color: #f04;
}

.unternehmen-job-link:hover,
.unternehmen-job-link:focus,
.unternehmen-job-link:visited {
	color: #f04;
}

.unternehmen-benefits {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 14px;
	justify-content: center;
	margin-top: 44px;
}

.unternehmen-benefit-chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #f5f7fa;
	border: 1px solid #e4e8ec;
	border-radius: 22px;
	padding: 11px 18px;
	font-family: "Source Sans 3", sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.4;
	color: #012e55;
}

.unternehmen-benefit-chip .theme-check-badge {
	width: 20px;
	height: 20px;
	border-radius: 10px;
	font-size: 12px;
}

.unternehmen-karriere-cta {
	margin-top: 44px;
	background: #012e55;
	border-radius: 16px;
	padding: 36px 48px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
}

.unternehmen-karriere-cta .theme-title-sm {
	color: #fff;
	max-width: 820px;
}

.unternehmen-offer {
	background: #012e55;
	padding: 64px 0;
	text-align: center;
}

.unternehmen-offer .theme-title-md {
	color: #fff;
	max-width: 820px;
	margin: 0 auto 18px;
}

.unternehmen-offer-cloud-l {
	width: 214px;
	left: -79px;
	top: 0;
	opacity: 0.5;
	mix-blend-mode: normal;
}

.unternehmen-offer-cloud-r {
	width: 436px;
	right: 178px;
	top: -7px;
	opacity: 0.5;
	mix-blend-mode: normal;
}

.unternehmen-gallery-row.is-fluid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	height: auto;
	gap: 20px;
}

.unternehmen-gallery-row.is-fluid .unternehmen-gallery-media {
	height: 220px;
	border-radius: 18px;
	width: 100%;
}

/* ---------- Tablet (no Figma frame) — interpolate from desktop + mobile ---------- */
@media (max-width: 1024px) {
	.unternehmen-hero-media {
		height: 360px;
		border-radius: 20px;
	}

	.unternehmen-story-inner {
		flex-direction: column;
	}

	.unternehmen-story-media {
		width: 100%;
		height: 320px;
	}

	.unternehmen-werte-row,
	.unternehmen-jobs-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.unternehmen-team-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.unternehmen-gallery-row {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		align-content: space-between;
		height: 628px;
		gap: 16px;
	}

	.unternehmen-gallery-col {
		display: contents;
	}

	.unternehmen-gallery-media {
		width: calc(50% - 8px);
		border-radius: 16px;
	}

	.unternehmen-gallery-col-tall .unternehmen-gallery-media {
		order: 1;
		height: 300px;
	}

	.unternehmen-gallery-col-mixed .unternehmen-gallery-media:first-child {
		order: 2;
		height: 260px;
	}

	.unternehmen-gallery-col-pair .unternehmen-gallery-media:first-child {
		order: 3;
		height: 196px;
	}

	.unternehmen-gallery-col-pair .unternehmen-gallery-media:last-child {
		order: 4;
		height: 220px;
	}

	.unternehmen-gallery-col-mixed .unternehmen-gallery-media:last-child {
		order: 5;
		height: 180px;
	}

	.unternehmen-standort-card {
		width: calc(50% - 12px);
	}

	.unternehmen-zert-card {
		padding: 28px 24px;
	}

	.unternehmen-karriere-cta {
		padding: 32px 28px;
	}

	.unternehmen-map-tag {
		white-space: nowrap;
	}

	.unternehmen-gallery-row.is-fluid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		height: auto;
		gap: 16px;
	}

	.unternehmen-gallery-row.is-fluid .unternehmen-gallery-media {
		height: 220px;
		width: 100%;
	}
}

/* ---------- Mobile (Figma 1292:2) — only rules that differ from tablet ---------- */
@media (max-width: 767px) {
	.unternehmen-hero {
		padding: 40px 0 32px;
	}

	.unternehmen-hero .page-width-boxed {
		align-items: stretch;
	}

	.unternehmen-hero-copy {
		display: contents;
	}

	.unternehmen-hero-head {
		order: 0;
	}

	.unternehmen-hero-media {
		order: 1;
		height: 300px;
		border-radius: 28px;
	}

	.unternehmen-hero .theme-title-xl {
		font-size: 32px;
	}

	.unternehmen-hero-lead {
		order: 2;
		max-width: none;
	}

	.unternehmen-hero-cloud-tr {
		width: 285px;
		right: -133px;
		top: 12px;
	}

	.unternehmen-hero-cloud-bl {
		width: 349px;
		left: -126px;
		top: 396px;
	}

	.unternehmen-hero-cloud-br {
		width: 90px;
		right: -29px;
		bottom: auto;
		top: 563px;
	}

	.unternehmen-story {
		padding: 88px 0;
	}

	.unternehmen-story-copy {
		gap: 28px;
	}

	.unternehmen-story-media {
		height: 240px;
		border-radius: 16px;
	}

	.unternehmen-stats {
		padding: 34px 0;
	}

	.unternehmen-stats-inner {
		flex-direction: column;
		gap: 12px;
	}

	.unternehmen-werte {
		padding: 56px 0;
	}

	.unternehmen-werte-row,
	.unternehmen-jobs-row {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.unternehmen-werte-header,
	.unternehmen-section-header {
		text-align: left;
		margin-bottom: 40px;
	}

	.unternehmen-section-header .theme-text {
		margin-left: 0;
		margin-right: 0;
	}

	.unternehmen-zert {
		padding: 56px 0;
	}

	.unternehmen-zert-card {
		flex-direction: column;
		gap: 24px;
		padding: 32px 36px;
	}

	.unternehmen-gallery {
		padding: 64px 0;
	}

	.unternehmen-gallery-row {
		height: 490px;
		gap: 15px;
	}

	.unternehmen-gallery-media {
		width: calc(50% - 7.5px);
		border-radius: 14px;
	}

	.unternehmen-gallery-col-tall .unternehmen-gallery-media {
		height: 230px;
	}

	.unternehmen-gallery-col-mixed .unternehmen-gallery-media:first-child {
		height: 200px;
	}

	.unternehmen-gallery-col-pair .unternehmen-gallery-media:first-child {
		height: 150px;
	}

	.unternehmen-gallery-col-pair .unternehmen-gallery-media:last-child {
		height: 170px;
	}

	.unternehmen-gallery-col-mixed .unternehmen-gallery-media:last-child {
		height: 140px;
	}

	.unternehmen-gallery-row.is-fluid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 15px;
	}

	.unternehmen-gallery-row.is-fluid .unternehmen-gallery-media {
		height: 180px;
		border-radius: 14px;
	}

	.unternehmen-team,
	.unternehmen-standorte,
	.unternehmen-karriere {
		padding: 90px 0;
	}

	.unternehmen-team-grid {
		gap: 16px 4px;
	}

	.unternehmen-team-photo {
		height: 150px;
	}

	.unternehmen-team-meta {
		padding: 16px 6px 18px;
	}

	.unternehmen-team-card .theme-title-xs {
		font-size: 16px;
		line-height: 1.05;
	}

	.unternehmen-map {
		height: 320px;
		margin-bottom: 40px;
	}

	.unternehmen-map-label {
		left: 20px;
		max-width: calc(100% - 40px);
	}

	.unternehmen-standorte-grid {
		flex-direction: column;
		align-items: stretch;
		gap: 16px;
	}

	.unternehmen-standort-card {
		width: 100%;
	}

	.unternehmen-standort-media {
		display: block;
		height: 150px;
		border-radius: 12px;
		background: #d7e0ea;
		margin-bottom: 12px;
	}

	.unternehmen-job-card {
		padding: 28px;
	}

	.unternehmen-job-meta {
		white-space: nowrap;
	}

	.unternehmen-benefits {
		flex-direction: column;
		align-items: center;
		gap: 8px;
		margin-top: 44px;
	}

	.unternehmen-karriere-cta {
		padding: 36px 48px;
	}

	.unternehmen-karriere-cta .theme-title-sm {
		max-width: 239px;
	}

	.unternehmen-offer {
		padding: 64px 0;
	}

	.unternehmen-offer .theme-title-md {
		font-size: 34px;
		line-height: 1.2;
		max-width: none;
		margin-bottom: 18px;
	}

	.unternehmen-offer-cloud-l {
		width: 139px;
		left: -37px;
		top: auto;
		bottom: 0;
	}

	.unternehmen-offer-cloud-r {
		width: 202px;
		right: -51px;
		top: -17px;
	}
}
