/* ============================================
Footer — подвал (Monoro)
============================================ */

/* Site Footer - Start */
.site-footer.bg-primary {
	position: relative;
	width: 100%;
	color: var(--white);
	overflow: hidden;
}

.site-footer .footer-main {
	position: relative;
	padding: 78px 0 40px;
	z-index: 1;
}
.site-footer .footer-main .container {
	padding: 0 var(--container-indent);
	row-gap: 60px;
	align-items: flex-start;
}

/* Each col-50 splits into 3 equal tracks so all 6 footer blocks line up evenly */
.footer-left,
.footer-right {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 40px;
}
.footer-left > *,
.footer-right > * {
	flex: 1 1 0;
	min-width: 0;
}
.footer-logo-block {
	display: flex;
	flex-direction: column;
}
.footer-logo-link {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	width: fit-content;
	color: var(--white);
}
.footer-logo-link span {
	font-size: 36px;
	font-family: var(--font-family-2);
	margin-top: 12px;
}
.footer-logo-emblem {
	width: 70px;
	max-width: 100%;
	height: auto;
}
.footer-right-spacer {
	/* empty 3rd track on the right col-50 so Legal/Spacer/Contacts align with Logo/Our/Collections */
}

.footer-menu-column {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.footer-menu-heading {
	font-family: var(--font-family-1);
	font-size: 14px;
	line-height: 20px;
	color: var(--white-48);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.footer-menu {
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.footer-menu li {
	list-style: none;
}
.footer-menu a {
	font-family: var(--font-family-1);
	font-size: 14px;
	line-height: 20px;
	color: var(--white);
	text-transform: uppercase;
	letter-spacing: 0.02em;
	transition: opacity 0.3s ease;
}
.footer-menu a:hover {
	opacity: 0.7;
}

.footer-contacts {
	display: flex;
	flex-direction: column;
	gap: 32px;
}
.footer-contact-label {
	font-family: var(--font-family-1);
	font-size: 14px;
	line-height: 20px;
	color: var(--white-48);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin-bottom: 16px;
}
.footer-contact-item {
	display: flex;
	flex-direction: column;
}
.footer-contact-value {
	font-family: var(--font-family-1);
	font-size: 24px;
	line-height: 34px;
	color: var(--white);
	transition: opacity 0.3s ease;
}
.footer-contact-value:hover {
	opacity: 0.8;
}

.footer-socials {
	display: flex;
	flex-direction: column;
}
.footer-socials-list {
	display: flex;
	align-items: center;
	gap: 8px;
}
.footer-social-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: var(--radius-max);
	background: var(--primary-light);
	transition: background 0.3s ease;
}
.footer-social-icon:hover {
	background: var(--accent);
}
.footer-social-icon img {
	width: 20px;
	height: 20px;
	object-fit: contain;
	filter: brightness(0) invert(1);
}

/* Decorative half-emblem on the right background — exactly half visible, low opacity so text reads on top */
.footer-decor-emblem {
	position: absolute;
	top: 50%;
	right: -220px;
	transform: translateY(-50%);
	width: 440px;
	height: 440px;
	opacity: 1;
	pointer-events: none;
	z-index: 0;
}
.footer-decor-emblem img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.site-footer .footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 32px var(--container-indent);
	gap: 20px;
}
.site-footer .footer-bottom > div {
	font-family: var(--font-family-1);
	font-size: 14px;
	line-height: 20px;
	color: var(--white-48);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.site-footer .footer-copyright {
	flex: 1;
	text-align: left;
}
.site-footer .footer-rights {
	flex: 1;
	text-align: center;
}
.site-footer .footer-artko {
	flex: 1;
	text-align: right;
}

@media (max-width: 1680px) {
	.footer-decor-emblem {
		width: 360px;
		height: 360px;
		right: -180px;
	}
	.footer-left, .footer-right {
		gap: 0px;
	}
	.footer-contacts {
		min-width: max-content;
	}
	.footer-social-icon {
		width: 42px;
		height: 42px;
	}
	.footer-social-icon img {
		width: 18px;
		height: 18px;
	}
}

@media (max-width: 1279px) {
	.site-footer .footer-main {
		padding: 40px 0 30px;
	}
	.site-footer .footer-main .container {
		row-gap: 40px;
	}

	/* Left col-50: Logo spans full width, then 2 menu columns side-by-side */
	.footer-left {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 40px;
	}
	.footer-left > * {
		flex: initial;
		min-width: unset;
	}
	.footer-logo-block {
		grid-column: 1 / -1;
		width: 100%;
		align-items: center;
	}
	.footer-logo-link {
		align-items: center;
		margin-bottom: 20px;
	}

	/* Right col-50: Legal first, then Contacts block (Phone+Email side-by-side, Follow us below) */
	.footer-right {
		flex-direction: column;
		gap: 40px;
	}
	.footer-right > * {
		flex: initial;
		min-width: unset;
	}
	.footer-right-spacer {
		display: none;
	}

	.footer-contacts {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 24px 20px;
		justify-content: space-between;
		width: 100%;
	}

	.footer-contact-item {
		order: 1;
	}
	.footer-socials {
		grid-column: 1 / -1;
		order: 2;
	}
	.footer-contact-label {
		margin-bottom: 8px;
	}
	.footer-contact-value {
		font-size: 16px;
		line-height: 22px;
	}
	.footer-social-icon {
		width: 48px;
		height: 48px;
	}

	.footer-decor-emblem {
		display: none;
	}

	/* Copyright: keep 3 stacked lines but breathe more */
	.site-footer .footer-bottom {
		flex-direction: column;
		gap: 20px;
		padding: 24px var(--container-indent);
	}
	.site-footer .footer-copyright,
	.site-footer .footer-rights,
	.site-footer .footer-artko {
		flex: initial;
		text-align: center;
	}
}
/* Site Footer - End */
