.site-footer {
	margin-top: 0;
	padding-block: clamp(2.5rem, 3.5vw, 4rem) clamp(1.75rem, 2.5vw, 2.75rem);
	border-top: var(--border-width) solid var(--color-secondary);
	background: var(--ddna-orange);
	color: var(--color-secondary);
}

.site-footer__inner {
	display: grid;
	grid-template-columns: minmax(13rem, 0.9fr) minmax(17rem, 0.95fr) minmax(20rem, 1.15fr);
	grid-template-areas: "identity lines contact" "legal legal legal";
	align-items: center;
	row-gap: 1.5rem;
	column-gap: clamp(2rem, 5vw, 7rem);
}

.site-footer__identity { grid-area: identity; }
.site-footer__brand {
	display: block;
	width: min(100%, 19rem);
}
.site-footer__logo {
	display: block;
	width: 100%;
	height: auto;
}

.site-footer__lines {
	display: grid;
	width: min(100%, 18rem);
	grid-area: lines;
	gap: 1rem;
}

.assistance-line {
	display: flex;
	min-height: 4.25rem;
	align-items: center;
	gap: 0.85rem;
	padding: 0.55rem 1.25rem;
	border: var(--border-width) solid currentColor;
	border-radius: var(--radius-pill);
	background: var(--ddna-orange);
	color: inherit;
	text-decoration: none;
	transition: box-shadow var(--transition-fast), transform var(--transition-fast);
}

.assistance-line:hover {
	box-shadow: 0 0.4rem 0 rgb(5 5 6 / 18%);
	transform: translateY(-0.12rem);
}

.assistance-line__icon {
	width: 2rem;
	height: 2rem;
	flex: 0 0 auto;
	object-fit: contain;
	filter: brightness(0);
}

.assistance-line__content { min-width: 0; }
.assistance-line strong,
.assistance-line small { display: block; }
.assistance-line strong {
	font-size: clamp(0.68rem, 0.65rem + 0.12vw, 0.78rem);
	font-weight: var(--font-weight-regular);
	line-height: 1.15;
	text-transform: uppercase;
}
.assistance-line small {
	font-size: clamp(1rem, 0.94rem + 0.25vw, 1.2rem);
	font-weight: var(--font-weight-bold);
	line-height: 1.1;
}

.site-footer__contact {
	display: grid;
	grid-area: contact;
	justify-items: end;
	gap: 0.65rem;
	text-align: right;
}

.site-footer__follow {
	margin: 0;
	font-size: clamp(1.05rem, 0.98rem + 0.25vw, 1.3rem);
	font-weight: var(--font-weight-bold);
}

.social-links {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	flex-wrap: wrap;
	justify-content: inherit;
	margin: 0;
	padding: 0;
	list-style: none;
}

.social-links a,
.social-links__unavailable {
	display: grid;
	width: 3.25rem;
	height: 3.25rem;
	place-items: center;
	border-radius: 50%;
	color: inherit;
}

.social-links a {
	transition: opacity var(--transition-fast), transform var(--transition-fast);
}
.social-links a:hover {
	opacity: 0.72;
	transform: translateY(-0.12rem);
}
.social-icon {
	width: 2.35rem;
	height: 2.35rem;
	object-fit: contain;
}
.social-icon--whatsapp { filter: brightness(0); }

.site-footer__address {
	display: grid;
	justify-items: end;
	margin-top: 0.35rem;
	font-size: clamp(0.9rem, 0.84rem + 0.2vw, 1.05rem);
	font-style: normal;
	line-height: 1.35;
}
.site-footer__address span,
.site-footer__address a {
	max-width: 100%;
	overflow-wrap: anywhere;
}
.site-footer__address a { color: inherit; }
.site-footer__address a:first-of-type { margin-top: 0.45rem; }

.site-footer__legal {
	grid-area: legal;
	margin: 0;
	font-size: var(--font-size-xs);
	text-align: center;
}

@media (max-width: 74.9375rem) {
	.site-footer__inner {
		grid-template-columns: minmax(13rem, 0.8fr) minmax(18rem, 1fr);
		grid-template-areas: "identity lines" "contact contact" "legal legal";
	}
	.site-footer__contact,
	.site-footer__address { justify-items: start; }
	.site-footer__contact { text-align: left; }
}

@media (max-width: 47.9375rem) {
	.site-footer__inner {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas: "identity" "lines" "contact" "legal";
		align-items: start;
		justify-items: center;
		gap: 1.75rem;
	}
	.site-footer__identity,
	.site-footer__lines { width: 100%; }
	.site-footer__brand {
		width: min(82vw, 20rem);
		margin-inline: auto;
	}
	.site-footer__lines { max-width: 24rem; }
	.assistance-line { width: 100%; }
	.site-footer__contact,
	.site-footer__address {
		justify-items: center;
		text-align: center;
	}
	.site-footer__legal { max-width: 28rem; }
}

@media (prefers-reduced-motion: reduce) {
	.assistance-line,
	.social-links a { transition: none; }
	.assistance-line:hover,
	.social-links a:hover { transform: none; }
}

.home .site-footer { padding-bottom: calc(5rem + env(safe-area-inset-bottom)); }
