.wp-block-template-part:has(.octo-footer) {
	margin-block-start: 0 !important;
}

.octo-footer {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	margin-block-start: 0 !important;
	padding: 42px 40px 18px;
	background: var(--wp--preset--color--fond);
	color: color-mix(in srgb, var(--wp--preset--color--base) 78%, transparent);
	font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
	border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 28%, transparent);
}

.octo-footer a {
	color: inherit;
	text-decoration: none;
}

.octo-footer__inner {
	max-width: 1180px;
	margin: 0 auto;
	gap: 32px;
}

.octo-footer__mark {
	display: inline-block;
	margin: 0 0 16px;
	background: transparent;
	line-height: 0;
}

.octo-footer__mark img,
.octo-footer__mark .custom-logo {
	display: block;
	width: 210px;
	max-width: 100%;
	height: auto;
	object-fit: contain;
	filter: none;
}

.octo-footer__about {
	max-width: 280px;
	margin: 0 0 18px;
	font-size: 14px;
	line-height: 1.55;
}

.octo-footer__social.wp-block-social-links {
	gap: 10px;
	margin: 0;
}

.octo-footer__social .wp-social-link {
	width: 34px;
	height: 34px;
	background: transparent;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--base) 35%, transparent);
	border-radius: 50%;
	color: var(--wp--preset--color--base);
}

.octo-footer__social .wp-social-link a {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	padding: 0;
	color: var(--wp--preset--color--base);
}

.octo-footer__social .wp-social-link svg {
	width: 16px;
	height: 16px;
}

.octo-footer__social .wp-social-link:hover {
	border-color: var(--wp--preset--color--turquoise);
	color: var(--wp--preset--color--turquoise);
}

.octo-footer__title {
	margin: 0 0 16px;
	color: var(--wp--preset--color--base);
	font-size: 16px;
	font-weight: 700;
}

.octo-footer__menu.wp-block-navigation {
	font-size: 14px;
}

.octo-footer__menu .wp-block-navigation__container {
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
	width: 100%;
}

.octo-footer__menu .wp-block-navigation-item__content:hover,
.octo-footer__legal .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--turquoise);
}

.octo-footer .wp-block-navigation__responsive-container-open,
.octo-footer .wp-block-navigation__responsive-container-close {
	display: none;
}

.octo-footer .wp-block-navigation__responsive-container {
	display: block;
	position: static;
	width: auto;
	background: transparent;
}

.octo-footer__line {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 10px;
	font-size: 14px;
}

.octo-footer__line::before {
	content: "";
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	background: currentColor;
	color: var(--wp--preset--color--turquoise);
}

.octo-footer__line--pin::before {
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 22s7-6.2 7-11a7 7 0 1 0-14 0c0 4.8 7 11 7 11zm0-8.2a2.6 2.6 0 1 1 0-5.2 2.6 2.6 0 0 1 0 5.2z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.octo-footer__line--phone::before {
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 3h3.2l1.3 3.3-2 1.3a12 12 0 0 0 6 6l1.3-2L20 13v3.2A2 2 0 0 1 17.8 18 16.5 16.5 0 0 1 5 6.2 2 2 0 0 1 7 3z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.octo-footer__line--mail::before {
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 5h18v14H3V5zm2.2 2 6.8 5.2L18.8 7H5.2z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.octo-footer .wp-block-octo-whatsapp-button {
	margin-top: 14px;
}

.octo-footer .octo-wa-button {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 18px;
	border-radius: 999px;
	background: var(--wp--preset--color--accent-2);
	color: var(--wp--preset--color--base);
	font-size: 14px;
	font-weight: 700;
}

.octo-footer .octo-wa-button::before {
	content: "";
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	background: currentColor;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 0 0-8.6 15L2 22l5.2-1.4A10 10 0 1 0 12 2zm5.6 14.2c-.2.6-1.3 1.2-1.8 1.3-.5.1-1 .1-1.7-.1-2.6-1.1-4.3-3.7-4.4-3.9-.2-.2-1.1-1.4-1.1-2.7s.7-1.9.9-2.2c.2-.2.6-.4.8-.4h.6c.2 0 .4 0 .6.5.3.6.8 2 .9 2.2.1.1.1.3 0 .5l-.3.5c-.1.2-.3.4-.4.5-.1.1-.3.3-.1.5.2.3.7 1.1 1.5 1.8 1 .9 1.8 1.2 2.1 1.3.3.1.4.1.6-.1.2-.2.6-.7.8-1 .2-.3.3-.2.6-.1.2.1 1.5.7 1.7.8.3.2.4.2.5.3.1.2.1.6-.1 1.2z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.octo-footer .octo-wa-button:hover,
.octo-footer .octo-wa-button:focus {
	background: color-mix(in srgb, var(--wp--preset--color--accent-2) 74%, #000);
	color: var(--wp--preset--color--base);
}

.octo-footer__bar {
	display: grid !important;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	column-gap: 32px;
	max-width: 1180px;
	margin: 28px auto 0;
	padding: 16px 0 4px;
	border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--base) 12%, transparent);
	color: color-mix(in srgb, var(--wp--preset--color--base) 55%, transparent);
	font-size: 13px;
}

.octo-footer__bar > p:not(.octo-footer__credit) {
	margin: 0;
}

.octo-footer__credit {
	justify-self: center;
	margin: 0;
	color: color-mix(in srgb, var(--wp--preset--color--base) 55%, transparent);
	font-size: 13px;
	text-align: center;
	white-space: nowrap;
}

.octo-footer__credit a {
	color: var(--wp--preset--color--base);
	font-weight: 700;
	text-decoration: none;
}

.octo-footer__credit a:hover {
	color: var(--wp--preset--color--turquoise);
}

.octo-footer__credit img.emoji {
	width: 1.25em !important;
	height: 1.25em !important;
	margin: 0 0.15em !important;
	vertical-align: -0.2em !important;
}

.octo-footer__legal,
.octo-footer__legal .wp-block-navigation-item__content {
	font-size: 10px;
}

.octo-footer__legal .wp-block-navigation__container {
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 8px 22px;
}

@media (width <= 900px) {
	.octo-footer {
		padding: 32px 20px 16px;
	}

	.octo-footer__inner {
		flex-wrap: wrap;
	}

	.octo-footer__brand {
		flex-basis: 100% !important;
	}
}

@media (width <= 640px) {
	.octo-footer__inner {
		display: block;
	}

	.octo-footer__bar {
		grid-template-columns: 1fr;
		justify-items: center;
		row-gap: 10px;
	}

	.octo-footer__legal .wp-block-navigation__container {
		flex-wrap: wrap;
		justify-content: center;
	}
}
