/* ==========================================================================
   Paide Vesi — Site Footer
   ========================================================================== */

.site-footer {
	background-color: var(--wp--preset--color--brand-01-dark);
	color: var(--wp--preset--color--gray-02);
}

.site-footer__inner {
	padding: calc(56px * var(--pv-ui-scale)) calc(58px * var(--pv-ui-scale));
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: calc(32px * var(--pv-ui-scale));
}

/* --------------------------------------------------------------------------
   Left column — company name + info row
   -------------------------------------------------------------------------- */

.site-footer__left {
	display: flex;
	flex-direction: column;
	gap: calc(20px * var(--pv-ui-scale));
}

.site-footer__logo {
	display: inline-block;
	line-height: 0;
	text-decoration: none;
}

.site-footer__logo img {
	display: block;
	width: calc(147px * var(--pv-ui-scale));
	height: calc(32px * var(--pv-ui-scale));
}

/* Text fallback */
.site-footer__logo span {
	font-family: var(--wp--preset--font-family--plus-jakarta-sans);
	font-weight: 500;
	font-size: calc(22.857px * var(--pv-ui-scale));
	letter-spacing: calc(-0.6857px * var(--pv-ui-scale));
	color: var(--wp--preset--color--white);
}

.site-footer__company {
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	color: var(--wp--preset--color--white);
	margin: 0;
}

.site-footer__info {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 0;
	font-family: var(--wp--preset--font-family--inter);
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	color: var(--wp--preset--color--gray-02);
}

/* Vertical divider between items */
.site-footer__info-item {
	display: flex;
	align-items: center;
}

.site-footer__info-item + .site-footer__info-item::before {
	content: '';
	display: inline-block;
	width: calc(1px * var(--pv-ui-scale));
	height: calc(12px * var(--pv-ui-scale));
	background-color: currentColor;
	opacity: 0.4;
	margin: 0 calc(12px * var(--pv-ui-scale));
	flex-shrink: 0;
}

.site-footer__info a {
	color: var(--wp--preset--color--gray-02);
	text-decoration: none;
	transition: color 0.2s ease;
}

.site-footer__info a:hover {
	color: var(--wp--preset--color--white);
}

.site-footer__info a:focus-visible {
	outline: 2px solid var(--wp--preset--color--brand-01);
	outline-offset: 2px;
	border-radius: calc(2px * var(--pv-ui-scale));
}

/* --------------------------------------------------------------------------
   Right column — footer menu
   -------------------------------------------------------------------------- */

.site-footer__nav {
	display: flex;
	align-items: center;
}

.site-footer__menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: calc(32px * var(--pv-ui-scale));
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-footer__menu li {
	margin: 0;
	padding: 0;
}

.site-footer__menu a {
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.5;
	color: var(--wp--preset--color--gray-02);
	text-decoration: none;
	transition: color 0.2s ease;
	white-space: nowrap;
}

.site-footer__menu a:hover {
	color: var(--wp--preset--color--white);
}

.site-footer__menu a:focus-visible {
	outline: 2px solid var(--wp--preset--color--brand-01);
	outline-offset: 2px;
	border-radius: calc(2px * var(--pv-ui-scale));
}

/* --------------------------------------------------------------------------
   Responsive — tablet
   -------------------------------------------------------------------------- */

@media (max-width: 900px) {
	.site-footer__inner {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* --------------------------------------------------------------------------
   Responsive — mobile
   -------------------------------------------------------------------------- */

@media (max-width: 580px) {
	.site-footer__inner {
		padding: calc(40px * var(--pv-ui-scale)) calc(24px * var(--pv-ui-scale));
	}

	/* Remove dividers when info items wrap to separate lines */
	.site-footer__info {
		flex-direction: column;
		align-items: flex-start;
		gap: calc(4px * var(--pv-ui-scale));
	}

	.site-footer__info-item + .site-footer__info-item::before {
		display: none;
	}

	.site-footer__menu {
		flex-direction: column;
		align-items: flex-start;
		gap: calc(12px * var(--pv-ui-scale));
	}
}
