/*
 * KDR — Homepage Footer (Newsletter block + dark Footer bar).
 * Startseite, last section (Group 263 in Figma).
 *
 * NOTE: built from a screenshot the user provided, not a live Figma pull —
 * the Figma MCP API hit its rate limit on this account's plan while
 * building this section, so exact pixel/color values below are careful
 * estimates rather than exact numbers. Flag anything that looks off and
 * it can be corrected once Figma access is available again.
 *
 * Loaded by the kdr child theme (see functions.php). Targeted via CSS
 * classes set on the Containers/widgets in Elementor's Advanced tab.
 */

.kdr-sec-newsletter {
	background: #ffffff;
}

.kdr-newsletter-content {
	max-width: 780px;
	margin: 0 auto;
	text-align: center;
}

.kdr-newsletter-heading .elementor-heading-title {
	line-height: 0.86 !important;
	max-width: 640px;
	margin: 0 auto;
}

.kdr-newsletter-body {
	max-width: 520px;
	margin: 24px auto 0;
}

.kdr-newsletter-body p {
	color: rgba(41, 54, 19, 0.75);
	font-size: 17px;
	line-height: 1.5;
}

.kdr-newsletter-form {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 24px;
	margin-top: 32px;
	flex-wrap: wrap;
}

.kdr-newsletter-input {
	background: #e5de9e;
	border-radius: 999px;
	padding: 13px 28px;
	min-width: 260px;
}

.kdr-newsletter-input .elementor-widget-container {
	margin: 0;
}

.kdr-newsletter-input p {
	font-style: italic;
	color: #293613;
	font-size: 14px;
	margin: 0;
}

.kdr-newsletter-send.elementor-button {
	background-color: #293613 !important;
	color: #e5de9e !important;
	border-radius: 999px !important;
	padding: 13px 30px !important;
	font-size: 14px !important;
	font-style: normal !important;
	font-weight: 500 !important;
	box-shadow: none !important;
	border: none !important;
}

.kdr-newsletter-send.elementor-button:hover,
.kdr-newsletter-send.elementor-button:focus,
.kdr-newsletter-send.elementor-button:active {
	background-color: #33431a !important;
	color: #e5de9e !important;
}

/* ---------------- Footer (dark green) ---------------- */

.kdr-sec-footer {
	background-color: #293613;
	border-top-left-radius: 560px 170px;
	position: relative;
	overflow: visible;
}

.kdr-footer-socials {
	display: flex;
	justify-content: flex-end;
	gap: 18px;
	margin-top: -64px;
	margin-bottom: 40px;
	position: relative;
	z-index: 2;
}

.kdr-footer-social-icon .elementor-icon {
	width: 48px !important;
	height: 48px !important;
	border-radius: 50% !important;
	background-color: #c0b648 !important;
}

.kdr-footer-social-icon .elementor-icon i,
.kdr-footer-social-icon .elementor-icon svg {
	color: #293613 !important;
	fill: #293613 !important;
	font-size: 20px !important;
}

.kdr-footer-columns {
	display: flex;
	justify-content: space-between;
	gap: 40px;
	flex-wrap: wrap;
}

.kdr-footer-logo-col {
	flex: 0 0 auto;
}

.kdr-footer-logo-placeholder {
	width: 282px;
	max-width: 100%;
	height: 85px;
	border: 1.5px dashed rgba(229, 222, 158, 0.6);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(229, 222, 158, 0.06);
}

.kdr-footer-logo-placeholder p {
	color: #e5de9e;
	font-size: 12px;
	text-align: center;
	margin: 0;
	padding: 8px;
	line-height: 1.4;
}

.kdr-footer-mid-col {
	flex: 1 1 260px;
	max-width: 300px;
}

.kdr-footer-mid-text p {
	color: #fcfbf2;
	font-size: 16px;
	line-height: 1.45;
	margin: 0 0 20px;
}

.kdr-footer-pill {
	display: flex;
	align-items: center;
	background: #e5de9e;
	border-radius: 999px;
	padding: 6px 6px 6px 22px;
	max-width: 282px;
}

.kdr-footer-pill-input {
	flex: 1;
	margin: 0;
	overflow: hidden;
}

.kdr-footer-pill-input p {
	font-style: italic;
	color: #293613;
	font-size: 13px;
	margin: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.kdr-footer-pill .kdr-newsletter-send.elementor-button {
	padding: 10px 22px !important;
	font-size: 13px !important;
	white-space: nowrap;
	flex: 0 0 auto;
}

.kdr-footer-address-col {
	flex: 0 0 auto;
}

.kdr-footer-address p {
	color: #fcfbf2;
	font-size: 15px;
	line-height: 1.6;
	margin: 0;
}

.kdr-footer-address-label {
	font-weight: 700 !important;
}

.kdr-footer-phone {
	margin-top: 18px !important;
}

.kdr-footer-divider {
	height: 1px;
	background: rgba(229, 222, 158, 0.25);
	margin: 40px 0 24px;
}

.kdr-footer-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 16px;
}

.kdr-footer-credit p {
	color: rgba(229, 222, 158, 0.6);
	font-size: 13px;
	margin: 0;
}

.kdr-footer-links {
	display: flex;
	gap: 36px;
	flex-wrap: wrap;
}

.kdr-footer-links a {
	color: #fcfbf2 !important;
	font-size: 14px;
	text-decoration: none !important;
}

.kdr-footer-links a:hover,
.kdr-footer-links a:focus {
	opacity: 0.75;
}

@media (max-width: 900px) {
	.kdr-footer-columns {
		flex-direction: column;
		gap: 32px;
	}
	.kdr-sec-footer {
		border-top-left-radius: 120px 60px;
	}
	.kdr-newsletter-form {
		flex-direction: column;
	}
	.kdr-footer-bottom {
		flex-direction: column;
		align-items: flex-start;
	}
}
