/* ============================================
   Yell — подвал сайта
   ============================================ */

.yl-foot {
	background: var(--yell-ink, #15171B);
	color: #C9C4BA;
	font-family: 'Golos Text', system-ui, sans-serif;
	font-size: 14px;
	line-height: 22px;
	margin-top: 48px;
}
.yl-foot-in {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 24px;
}

.yl-foot-grid {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1fr;
	gap: 40px;
	padding: 52px 0 40px;
}

/* ---- бренд ---- */

.yl-foot-logo { display: inline-block; margin-bottom: 16px; }
.yl-foot-logo img { width: 128px; height: auto; display: block; }
.yl-foot-tag { margin: 0 0 14px; max-width: 36ch; color: #A8A399; }
.yl-foot-stats { margin: 0 0 20px; font-size: 13px; color: #8A857A; }
.yl-foot-stats strong { color: #F4F1EA; font-weight: 700; }
.yl-foot-stats span { margin: 0 4px; color: #5C5850; }
.yl-foot-mail { margin: 0 0 14px; font-size: 14px; }
/* !important — перебивает общее «p a { color: #0E5C52 !important }» из Дополнительных стилей */
.yl-foot .yl-foot-mail a { color: #FFFFFF !important; font-weight: 600; text-decoration: none; }
.yl-foot .yl-foot-mail a:hover,
.yl-foot .yl-foot-mail a:focus { color: var(--yell-accent, #FFC220) !important; text-decoration: underline; }

.yl-foot-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 20px;
	border-radius: 10px;
	background: var(--yell-accent, #FFC220);
	color: var(--yell-ink, #15171B) !important; /* перебивает footer a { color: inherit } из общих стилей */
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
}
.yl-foot-cta:hover,
.yl-foot-cta:focus {
	background: var(--yell-accent-hover, #F0B008);
	color: var(--yell-ink, #15171B) !important;
	text-decoration: none;
}

.yl-foot-soc { display: flex; gap: 8px; margin-top: 20px; }
.yl-foot-soc a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .07);
	color: #C9C4BA;
	transition: background .15s ease, color .15s ease;
}
.yl-foot-soc a:hover { background: var(--yell-accent, #FFC220); color: var(--yell-ink, #15171B); }

/* ---- колонки со ссылками ---- */

.yl-foot-col h3 {
	margin: 0 0 14px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: #8A857A;
}
.yl-foot-col ul { margin: 0; padding: 0; list-style: none; }
.yl-foot-col li { margin: 0 0 9px; }
.yl-foot-col a {
	display: inline-flex;
	align-items: baseline;
	gap: 7px;
	color: #C9C4BA;
	text-decoration: none;
}
.yl-foot-col a:hover { color: #FFFFFF; text-decoration: underline; }
.yl-foot-n { font-size: 12px; color: #6E6A62; }

/* ---- нижняя полоса ---- */

.yl-foot .yl-legal {
	background: transparent;
	border-top: 1px solid rgba(255, 255, 255, .08);
	padding: 18px 0 24px;
	font-size: 13px;
	color: #8A857A;
}
.yl-foot .yl-legal-c { color: #9A958B; }
.yl-foot .yl-legal-in {
	max-width: none;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 20px;
}
.yl-foot .yl-legal-nav { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-left: auto; }
.yl-foot .yl-legal a { color: #8A857A; text-decoration: none; }
.yl-foot .yl-legal a:hover { color: #F4F1EA; text-decoration: underline; }
.yl-foot-op { display: block; margin-top: 3px; color: #6E6A62; }

/* ---- планшет и телефон ---- */

@media (max-width: 991px) {
	.yl-foot-grid {
		grid-template-columns: 1fr 1fr;
		gap: 32px 24px;
		padding: 40px 0 32px;
	}
	.yl-foot-brand { grid-column: 1 / -1; }
}

@media (max-width: 575px) {
	.yl-foot-in { padding: 0 16px; }
	.yl-foot-grid { grid-template-columns: 1fr; gap: 8px; padding: 32px 0 8px; }
	.yl-foot-brand { margin-bottom: 16px; }
	.yl-foot-cta { width: 100%; }

	/* колонки сворачиваются в аккордеон — четыре списка подряд это два экрана */
	.yl-foot-col {
		border-top: 1px solid rgba(255, 255, 255, .08);
		padding: 0;
	}
	.yl-foot-col h3 {
		margin: 0;
		padding: 15px 26px 15px 0;
		position: relative;
		cursor: pointer;
		font-size: 13px;
		color: #C9C4BA;
	}
	.yl-foot-col h3::after {
		content: '';
		position: absolute;
		right: 4px;
		top: 50%;
		width: 8px;
		height: 8px;
		margin-top: -6px;
		border-right: 2px solid #8A857A;
		border-bottom: 2px solid #8A857A;
		transform: rotate(45deg);
		transition: transform .2s ease;
	}
	.yl-foot-col.is-open h3::after { transform: rotate(-135deg); margin-top: -2px; }
	.yl-foot-col ul { display: none; padding-bottom: 14px; }
	.yl-foot-col.is-open ul { display: block; }
	.yl-foot-col li { margin: 0 0 11px; }

	.yl-foot .yl-legal { margin-top: 20px; }
	.yl-foot .yl-legal-nav { margin-left: 0; }
}

@media (max-width: 575px) {
	.yl-foot-grid { gap: 0; }
	.yl-foot-col:last-of-type { border-bottom: 1px solid rgba(255, 255, 255, .08); }
	.yl-foot .yl-legal { margin-top: 4px; padding-top: 20px; border-top: 0; }
	.yl-foot .yl-legal-in { flex-direction: column; align-items: flex-start; gap: 12px; }
	.yl-foot .yl-legal-nav { flex-direction: column; align-items: flex-start; gap: 8px; }
	.yl-foot .yl-legal-nav span { display: none; }
}

.yl-foot-col .yl-foot-cookie {
	padding: 0;
	border: 0;
	background: none;
	color: #C9C4BA;
	font-family: inherit;
	font-size: 14px;
	line-height: 22px;
	cursor: pointer;
	text-align: left;
}
.yl-foot-col .yl-foot-cookie:hover { color: #FFFFFF; text-decoration: underline; }
