/**
 * Carilo imzalı footer — twin-kit footer.css yapısı: iki SVG eğri (üst yüzey + alt lobe),
 * asimetrik sol-ağırlıklı kompozisyon. Bordo yüzey üzerinde fildişi serif imza.
 * Mobil eğriler masaüstünün sıkıştırılmışı değil, ayrı ve daha sade eğrilerdir.
 */

.carilo-footer {
	background-color: var(--footer-backdrop, transparent);
	--footer-top-edge-height: 112px;
	--footer-lobe-height: 68px;
	--footer-lobe-shift: 48px;
}

.carilo-footer__top-edge {
	line-height: 0;
}

.carilo-footer__top-edge svg {
	display: block;
	width: 100%;
	height: var(--footer-top-edge-height);
}

.carilo-footer__top-edge svg.carilo-footer__svg-mobile,
.carilo-footer__bottom-lobe svg.carilo-footer__svg-mobile {
	display: none;
}

@media (max-width: 639px) {
	.carilo-footer__top-edge svg.carilo-footer__svg-desktop,
	.carilo-footer__bottom-lobe svg.carilo-footer__svg-desktop {
		display: none;
	}

	.carilo-footer__top-edge svg.carilo-footer__svg-mobile,
	.carilo-footer__bottom-lobe svg.carilo-footer__svg-mobile {
		display: block;
	}
}

.carilo-footer__surface {
	position: relative;
	background-color: var(--color-wine-800);
	color: var(--color-ivory-100);
	margin-top: -1px;
}

/* İmza + logo: slogan solda, Carilo logosu sağdaki boş alanda. */
.carilo-footer__manifesto {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--space-6);
	text-align: left;
	margin-top: -54px;
	padding-top: clamp(0.5rem, 1vw, 0.75rem);
	padding-bottom: clamp(1.5rem, 3.2vw, 2.5rem);
	border-bottom: 1px solid color-mix(in srgb, var(--color-ivory-100) 22%, transparent);
}

.carilo-footer__statement {
	margin: 0;
	min-width: 0;
}

.carilo-footer__statement::before {
	content: "";
	display: block;
	width: 48px;
	height: 3px;
	margin-bottom: var(--space-4);
	background-color: var(--color-accent-on-dark);
	border-radius: var(--radius-pill);
}

.carilo-footer__statement p {
	font-family: var(--font-display);
	font-weight: 500;
	font-size: clamp(1.75rem, 3.1vw, 2.75rem);
	line-height: 1.18;
	color: var(--color-ivory);
	margin: 0;
	max-width: 15em;
	text-wrap: balance;
	hanging-punctuation: first;
}

/* Logo: paketin beyaz oval varyantı aynen; filtre, gölge, yeniden renklendirme yok. */
.carilo-footer__mark {
	display: inline-flex;
	flex-shrink: 0;
	line-height: 0;
	border-radius: 6px;
}

.carilo-footer__mark img {
	display: block;
	height: clamp(64px, 6vw, 88px);
	width: auto;
	max-width: 100%;
	object-fit: contain;
}

.carilo-footer__main {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--space-7);
	padding-top: var(--space-6);
	padding-bottom: 40px;
}

.carilo-footer__left {
	flex: 1 1 auto;
	min-width: 0;
}

.carilo-footer__primary-nav {
	display: flex;
	flex-wrap: wrap;
	column-gap: clamp(24px, 2.2vw, 40px);
	row-gap: var(--space-2);
}

.carilo-footer__primary-nav a {
	font-family: var(--font-sans);
	font-weight: 600;
	font-size: 0.8125rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--color-ivory-100);
	text-decoration: underline;
	text-decoration-color: transparent;
	text-underline-offset: 4px;
	text-decoration-thickness: 1px;
	padding-block: var(--space-2);
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	transition: color var(--duration-fast) var(--ease-standard), text-decoration-color var(--duration-fast) var(--ease-standard);
}

.carilo-footer__primary-nav a:hover,
.carilo-footer__primary-nav a:focus-visible {
	color: var(--color-white);
	text-decoration-color: var(--color-accent-on-dark);
}

.carilo-footer__right {
	flex: 0 1 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-2) var(--space-4);
	padding-top: var(--space-2);
}

.carilo-footer__contact-link {
	color: var(--color-ivory-100);
	font-size: 0.9375rem;
	font-weight: 500;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	overflow-wrap: anywhere;
}

.carilo-footer__contact-link:hover,
.carilo-footer__contact-link:focus-visible {
	color: var(--color-white);
}

.carilo-footer__right-divider {
	width: 1px;
	height: 16px;
	background-color: color-mix(in srgb, var(--color-white) 25%, transparent);
	flex-shrink: 0;
}

.carilo-footer__bottom-lobe {
	position: relative;
	line-height: 0;
	margin-top: calc(-1 * var(--footer-lobe-shift));
}

.carilo-footer__bottom-lobe svg {
	display: block;
	width: 100%;
	height: var(--footer-lobe-height);
}

.carilo-footer__bottom {
	position: relative;
	background-color: var(--color-wine-900);
	margin-top: -1px;
}

.carilo-footer__bottom-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	padding-block: var(--space-3);
}

.carilo-footer__copyright {
	font-size: 0.8125rem;
	color: color-mix(in srgb, var(--color-ivory-100) 88%, transparent);
}

.carilo-footer__address {
	margin: 0;
	font-size: 0.8125rem;
	color: color-mix(in srgb, var(--color-ivory-100) 88%, transparent);
}

.carilo-footer__legal-inline {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2) var(--space-5);
	list-style: none;
	margin: 0;
	padding: 0;
}

.carilo-footer__legal-inline a,
.carilo-footer__legal-inline button {
	display: inline-flex;
	align-items: center;
	text-decoration: underline;
	text-underline-offset: 3px;
	color: color-mix(in srgb, var(--color-ivory-100) 88%, transparent);
	font-size: 0.8125rem;
	font-family: inherit;
	background: none;
	border: none;
	padding: 0;
	min-height: 32px;
	cursor: pointer;
}

.carilo-footer__legal-inline a:hover,
.carilo-footer__legal-inline a:focus-visible,
.carilo-footer__legal-inline button:hover,
.carilo-footer__legal-inline button:focus-visible {
	color: var(--color-white);
}

@media (max-width: 899px) {
	.carilo-footer__main { flex-wrap: wrap; }
}

@media (max-width: 639px) {
	.carilo-footer {
		--footer-top-edge-height: 76px;
		--footer-lobe-height: 46px;
		--footer-lobe-shift: 30px;
	}

	.carilo-footer__main {
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
		padding-top: var(--space-6);
		padding-bottom: calc(var(--footer-lobe-shift) + var(--space-7));
		gap: var(--space-5);
	}

	.carilo-footer__left { flex: 0 0 auto; width: 100%; }

	.carilo-footer__manifesto {
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
		gap: var(--space-5);
		margin-top: 0;
		padding-top: var(--space-6);
		padding-bottom: var(--space-5);
	}

	.carilo-footer__statement p { font-size: clamp(1.625rem, 8vw, 2rem); }
	.carilo-footer__mark img { height: 64px; }

	.carilo-footer__primary-nav {
		display: grid;
		grid-template-columns: repeat(2, auto);
		justify-content: start;
		column-gap: var(--space-6);
	}

	.carilo-footer__right { width: 100%; padding-top: 0; }

	.carilo-footer__bottom-inner {
		flex-direction: column;
		align-items: flex-start;
		gap: var(--space-2);
	}
}
