/*
 * Salisbury - Ticket Header widget (sc_ticket_header)
 *
 * Selectors + rules ported from the mockup source of truth:
 *   wp-content/themes/generatepress_child/mockups/ticket_page_draft1.html
 *   (nav + breadcrumbs CSS: lines 164-210)
 *
 * Palette tokens come from the shared stylesheet via the .sc-ticket-widget
 * wrapper. Every selector is scoped under .sc-ticket-widget.sc-ticket-header
 * so the rules never leak into the theme's global nav (#main_menu).
 */

.sc-ticket-widget.sc-ticket-header .sc-nav {
	background: var(--bg);
	padding: 14px 24px;
	border-bottom: 2px solid var(--accent);
	position: sticky;
	top: 0;
	z-index: 100;
}

.sc-ticket-widget.sc-ticket-header .sc-nav-inner {
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

/* When CSS sticky is broken (e.g. inside Elementor Theme Builder containers
 * with overflow/transform/contain), the JS shim swaps in .is-pinned. */
.sc-ticket-widget.sc-ticket-header .sc-nav.is-pinned {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
}

.sc-ticket-widget.sc-ticket-header .nav-logo {
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 20px;
	font-weight: 800;
	color: var(--text);
	letter-spacing: 2px;
	text-decoration: none;
	text-transform: uppercase;
	display: inline-flex;
	align-items: center;
}
.sc-ticket-widget.sc-ticket-header .nav-logo span {
	color: var(--accent);
}
.sc-ticket-widget.sc-ticket-header .nav-logo-img {
	max-height: var(--sc-logo-max-desktop, 40px);
	width: auto;
	display: block;
}

.sc-ticket-widget.sc-ticket-header .nav-right {
	display: flex;
	align-items: center;
	gap: 18px;
}

.sc-ticket-widget.sc-ticket-header .nav-events-link {
	font-family: 'Barlow', sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.5px;
	color: var(--muted);
	text-decoration: none;
	transition: color 0.2s;
}
.sc-ticket-widget.sc-ticket-header .nav-events-link:hover {
	color: var(--accent);
}

/* Scoped size override so the shared .hero-cta-wrap button fits the compact
 * header nav instead of the hero's full 56px line-height. Colors/font/hover
 * come from .hero-cta-wrap .tc_seating_map_button in sc-ticket-hero.css. */
.sc-ticket-widget.sc-ticket-header .hero-cta-wrap {
	display: inline-block;
}
.sc-ticket-widget.sc-ticket-header .hero-cta-wrap .tc_seating_map_button {
	display: inline-block !important;
	width: auto;
	font-size: 14px !important;
	line-height: 1.2 !important;
	padding: 10px 22px !important;
	box-shadow: none;
}

.sc-ticket-widget.sc-ticket-header .breadcrumbs {
	max-width: 1100px;
	margin: 0 auto;
	padding: 10px 24px;
	color: var(--muted);
	font-size: 13px;
	border-bottom: 1px solid var(--border);
}
.sc-ticket-widget.sc-ticket-header .breadcrumbs a {
	color: var(--accent);
	text-decoration: none;
}
.sc-ticket-widget.sc-ticket-header .breadcrumbs span {
	color: var(--text);
}

@media (max-width: 640px) {
	/* Drop the sticky/pinned nav on mobile - the sticky mobile CTA bar
	 * (sc_ticket_sticky_mobile_cta, also <=640px) already keeps the buy
	 * action in view, so a second sticky element would waste fold space. */
	.sc-ticket-widget.sc-ticket-header .sc-nav,
	.sc-ticket-widget.sc-ticket-header .sc-nav.is-pinned {
		position: static;
	}
	.sc-ticket-widget.sc-ticket-header .sc-nav {
		padding: 12px 16px;
	}
	.sc-ticket-widget.sc-ticket-header .sc-nav-inner {
		gap: 10px;
	}
	.sc-ticket-widget.sc-ticket-header .nav-logo {
		font-size: 17px;
		letter-spacing: 1.5px;
	}
	.sc-ticket-widget.sc-ticket-header .nav-logo-img {
		max-height: var(--sc-logo-max-mobile, 35px);
	}
	.sc-ticket-widget.sc-ticket-header .nav-events-link {
		display: none;
	}
	.sc-ticket-widget.sc-ticket-header .hero-cta-wrap .tc_seating_map_button {
		font-size: 12px !important;
		padding: 9px 16px !important;
		letter-spacing: 1.5px;
	}
	.sc-ticket-widget.sc-ticket-header .breadcrumbs {
		padding: 10px 16px;
	}
}
