/**
 * Footer - подвал сайта
 * Соответствует Figma: node-id=17-371
 * Использует переменные из variables.css
 */

.site-footer {
	background-color: var(--color-primary);
	padding: 45px var(--spacing-4xl);
	color: var(--color-white);
	text-align: left;
}

.footer-container {
	max-width: var(--container-content-width);
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: var(--spacing-xl);
}

/* Верхняя часть footer */
.footer-top {
	display: flex;
	justify-content: space-between;
	gap: 74px;
}

/* Левая колонка - логотип и юридическая информация */
.footer-brand {
	display: flex;
	flex-direction: column;
	gap: 42px;
	width: 315px;
	flex-shrink: 0;
}

.footer-logo {
	text-align: left;
}

.footer-logo img {
	width: 235px;
	height: auto;
}

.footer-legal {
	display: flex;
	flex-direction: column;
	gap: 42px;
}

.footer-company {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-xs);
}

.footer-company-name {
	font-family: var(--font-primary);
	font-size: var(--font-size-base);
	font-weight: 500;
	line-height: var(--line-height-relaxed);
	color: var(--color-white);
	margin: 0;
	text-align: left;
}

.footer-company-info {
	font-family: var(--font-primary);
	font-size: var(--font-size-base);
	font-weight: 500;
	line-height: var(--line-height-relaxed);
	color: var(--color-white);
	margin: 0;
	text-align: left;
}

/* Правая часть - навигация и контакты */
.footer-content {
	display: flex;
	justify-content: space-between;
	gap: var(--spacing-3xl);
	flex: 1;
}

/* Меню навигации */
.footer-nav {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-md);
	width: 101px;
	text-align: left;
}

.footer-nav a {
	font-family: var(--font-primary);
	font-size: var(--font-size-lg);
	font-weight: 700;
	line-height: var(--line-height-relaxed);
	color: var(--color-white);
	text-decoration: none;
	transition: opacity var(--transition-base);
}

.footer-nav a:hover {
	opacity: 0.8;
}

/* Раздел "Мы лечим" */
.footer-treatment {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-lg);
	width: 276px;
	text-align: left;
}

.footer-treatment-title {
	font-family: var(--font-primary);
	font-size: var(--font-size-2xl);
	font-weight: 500;
	line-height: var(--line-height-tight);
	color: var(--color-white);
	margin: 0;
}

.footer-treatment-list {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-md);
}

.footer-treatment-list a {
	font-family: var(--font-primary);
	font-size: var(--font-size-base);
	font-weight: 500;
	line-height: var(--line-height-relaxed);
	color: var(--color-white);
	text-decoration: none;
	transition: opacity var(--transition-base);
}

.footer-treatment-list a:hover {
	opacity: 0.8;
}

/* Контактный блок */
.footer-contacts {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-3xl);
	text-align: left;
}

/* Кнопки действий */
.footer-actions {
	display: flex;
	align-items: center;
	gap: 15px;
}

.footer-btn-primary {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	padding: 10px var(--spacing-md);
	background-color: var(--color-accent);
	color: var(--color-primary);
	border: 2px solid var(--color-accent);
	border-radius: var(--radius-pill);
	font-family: var(--font-primary);
	font-size: var(--font-size-md);
	font-weight: 500;
	text-decoration: none;
	transition: all var(--transition-base);
}

.footer-btn-primary:hover {
	background-color: var(--color-accent-hover);
	border-color: var(--color-accent-hover);
}

.footer-social-btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 44px;
	height: 44px;
	background-color: var(--color-white);
	border: 1px solid var(--color-white);
	border-radius: 50%;
	transition: all var(--transition-base);
}

.footer-social-btn:hover {
	background-color: rgba(255, 255, 255, 0.9);
	transform: scale(1.05);
}

.footer-social-btn img {
	width: 24px;
	height: 24px;
	object-fit: contain;
}

/* Контактная информация */
.footer-contact-item {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.footer-contact-label {
	font-family: var(--font-primary);
	font-size: var(--font-size-base);
	font-weight: 500;
	line-height: var(--line-height-relaxed);
	color: var(--color-white);
	margin: 0;
}

.footer-phone {
	font-family: var(--font-primary);
	font-size: var(--font-size-3xl);
	font-weight: 500;
	line-height: var(--line-height-tight);
	color: var(--color-white);
	text-decoration: none;
}

.footer-phone:hover {
	opacity: 0.9;
}

.footer-email {
	font-family: var(--font-primary);
	font-size: var(--font-size-base);
	font-weight: 500;
	line-height: var(--line-height-relaxed);
	color: var(--color-white);
	text-decoration: none;
}

.footer-email:hover {
	opacity: 0.8;
}

.footer-work-hours {
	font-family: var(--font-primary);
	font-size: var(--font-size-lg);
	font-weight: 700;
	line-height: var(--line-height-relaxed);
	color: var(--color-white);
	margin: 0;
}

/* Нижняя часть footer */
.footer-bottom {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-xl);
}

.footer-divider {
	width: 100%;
	height: 1px;
	background-color: var(--color-white);
}

.footer-disclaimer {
	display: flex;
	justify-content: space-between;
	gap: 10px;
}

.footer-disclaimer-item {
	width: 264px;
	font-family: var(--font-primary);
	font-size: var(--font-size-base);
	line-height: var(--line-height-relaxed);
	color: var(--color-white);
	text-align: left;
}

.footer-disclaimer-item p {
	margin: 0 0 var(--spacing-xs) 0;
	text-align: left;
}

.footer-disclaimer-item p:last-child {
	margin-bottom: 0;
}

.footer-disclaimer-item strong {
	font-weight: 800;
}

.footer-disclaimer-item a {
	color: var(--color-white);
	text-decoration: none;
}

.footer-disclaimer-item a:hover {
	opacity: 0.8;
}

/* Адаптивность */
@media (max-width: 1280px) {
	.site-footer {
		padding: var(--spacing-3xl) var(--spacing-2xl);
	}

	.footer-top {
		gap: var(--spacing-3xl);
	}

	.footer-content {
		gap: var(--spacing-3xl);
	}

	.footer-disclaimer {
		gap: var(--spacing-3xl);
	}
}

@media (max-width: 1024px) {
	.footer-top {
		flex-direction: column;
	}

	.footer-brand {
		width: 100%;
	}

	.footer-content {
		flex-wrap: wrap;
		gap: var(--spacing-3xl);
	}

	.footer-nav,
	.footer-treatment,
	.footer-contacts {
		width: auto;
		min-width: 200px;
	}

	.footer-disclaimer {
		flex-direction: column;
		gap: var(--spacing-xl);
	}

	.footer-disclaimer-item {
		width: 100%;
	}
}

@media (max-width: 768px) {
	.site-footer {
		padding: var(--spacing-2xl) var(--spacing-md);
	}

	.footer-legal {
		gap: var(--spacing-xl);
	}

	.footer-content {
		flex-direction: column;
	}

	.footer-phone {
		font-size: var(--font-size-xl);
	}

	.footer-treatment-title {
		font-size: 22px;
	}
}
