/**
 * MARA Theme — Top Bar
 *
 * Non-sticky utility strip. Primary navigation remains independently sticky.
 */

.top-bar {
	position: relative;
	z-index: 90;
	background-color: #111111;
	color: rgba(255, 255, 255, 0.88);
	font-size: 0.8125rem;
	line-height: 1.4;
	border-bottom: 2px solid var(--mara-primary);
}

.top-bar__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--mara-space-sm) var(--mara-space-md);
	min-height: var(--mara-top-bar-height);
	padding-block: var(--mara-space-sm);
}

.top-bar__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--mara-space-sm) var(--mara-space-md);
	min-width: 0;
}

.top-bar__location {
	display: none;
	align-items: center;
	gap: var(--mara-space-xs);
	margin: 0;
	color: rgba(255, 255, 255, 0.88);
}

.top-bar__contact {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--mara-space-sm) var(--mara-space-md);
	margin: 0;
	padding: 0;
	list-style: none;
}

.top-bar__contact-item {
	margin: 0;
}

.top-bar__icon {
	flex-shrink: 0;
	opacity: 0.75;
}

.top-bar__link {
	display: inline-flex;
	align-items: center;
	gap: var(--mara-space-xs);
	color: rgba(255, 255, 255, 0.88);
	text-decoration: none;
	font-weight: 500;
	border-radius: 2px;
	transition: color var(--mara-transition), opacity var(--mara-transition);
}

.top-bar__link:hover {
	color: #ffffff;
}

.top-bar__link:focus {
	outline: none;
}

.top-bar__link:focus-visible {
	color: var(--mara-secondary);
	outline: 2px solid var(--mara-secondary);
	outline-offset: 3px;
}

.top-bar__actions {
	display: flex;
	align-items: center;
	gap: var(--mara-space-md);
	margin-left: auto;
}

.top-bar__nav {
	display: none;
}

.top-bar__menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--mara-space-md) var(--mara-space-lg);
	margin: 0;
	padding: 0;
	list-style: none;
}

.top-bar__menu-item {
	margin: 0;
}

.top-bar__menu .top-bar__link,
.top-bar__menu a {
	color: rgba(255, 255, 255, 0.88);
	font-weight: 500;
	text-decoration: none;
	border-radius: 2px;
	transition: color var(--mara-transition);
}

.top-bar__menu .top-bar__link:hover,
.top-bar__menu a:hover {
	color: var(--mara-secondary);
}

.top-bar__menu .top-bar__link:focus,
.top-bar__menu a:focus {
	outline: none;
}

.top-bar__menu .top-bar__link:focus-visible,
.top-bar__menu a:focus-visible {
	color: var(--mara-secondary);
	outline: 2px solid var(--mara-secondary);
	outline-offset: 3px;
}

.top-bar__social {
	display: none;
	align-items: center;
	gap: var(--mara-space-sm);
	margin: 0;
	padding: 0;
	list-style: none;
}

.top-bar__social-item {
	margin: 0;
}

.top-bar__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	color: rgba(255, 255, 255, 0.88);
	border-radius: 2px;
	transition: color var(--mara-transition), background-color var(--mara-transition);
}

.top-bar__social-link:hover {
	color: var(--mara-secondary);
}

.top-bar__social-link:focus {
	outline: none;
}

.top-bar__social-link:focus-visible {
	color: var(--mara-secondary);
	outline: 2px solid var(--mara-secondary);
	outline-offset: 2px;
}

.top-bar__social-icon {
	display: block;
}

/* Tablet+: show location + utility nav */
@media (min-width: 768px) {
	.top-bar__location {
		display: inline-flex;
	}

	.top-bar__nav {
		display: block;
	}
}

/* Desktop: room for social + fuller contact row */
@media (min-width: 1024px) {
	.top-bar__inner {
		padding-block: 0;
		flex-wrap: nowrap;
	}

	.top-bar__social {
		display: flex;
	}
}

/* Narrow phones: keep contact readable, hide long email if needed */
@media (max-width: 479px) {
	.top-bar__contact-item:last-child .top-bar__link span {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}
}
