/**
 * Terrakuta — classic footer models.
 *
 * Models:
 *   model-classic   4-column footer + legal bar
 *   model-cta-band  terracotta CTA band on top + classic footer
 *   model-minimal   single row: logo, small menu, copyright
 */

/* -------------------------------------------------------------------- */
/* Shared                                                               */
/* -------------------------------------------------------------------- */

.tk-footer {
	font-family: var(--tk-font-body);
	background: var(--tk-black);
	color: var(--tk-ivory);
}

.tk-footer a {
	color: rgba(246, 240, 235, 0.8);
}

.tk-footer a:hover {
	color: var(--tk-ivory);
}

.tk-footer__main {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1fr;
	gap: 48px;
	width: 100%;
	max-width: var(--tk-container);
	margin: 0 auto;
	padding: clamp(56px, 7vw, 104px) var(--tk-gutter) 48px;
}

.tk-footer__brand .tk-logo {
	color: var(--tk-ivory);
	margin-bottom: 18px;
}

.tk-footer__tagline {
	margin: 0 0 28px;
	font-size: 0.95rem;
	line-height: 1.8;
	color: rgba(246, 240, 235, 0.65);
}

.tk-footer__heading {
	margin: 0 0 22px;
	font-family: var(--tk-font-body);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: var(--tk-terracotta);
}

.tk-footer .tk-menu {
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
}

.tk-footer .tk-menu a {
	font-size: 13px;
	letter-spacing: 0.08em;
}

.tk-footer__contact .tk-contact__label {
	color: var(--tk-terracotta);
}

.tk-footer__contact .tk-contact__value {
	color: rgba(246, 240, 235, 0.85);
}

.tk-footer__contact .tk-contact__row {
	margin-bottom: 18px;
}

.tk-footer__legal {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px 32px;
	width: 100%;
	max-width: var(--tk-container);
	margin: 0 auto;
	padding: 22px var(--tk-gutter);
	border-top: 1px solid rgba(246, 240, 235, 0.14);
	font-size: 12px;
	letter-spacing: 0.06em;
	color: rgba(246, 240, 235, 0.5);
}

.tk-footer__legal .tk-menu {
	flex-direction: row;
	gap: 24px;
}

/* -------------------------------------------------------------------- */
/* Model: CTA band                                                        */
/* -------------------------------------------------------------------- */

.tk-footer--cta-band .tk-cta {
	background: var(--tk-terracotta);
}

/* -------------------------------------------------------------------- */
/* Model: minimal                                                        */
/* -------------------------------------------------------------------- */

.tk-footer--minimal .tk-footer__main {
	grid-template-columns: 1fr;
	gap: 20px;
	padding-top: 40px;
	padding-bottom: 40px;
	text-align: center;
}

.tk-footer--minimal .tk-footer__brand {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.tk-footer--minimal .tk-footer__legal {
	justify-content: center;
}

@media (max-width: 1023px) {
	.tk-footer__main {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 640px) {
	.tk-footer__main {
		grid-template-columns: 1fr;
	}
}
