/* Footer styles for ATTILA BAR */

.tlh-footer {
	background:
		radial-gradient(circle at top, rgba(245, 241, 233, 0.06), transparent 55%),
		var(--color-surface);
	border-top: 1px solid var(--color-border-subtle);
	margin-top: var(--space-16);
}

.tlh-footer__inner {
	display: flex;
	flex-direction: column;
	gap: var(--space-8);
	padding-top: var(--space-10);
	padding-bottom: var(--space-8);
}

.tlh-footer__brand-block {
	display: flex;
	align-items: center;
	gap: var(--space-4);
}

.tlh-footer__brand-mark {
	width: 44px;
	height: 44px;
	border-radius: 999px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-display);
	font-size: 0.9rem;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	border: 1px solid rgba(182, 139, 42, 0.7);
	background:
		radial-gradient(
			circle at 25% 20%,
			rgba(245, 241, 233, 0.12),
			transparent 55%
		),
		radial-gradient(circle at 70% 80%, rgba(111, 28, 47, 0.4), transparent 60%),
		var(--color-graphite);
	box-shadow: var(--shadow-soft);
}

.tlh-footer__brand-name {
	font-family: var(--font-display);
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-size: var(--font-size-sm);
	margin-bottom: 2px;
}

.tlh-footer__brand-desc {
	font-size: var(--font-size-sm);
	color: var(--color-text-muted);
}

.tlh-footer__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--space-6);
}

.tlh-footer__heading {
	font-size: var(--font-size-sm);
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--color-text-muted);
	margin-bottom: var(--space-3);
}

.tlh-footer__list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.tlh-footer__list li + li {
	margin-top: var(--space-2);
}

.tlh-footer__list a {
	font-size: var(--font-size-sm);
	color: var(--color-text);
}

.tlh-footer__list a:hover,
.tlh-footer__list a:focus-visible {
	color: var(--color-primary);
}

.tlh-footer__text {
	font-size: var(--font-size-sm);
	color: var(--color-text-muted);
}

.tlh-footer__bottom {
	border-top: 1px solid var(--color-border-subtle);
	background: rgba(5, 5, 7, 0.95);
}

.tlh-footer__bottom-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	padding-top: var(--space-3);
	padding-bottom: var(--space-3);
}

.tlh-footer__copy,
.tlh-footer__age {
	font-size: var(--font-size-xs);
	color: var(--color-text-muted);
}

/* Cookie banner */

.tlh-cookie {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 60;
	background: linear-gradient(
		to top,
		rgba(11, 11, 13, 0.98),
		rgba(11, 11, 13, 0.94)
	);
	border-top: 1px solid rgba(245, 241, 233, 0.16);
	transform: translateY(100%);
	opacity: 0;
	visibility: hidden;
	transition:
		transform var(--transition-normal),
		opacity var(--transition-normal),
		visibility var(--transition-normal);
}

.tlh-cookie--visible {
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
}

.tlh-cookie__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-6);
	padding-top: var(--space-3);
	padding-bottom: var(--space-3);
}

.tlh-cookie__title {
	font-size: var(--font-size-sm);
	letter-spacing: 0.16em;
	text-transform: uppercase;
	margin-bottom: var(--space-1);
}

.tlh-cookie__description {
	font-size: var(--font-size-sm);
}

.tlh-cookie__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2);
}

.tlh-cookie__btn {
	font-size: var(--font-size-xs);
}

/* Responsive adjustments */

@media (max-width: 900px) {
	.tlh-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.tlh-footer__inner {
		padding-top: var(--space-8);
	}

	.tlh-footer__grid {
		grid-template-columns: 1fr;
	}

	.tlh-footer__bottom-inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.tlh-cookie__inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.tlh-cookie__actions {
		width: 100%;
	}

	.tlh-cookie__btn {
		flex: 1 1 auto;
		justify-content: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	.tlh-cookie {
		transition: none;
	}
}
