/* ================================================================
   AciD Corrosive — Custom CSS
   Creative overrides on top of Canvas theme
================================================================= */

/* ---- Variables ---- */
:root {
	--acid-green:      rgb(0, 150, 50);
	--acid-green-dim:  rgba(0, 150, 50, 0.12);
	--acid-green-glow: rgba(0, 150, 50, 0.35);
	--dark-bg:         #080808;
	--dark-card:       rgba(255,255,255,0.03);
	--dark-border:     rgba(255,255,255,0.07);
}

/* ---- Smooth scroll ---- */
html { scroll-behavior: smooth; }

/* Keep site content above EQ background layer */
#wrapper {
	position: relative;
	z-index: 3;
	background: transparent;
}

body.stretched.dark {
	background: radial-gradient(circle at 18% 18%, #0f1d15 0%, #090f0b 55%, #060906 100%) fixed;
}

/* ---- Custom scrollbar ---- */
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: #090909; }
::-webkit-scrollbar-thumb { background: var(--acid-green); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgb(0,180,60); }

/* ---- Text selection ---- */
::selection { background: var(--acid-green); color: #fff; }

/* ---- Mobile overlay ---- */
@media screen and (max-width: 992px) {
	.mobilebg { background: rgba(0,0,0,0.55); padding: 1rem; border-radius: 8px; }
}

/* ================================================================
   NAV — slim, sticky, uppercase, green underline indicator
================================================================= */
#header {
	background: rgba(6,6,6,0.93) !important;
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	border-bottom: 1px solid rgba(255,255,255,0.08) !important;
	transition: background 0.4s, box-shadow 0.4s, border-color 0.4s;
}
#header-wrap { background: transparent !important; }
#header.sticky-header { box-shadow: 0 4px 40px rgba(0,0,0,0.6); }

/* Homepage — transparent nav over hero, becomes solid on scroll */
.home-page #header {
	background: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border-bottom-color: transparent !important;
	box-shadow: none !important;
}
.home-page #header.sticky-header {
	background: rgba(6,6,6,0.93) !important;
	backdrop-filter: blur(18px) !important;
	-webkit-backdrop-filter: blur(18px) !important;
	border-bottom-color: rgba(255,255,255,0.08) !important;
	box-shadow: 0 4px 40px rgba(0,0,0,0.6) !important;
}

/* Nav links */
.menu-container > .menu-item > .menu-link {
	position: relative !important;
	padding: 0 18px !important;
	background: transparent !important;
}

.primary-menu,
.primary-menu .menu-container,
.menu-container,
.menu-item,
.menu-link {
	background: transparent !important;
	box-shadow: none !important;
}

.menu-container > .menu-item > .menu-link > div {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 0.74rem !important;
	font-weight: 700 !important;
	letter-spacing: 3.8px !important;
	text-transform: uppercase !important;
	color: rgba(255,255,255,0.45) !important;
	transition: color 0.25s, text-shadow 0.25s, transform 0.25s !important;
}
.menu-container > .menu-item > .menu-link > div::before {
	content: '\266B';
	display: inline-block;
	margin-right: 6px;
	font-size: 0.6rem;
	opacity: 0;
	transform: translateY(-2px) scale(0.92);
	color: rgba(95,255,155,0.95);
	transition: opacity 0.22s ease, transform 0.22s ease;
}
/* Animated green underline */
.menu-container > .menu-item > .menu-link::after {
	content: '';
	position: absolute;
	bottom: -1px;
	left: 50%;
	width: 0;
	height: 3px;
	background: linear-gradient(90deg, rgba(0,130,45,0), rgba(70,255,140,0.95), rgba(0,130,45,0));
	transform: translateX(-50%);
	transition: width 0.35s ease, filter 0.35s ease;
	border-radius: 1px;
}

.menu-container > .menu-item > .menu-link::before {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: 0;
	height: 115%;
	transform: translate(-50%, -50%);
	background: radial-gradient(circle, rgba(0,180,60,0.26) 0%, rgba(0,180,60,0) 72%);
	opacity: 0;
	transition: width 0.35s ease, opacity 0.35s ease;
	pointer-events: none;
}
.menu-container > .menu-item:hover > .menu-link > div,
.menu-container > .menu-item.current > .menu-link > div,
.menu-container > .menu-item.active > .menu-link > div {
	color: var(--acid-green) !important;
	text-shadow: 0 0 14px rgba(0,150,50,0.45);
	transform: translateY(-1px);
	animation: navPulse 0.42s ease;
}
.menu-container > .menu-item:hover > .menu-link::after,
.menu-container > .menu-item.current > .menu-link::after,
.menu-container > .menu-item.active > .menu-link::after {
	width: 65%;
	filter: drop-shadow(0 0 10px rgba(70,255,140,0.55));
}

.menu-container > .menu-item:hover > .menu-link::before,
.menu-container > .menu-item.current > .menu-link::before,
.menu-container > .menu-item.active > .menu-link::before {
	width: 92%;
	opacity: 1;
}
.menu-container > .menu-item:hover > .menu-link > div::before,
.menu-container > .menu-item.current > .menu-link > div::before,
.menu-container > .menu-item.active > .menu-link > div::before {
	opacity: 1;
	transform: translateY(0) scale(1);
	animation: navNoteBounce 0.38s ease;
}

@keyframes navNoteBounce {
	0% { transform: translateY(-5px) scale(0.7); opacity: 0; }
	100% { transform: translateY(0) scale(1); opacity: 1; }
}

@keyframes navPulse {
	0% { text-shadow: 0 0 0 rgba(0,150,50,0.0); }
	100% { text-shadow: 0 0 14px rgba(0,150,50,0.45); }
}

.menu-container > .menu-item:hover > .menu-link,
.menu-container > .menu-item.current > .menu-link,
.menu-container > .menu-item.active > .menu-link {
	background: transparent !important;
}
/* Logo */
#logo a { transition: opacity 0.25s; }
#logo a:hover { opacity: 0.75; }
/* Hamburger — green bars */
.cnvs-hamburger-inner,
.cnvs-hamburger-inner::before,
.cnvs-hamburger-inner::after { background-color: var(--acid-green) !important; }

@media (max-width: 991.98px) {
	#logo {
		position: relative;
		z-index: 1201;
	}

	.primary-menu-trigger {
		position: absolute !important;
		right: 0px !important;
		left: auto !important;
		top: 25px !important;
		transform: translateY(0) !important;
		margin: 0 !important;
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		border-radius: 999px;
		backdrop-filter: blur(6px);
		-webkit-backdrop-filter: blur(6px);
		transition: transform 0.24s ease, box-shadow 0.24s ease, background 0.24s ease;
		z-index: 1202;
	}

	.primary-menu-trigger:hover {
		transform: translateY(-1px) !important;
		box-shadow: 0 10px 22px rgba(0,0,0,0.45);
	}

	.primary-menu-trigger.primary-menu-trigger-active,
	body.primary-menu-open .primary-menu-trigger,
	body.is-expanded-menu .primary-menu-trigger.primary-menu-trigger-active {
		right: 0px !important;
		left: auto !important;
		top: 25px !important;
		transform: translateY(0) !important;
	}

	.primary-menu-trigger .cnvs-hamburger,
	.primary-menu-trigger .cnvs-hamburger-box {
		margin: 0 !important;
		transition: transform 0.28s ease;
	}

	body.is-expanded-menu .primary-menu-trigger .cnvs-hamburger {
		transform: rotate(90deg);
	}

	.is-expanded-menu .menu-container > .menu-item {
		opacity: 0;
		transform: translateY(8px) scale(0.98);
		animation: mobileMenuItemIn 0.38s cubic-bezier(0.18, 0.82, 0.3, 1) forwards;
	}

	.is-expanded-menu .menu-container > .menu-item:nth-child(1) { animation-delay: 0.04s; }
	.is-expanded-menu .menu-container > .menu-item:nth-child(2) { animation-delay: 0.08s; }
	.is-expanded-menu .menu-container > .menu-item:nth-child(3) { animation-delay: 0.12s; }
	.is-expanded-menu .menu-container > .menu-item:nth-child(4) { animation-delay: 0.16s; }
	.is-expanded-menu .menu-container > .menu-item:nth-child(5) { animation-delay: 0.2s; }
	.is-expanded-menu .menu-container > .menu-item:nth-child(6) { animation-delay: 0.24s; }

	.is-expanded-menu .menu-container > .menu-item > .menu-link,
	.is-expanded-menu .menu-container > .menu-item > .menu-link > div {
		text-align: center !important;
		justify-content: center !important;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}

	.is-expanded-menu .menu-container > .menu-item > .menu-link {
		display: flex !important;
		align-items: center;
		justify-content: center;
	}

	.is-expanded-menu .menu-container > .menu-item > .menu-link > div {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		text-align:center;
	}
}

@keyframes mobileMenuItemIn {
	0% {
		opacity: 0;
		transform: translateY(8px) scale(0.98);
	}
	100% {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

/* ================================================================
   PAGE HERO  — shared dark hero used on inner pages
================================================================= */
.page-hero {
	position: relative;
	background: rgba(5,5,5,0.74);
	padding: 90px 0 60px;
	overflow: hidden;
	border-bottom: 1px solid rgba(0,150,50,0.12);
}

#content {
	background: rgba(5,5,5,0.8);
}
.page-hero .container {
	position: relative;
	z-index: 2;
}
.page-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(ellipse at 25% 60%, rgba(0,150,50,0.06) 0%, transparent 65%);
	pointer-events: none;
}
.page-hero-label {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.6rem;
	font-weight: 700;
	letter-spacing: 5px;
	text-transform: uppercase;
	color: var(--acid-green);
	margin-bottom: 1rem;
	display: block;
}
.page-hero-title {
	font-size: clamp(2.4rem, 7vw, 5rem);
	font-weight: 800;
	line-height: 1.05;
	color: #fff;
	margin: 0 0 1rem;
	font-family: 'Poppins', sans-serif;
}
.page-hero-sub {
	font-size: 0.9rem;
	color: rgba(255,255,255,0.38);
	letter-spacing: 1px;
}
.page-hero-breadcrumb {
	display: flex;
	gap: 0.5rem;
	align-items: center;
	margin-top: 2.5rem;
	font-size: 0.7rem;
	letter-spacing: 1.5px;
	font-family: 'Montserrat', sans-serif;
	text-transform: uppercase;
}
.page-hero-breadcrumb a { color: var(--acid-green); text-decoration: none; opacity: 0.8; transition: opacity 0.2s; }
.page-hero-breadcrumb a:hover { opacity: 1; }
.page-hero-breadcrumb .sep { color: #333; }
.page-hero-breadcrumb .crumb-current { color: #444; }

/* ================================================================
   EQ BARS — CSS animated equalizer (music page)
================================================================= */
.eq-bars {
	display: flex;
	align-items: flex-end;
	gap: 4px;
	height: 36px;
	margin-top: 1.75rem;
}
.eq-bars span {
	display: block;
	width: 4px;
	background: var(--acid-green);
	border-radius: 2px 2px 0 0;
	opacity: 0.65;
	animation: eq-bounce 1.4s ease-in-out infinite;
}
.eq-bars span:nth-child(1) { height: 10px; animation-delay: 0.00s; }
.eq-bars span:nth-child(2) { height: 26px; animation-delay: 0.10s; }
.eq-bars span:nth-child(3) { height: 18px; animation-delay: 0.20s; }
.eq-bars span:nth-child(4) { height: 34px; animation-delay: 0.15s; }
.eq-bars span:nth-child(5) { height: 14px; animation-delay: 0.25s; }
.eq-bars span:nth-child(6) { height: 30px; animation-delay: 0.05s; }
.eq-bars span:nth-child(7) { height: 20px; animation-delay: 0.30s; }
.eq-bars span:nth-child(8) { height: 12px; animation-delay: 0.18s; }
@keyframes eq-bounce {
	0%, 100% { transform: scaleY(0.35); opacity: 0.4; }
	50%       { transform: scaleY(1);   opacity: 0.9; }
}

/* ================================================================
   SECTION TAG — "NEW DROPS" style inline label
================================================================= */
.section-tag {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.6rem;
	font-weight: 700;
	letter-spacing: 4px;
	text-transform: uppercase;
	color: var(--acid-green);
	margin-bottom: 0.6rem;
}
.section-tag::before {
	content: '';
	display: block;
	width: 20px;
	height: 2px;
	background: var(--acid-green);
	border-radius: 1px;
}

/* Heading overrides */
.heading-block h2::after, .heading-block h3::after { background: var(--acid-green) !important; }
.heading-block h2, .heading-block h3 { color: #fff; }
.color { color: var(--acid-green) !important; }

/* Breadcrumb */
.breadcrumb-item a { color: var(--acid-green); text-decoration: none; opacity: 0.8; transition: opacity 0.2s; }
.breadcrumb-item a:hover { opacity: 1; }
.breadcrumb-item + .breadcrumb-item::before { color: #444; }

/* ================================================================
   VIDEO PAGE — card grid
================================================================= */
.video-grid .video-card {
	border-radius: 10px;
	overflow: hidden;
	background: #101010;
	border: 1px solid var(--dark-border);
	transition: transform 0.3s, box-shadow 0.3s;
}
.video-grid .video-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 14px 45px rgba(0,150,50,0.18);
}
.video-card-thumb {
	position: relative;
	aspect-ratio: 16/9;
	overflow: hidden;
}
.video-card-thumb img {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform 0.4s;
}
.video-grid .video-card:hover .video-card-thumb img { transform: scale(1.06); }

.video-card-play {
	position: absolute; inset: 0;
	display: flex; align-items: center; justify-content: center;
	background: rgba(0,0,0,0.42);
	opacity: 0;
	transition: opacity 0.3s;
}
.video-grid .video-card:hover .video-card-play { opacity: 1; }
.video-card-play-btn {
	width: 54px; height: 54px;
	border-radius: 50%;
	background: var(--acid-green);
	display: flex; align-items: center; justify-content: center;
	color: #fff; font-size: 1.35rem;
	text-decoration: none;
	box-shadow: 0 0 0 9px rgba(0,150,50,0.18);
	transition: transform 0.2s, background 0.2s;
}
.video-card-play-btn:hover { transform: scale(1.1); background: rgb(0,120,40); color: #fff; }
.video-card-body { padding: 0.85rem 1rem; }
.video-card-title {
	font-size: 0.88rem; font-weight: 600; color: #fff;
	margin: 0;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
/* Featured video card */
.video-featured {
	border-radius: 12px; overflow: hidden;
	background: #0d0d0d;
	border: 1px solid rgba(0,150,50,0.25);
	margin-bottom: 2.5rem;
}
.video-featured .video-card-thumb { aspect-ratio: 16/9; }
.video-featured .video-card-body {
	padding: 1.1rem 1.4rem;
	border-top: 1px solid rgba(0,150,50,0.12);
	display: flex; align-items: center; gap: 1rem;
}
.video-featured .video-card-title { font-size: 1rem; white-space: normal; }
.video-featured-badge {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.55rem; font-weight: 700; letter-spacing: 3px;
	text-transform: uppercase; color: var(--acid-green);
	white-space: nowrap;
	border: 1px solid rgba(0,150,50,0.4);
	padding: 3px 8px; border-radius: 3px;
}

/* ================================================================
   BIO PAGE
================================================================= */
.bio-quote-section {
	background: #040404;
	padding: 64px 0;
	border-bottom: 1px solid rgba(255,255,255,0.04);
	position: relative;
	overflow: hidden;
	text-align: center;
}
.bio-quote-section::before {
	content: '\201C';
	position: absolute;
	top: -0.15em; left: -0.04em;
	font-size: 20rem; line-height: 1;
	color: rgba(0,150,50,0.04);
	font-family: Georgia, serif;
	pointer-events: none; user-select: none;
}
.bio-quote-text {
	font-family: 'Poppins', sans-serif;
	font-size: clamp(1rem, 2.5vw, 1.35rem);
	font-style: italic;
	color: rgba(255,255,255,0.7);
	line-height: 1.75;
	max-width: 700px;
	margin: 0 auto;
}
.bio-quote-cite {
	display: block;
	margin-top: 1.25rem;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.65rem;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--acid-green);
}
/* Bio cards */
.bio-card {
	border-radius: 12px;
	overflow: hidden;
	position: relative;
	min-height: 360px;
	background: #111;
	cursor: default;
}
.bio-card-img {
	position: absolute; inset: 0;
	background-size: cover; background-position: center top;
	transition: transform 0.55s ease;
}
.bio-card:hover .bio-card-img { transform: scale(1.05); }
.bio-card-overlay {
	position: absolute; inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,0.93) 0%, rgba(0,0,0,0.2) 55%, transparent 100%);
	display: flex; flex-direction: column; justify-content: flex-end;
	padding: 1.6rem;
	transition: background 0.35s;
}
.bio-card:hover .bio-card-overlay {
	background: linear-gradient(to top, rgba(0,60,18,0.92) 0%, rgba(0,0,0,0.35) 60%, transparent 100%);
}
.bio-card-tag {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.58rem; font-weight: 700; letter-spacing: 3px;
	text-transform: uppercase; color: var(--acid-green);
	margin-bottom: 0.45rem;
}
.bio-card-text {
	font-size: 0.83rem; color: rgba(255,255,255,0.72); line-height: 1.65;
	margin: 0;
}

/* ================================================================
   CREW PAGE — glass cards
================================================================= */
.crew-glass-card {
	border-radius: 14px;
	overflow: hidden;
	background: rgba(255,255,255,0.025);
	border: 1px solid rgba(255,255,255,0.07);
	transition: transform 0.35s, box-shadow 0.35s, border-color 0.35s;
}
.crew-glass-card:hover {
	transform: translateY(-7px);
	box-shadow: 0 24px 60px rgba(0,0,0,0.5), 0 0 0 1px rgba(0,150,50,0.28);
	border-color: rgba(0,150,50,0.28);
}
.crew-glass-img {
	position: relative;
	aspect-ratio: 3/4;
	overflow: hidden;
}
.crew-glass-img img {
	width: 100%; height: 100%;
	object-fit: cover; object-position: top center;
	transition: transform 0.5s, filter 0.5s;
	filter: grayscale(25%);
}
.crew-glass-card:hover .crew-glass-img img { transform: scale(1.04); filter: grayscale(0%); }
.crew-glass-img::after {
	content: '';
	position: absolute; bottom: 0; left: 0; right: 0; height: 45%;
	background: linear-gradient(to top, rgba(0,0,0,0.75), transparent);
	pointer-events: none;
}
.crew-glass-body {
	padding: 1.4rem 1.5rem;
	border-top: 1px solid rgba(0,150,50,0.12);
}
.crew-glass-name {
	font-family: 'Poppins', sans-serif;
	font-size: 1.05rem; font-weight: 700; color: #fff;
	margin-bottom: 0.35rem;
}
.crew-glass-quote {
	font-size: 0.78rem; color: rgba(255,255,255,0.45);
	line-height: 1.65; font-style: italic; margin-bottom: 1.1rem;
}
.crew-glass-socials { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.crew-social-btn {
	width: 32px; height: 32px;
	border-radius: 50%;
	background: rgba(255,255,255,0.05);
	border: 1px solid rgba(255,255,255,0.09);
	display: flex; align-items: center; justify-content: center;
	color: rgba(255,255,255,0.5); font-size: 0.7rem;
	text-decoration: none;
	transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.crew-social-btn:hover {
	background: var(--acid-green); border-color: var(--acid-green); color: #fff;
}

/* ================================================================
   AUDIO PLAYER
================================================================= */
.mejs__time-current,
.mejs__horizontal-volume-current {
	background: var(--acid-green) !important;
}

.mejs__container {
	width: 100% !important;
	max-width: 100vw !important;
	height: 63px !important;
	border: 1px solid rgba(0,150,50,0.38) !important;
	border-top: 2px solid var(--acid-green) !important;
	border-radius: 14px 14px 0 0;
	overflow: hidden;
	box-shadow: 0 -12px 34px rgba(0,0,0,0.5);
	background: #08120c;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

/* Track artwork */
.mejs-track-artwork {
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	float: none !important;
	width: 63px !important;
	height: 63px !important;
	overflow: hidden !important;
	z-index: 100002 !important;
	pointer-events: none !important;
	flex-shrink: 0;
}
.mejs-track-artwork img {
	width: 63px !important;
	height: 63px !important;
	object-fit: cover !important;
	display: block !important;
}
.mejs-track-details {
	position: absolute !important;
	left: 67px !important;
	top: 0 !important;
	height: 63px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	z-index: 100002 !important;
	pointer-events: none !important;
	max-width: clamp(130px, 17vw, 210px);
	overflow: hidden;
}
.mejs-track-details h3 {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.88rem;
	font-weight: 700;
	color: #fff;
	margin: 0 0 3px;
	line-height: 1.2;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	letter-spacing: 0.4px;
}
.mejs-track-details h3 span {
	display: block;
	font-size: 0.72rem;
	color: var(--acid-green);
	font-weight: 400;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.mejs__controls {
	display: flex !important;
	align-items: center !important;
	padding-left: clamp(170px, 20vw, 250px) !important;
	padding-right: 10px !important;
	height: 63px !important;
	box-sizing: border-box;
	overflow: hidden !important;
	background: #0a1610 !important;
	border-top: 1px solid rgba(0,150,50,0.15);
}

.mejs__time-rail {
	flex: 1 1 auto !important;
	width: auto !important;
	min-width: 120px !important;
	max-width: 100% !important;
	height: 40px !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Only the track line itself gets vertically centred inside the 40px rail */
.mejs__time-total {
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	height: 6px !important;
	margin-top: 0 !important;
	border-radius: 999px !important;
	background: rgba(255,255,255,0.22) !important;
}

/* loaded/current live INSIDE total — keep them there */
.mejs__time-loaded {
	position: absolute !important;
	top: 0 !important;
	height: 100% !important;
	margin-top: 0 !important;
	border-radius: 999px !important;
	background: rgba(0, 150, 50, 0.35) !important;
}

.mejs__time-current {
	position: absolute !important;
	top: 0 !important;
	height: 100% !important;
	margin-top: 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(90%, rgba(0, 150, 50, 1) 0%, rgb(91, 228, 0) 50%);
}

.mejs__time-handle {
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
}

.mejs__time-handle-content {
	background: var(--acid-green) !important;
}

.mejs-track-nav {
	margin: 0 4px;
	display: inline-flex;
	align-items: center;
	gap: 2px;
	height: 63px;
}

.mejs-track-nav button {
	width: 32px;
	height: 40px;
	margin: 0;
	border: 0;
	background: transparent;
	color: rgba(245,255,249,0.9);
	border-radius: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.74rem;
	padding: 0;
	line-height: 1;
	cursor: pointer;
	opacity: 0.9;
	transition: opacity 0.22s ease, color 0.22s ease;
}

.mejs-track-nav button:hover {
	color: #fff;
	opacity: 1;
	box-shadow: none;
}

.mejs-track-nav button i {
	pointer-events: none;
}

.mejs-upcoming {
	position: static !important;
	transform: none !important;
	margin-left: 8px;
	flex: 0 0 clamp(150px, 16vw, 205px);
	width: clamp(150px, 17vw, 210px);
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 4px 6px;
	border: 1px solid rgba(0,150,50,0.3);
	border-radius: 8px;
	background: rgba(8,20,14,0.92);
	box-shadow: inset 0 0 18px rgba(0,150,50,0.08);
}

.mejs-upcoming img {
	width: 32px;
	height: 32px;
	object-fit: cover;
	border-radius: 4px;
	border: 1px solid rgba(255,255,255,0.1);
	flex-shrink: 0;
}

.mejs-upcoming-text {
	min-width: 0;
	line-height: 1.15;
}

.mejs-upcoming-label {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.5rem;
	letter-spacing: 1.4px;
	text-transform: uppercase;
	color: rgba(95,255,155,0.8);
	display: block;
	margin-bottom: 1px;
}

.mejs-upcoming-title {
	font-size: 0.62rem;
	color: rgba(255,255,255,0.88);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: block;
}

/* Playpause button collapses to 0px in flex because its inner button is position:absolute */
.mejs__playpause-button {
	width: 32px !important;
	flex-shrink: 0 !important;
	position: relative !important;
}

.mejs__button > button {
	filter: brightness(1.05);
	opacity: 0.9;
}

.mejs__button > button:hover {
	opacity: 1;
}

.mejs__time {
	color: rgba(255,255,255,0.86) !important;
}

/* Playback-driven EQ — audio-reactive canvas */
.player-eq-bg {
	position: fixed !important;
	left: 0 !important;
	right: 0 !important;
	top: 0 !important;
	bottom: 63px !important;
	width: 100vw;
	height: calc(100vh - 63px);
	display: block !important;
	pointer-events: none;
	z-index: 1;
	opacity: 0;
	overflow: hidden;
	transition: opacity 0.35s ease;
	mix-blend-mode: screen;
}

body.is-playing .player-eq-bg {
	opacity: 0.72;
}

#eq-canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
}

/* Go to top */
#gotoTop { background: var(--acid-green) !important; color: #fff !important; box-shadow: 0 0 14px var(--acid-green-glow); }
#gotoTop:hover { background: rgb(0,120,40) !important; }

/* Footer */
#footer { border-top: 1px solid rgba(0,150,50,0.2) !important; }
#copyrights { padding: 2rem 0; font-size: 0.82rem; color: #555; }
#copyrights a { opacity: 0.6; transition: opacity 0.2s; }
#copyrights a:hover { opacity: 1; }

/* Owl carousel arrows */
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next { color: var(--acid-green) !important; border-color: var(--acid-green) !important; }
.owl-carousel .owl-nav button:hover { background: var(--acid-green) !important; color: #fff !important; }

/* Swiper */
.swiper-pagination-bullet-active { background: var(--acid-green) !important; }

/* ================================================================
   HOMEPAGE — hero polish + social dock
================================================================= */
#slider.home-cinematic {
	background:
		radial-gradient(circle at 72% 28%, rgba(0,170,60,0.2), transparent 40%),
		radial-gradient(circle at 22% 72%, rgba(0,90,35,0.35), transparent 55%),
		#030603 !important;
	overflow: hidden;
}

#slider.home-cinematic .swiper-slide-bg {
	position: absolute;
	inset: 0;
	overflow: hidden;
	isolation: isolate;
}

#slider.home-cinematic .swiper-slide-bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	filter: saturate(1.15) contrast(1.06) brightness(0.72);
	z-index: 2;
}

#slider.home-cinematic .swiper-slide-bg::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 3;
	background:
		radial-gradient(circle at 56% 45%, rgba(0,160,55,0.12), transparent 45%),
		linear-gradient(to bottom, rgba(0,0,0,0.2), rgba(0,0,0,0.68));
	pointer-events: none;
}

#slider.home-cinematic .slider-caption {
	z-index: 6;
}

.home-hero-panel {
	max-width: 620px;
	padding: 2.4rem 2.1rem 1.9rem;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	background: linear-gradient(135deg, rgba(0,0,0,0.95), rgba(3,18,8,0.98));
	border: 1px solid rgba(95,255,155,0.22);
	box-shadow: 0 30px 70px rgba(0,0,0,0.45), 0 0 0 1px rgba(0,180,65,0.12) inset;
	border-radius: 14px;
}

.home-hero-panel .section-tag {
	margin-bottom: 0.8rem;
	font-size: 0.55rem;
	letter-spacing: 3px;
}

.home-hero-panel h2 {
	font-size: clamp(1.7rem, 4.8vw, 3.3rem);
	line-height: 1.1;
	margin-bottom: 0.5rem;
}

.home-hero-panel p {
	color: rgba(255,255,255,0.75);
	letter-spacing: 0.6px;
}

.home-quick-links {
	gap: 0.65rem;
	margin-top: 1rem;
	flex-wrap: wrap;
}

.home-quick-links a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.35rem 0.8rem;
	border: 1px solid rgba(0,150,50,0.45);
	border-radius: 999px;
	text-decoration: none;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.6rem;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: rgba(255,255,255,0.8);
	transition: all 0.22s ease;
}

.home-quick-links a:hover {
	background: rgba(0,150,50,0.18);
	color: #fff;
	border-color: var(--acid-green);
	transform: translateY(-1px);
}

.social-dock {
	position: fixed;
	left: 50%;
	bottom: 93px;
	transform: translateX(-50%);
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.38rem;
	border-radius: 999px;
	background: rgba(6,6,6,0.85);
	border: 1px solid rgba(0,150,50,0.35);
	box-shadow: 0 10px 28px rgba(0,0,0,0.55);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	z-index: 90000;
}

.social-dock a {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	color: rgba(255,255,255,0.65);
	text-decoration: none;
	font-size: 0.92rem;
	border: 1px solid rgba(255,255,255,0.08);
	background: rgba(255,255,255,0.03);
	transition: all 0.2s ease;
}

.social-dock a:hover {
	color: #fff;
	background: var(--acid-green);
	border-color: var(--acid-green);
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(0,150,50,0.35);
}

@media (max-width: 1149.98px) {
	.mejs__controls {
		padding-right: 8px !important;
	}
	.mejs-upcoming {
		display: none !important;
	}
}

@media (max-width: 991.98px) {
	/* Keep nav clean on mobile dropdown */
	.mejs__mute-button,
	.mejs__volume-button,
	.mejs__horizontal-volume-slider,
	.mejs__horizontal-volume-total,
	.mejs__horizontal-volume-current,
	.mejs__mute > button,
	.mejs__volume-button > button {
		display: none !important;
	}

	.is-expanded-menu .primary-menu,
	.is-expanded-menu .primary-menu .menu-container,
	.is-expanded-menu .menu-container {
		text-align: center !important;
	}

	.is-expanded-menu .menu-container > .menu-item {
		display: block !important;
		text-align: center !important;
	}

	.menu-container > .menu-item > .menu-link {
		padding: 0.45rem 0 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		text-align: center !important;
	}

	.menu-container > .menu-item > .menu-link > div {
		font-size: 0.76rem !important;
		letter-spacing: 1.8px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		text-align: center !important;
		width: 100% !important;
		margin: 0 auto !important;
	}

	.menu-container > .menu-item > .menu-link::after {
		display: none;
	}

	.is-expanded-menu .menu-container > .menu-item:hover > .menu-link,
	.is-expanded-menu .menu-container > .menu-item.current > .menu-link,
	.is-expanded-menu .menu-container > .menu-item.active > .menu-link {
		background: transparent !important;
	}

	.menu-container > .menu-item > .menu-link > div::before {
		display: none;
	}

	/* Hero readability */
	.page-hero {
		padding: 74px 0 44px;
	}

	.page-hero-title {
		font-size: clamp(1.9rem, 9vw, 3rem);
	}

	.page-hero-label,
	.section-tag {
		letter-spacing: 2.4px;
	}

	.page-hero-breadcrumb {
		margin-top: 1.35rem;
		font-size: 0.62rem;
		letter-spacing: 1px;
		flex-wrap: wrap;
	}

	/* Homepage hero */
	.home-hero-panel {
		max-width: 100%;
		padding: 1rem;
	}

	#slider.home-cinematic .swiper-slide-bg video {
		object-position: 62% center;
	}

	.home-hero-panel h2 {
		font-size: clamp(1.45rem, 8vw, 2.2rem);
	}

	/* Dock + player spacing */
	.social-dock {
		bottom: 93px;
		padding: 0.28rem;
		gap: 0.25rem;
		max-width: calc(100vw - 24px);
		z-index: 90000;
	}

	.social-dock a {
		width: 31px;
		height: 31px;
		font-size: 0.84rem;
	}

	.mejs__container {
		height: 57px;
		border-radius: 12px 12px 0 0;
	}

	.mejs-track-artwork,
	.mejs-track-artwork img {
		height: 57px !important;
		width: 57px !important;
	}

	.mejs-track-details {
		height: 57px !important;
		left: 61px !important;
	}

	.mejs__controls {
		padding-left: 185px !important;
		padding-right: 8px !important;
		height: 57px !important;
		line-height: 57px !important;
	}

	.mejs-track-nav {
		margin: 0 3px;
		height: 57px;
	}

	.mejs__time-rail {
		height: 36px !important;
	}

	.mejs-upcoming {
		display: none;
	}

	.player-eq-bg {
		bottom: 57px !important;
		height: calc(100vh - 57px);
	}

	#gotoTop {
		bottom: 130px !important;
	}

	/* Content cards */
	.video-featured .video-card-body {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.45rem;
	}

	.video-card-title {
		white-space: normal;
	}

	.bio-quote-section {
		padding: 48px 0;
	}

	.bio-quote-section::before {
		font-size: 11rem;
		top: -0.2em;
	}

	.bio-card {
		min-height: 300px;
	}

	.bio-card-overlay {
		padding: 1.15rem;
	}

	.bio-card-text {
		font-size: 0.78rem;
		line-height: 1.55;
	}

	.crew-glass-body {
		padding: 1.1rem;
	}
}

@media (max-width: 767.98px) {
	.mejs-track-details {
		display: none !important;
	}

	.mejs__controls {
		padding-left: 70px !important;
	}

	.mejs-track-nav button {
		width: 30px;
		height: 36px;
	}

	.mejs__time {
		font-size: 0.64rem !important;
	}

	.mejs__time-rail {
		min-width: 95px !important;
	}
}

@media (max-width: 575.98px) {
	.page-hero {
		padding: 68px 0 38px;
	}

	.page-hero-sub {
		font-size: 0.78rem;
	}

	.home-hero-panel .section-tag {
		font-size: 0.5rem;
		letter-spacing: 2px;
	}

	.social-dock {
		bottom: 110px;
		padding: 0.22rem 0.28rem;
		gap: 0.18rem;
	}

	body.home-page .social-dock {
		bottom: 164px;
	}

	.social-dock a {
		width: 28px;
		height: 28px;
		font-size: 0.78rem;
	}

	.mejs__container {
		height: 138px !important;
		border-radius: 16px 16px 0 0;
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		z-index: 100050 !important;
		transition: height 0.78s cubic-bezier(0.2, 0.9, 0.24, 1),
			border-radius 0.78s cubic-bezier(0.2, 0.9, 0.24, 1),
			box-shadow 0.78s ease,
			transform 0.78s cubic-bezier(0.2, 0.9, 0.24, 1);
		transform-origin: bottom center;
	}

	.mejs-track-artwork,
	.mejs-track-artwork img {
		height: 78px !important;
		width: 78px !important;
		border-radius: 999px !important;
		overflow: hidden;
	}

	.mejs-track-artwork {
		left: 50% !important;
		top: 10px !important;
		transform: translateX(-50%);
		opacity: 0.42;
		z-index: 100001 !important;
		box-shadow: 0 0 0 2px rgba(255,255,255,0.08), 0 0 24px rgba(0,0,0,0.45);
		transition: opacity 0.34s ease, transform 0.34s ease;
		pointer-events: none;
	}

	.mejs-track-details {
		display: none !important;
	}

	.mejs__controls {
		position: relative !important;
		flex-wrap: nowrap !important;
		justify-content: center !important;
		align-items: center !important;
		padding: 8px 8px 40px !important;
		height: 138px !important;
		line-height: normal !important;
		overflow: hidden !important;
		transition: height 0.72s cubic-bezier(0.2, 0.9, 0.24, 1), padding 0.72s cubic-bezier(0.2, 0.9, 0.24, 1);
	}

	.mejs-track-nav {
		position: absolute;
		top: 31px;
		margin: 0;
		height: auto;
		z-index: 100003;
		transition: top 0.34s ease, transform 0.34s ease, opacity 0.34s ease;
	}

	.mejs-track-nav:first-of-type {
		left: calc(50% - 82px);
	}

	.mejs__playpause-button {
		left: 50%;
		top: 18px;
		width: 58px !important;
		height: 58px !important;
		position: absolute !important;
		transform: translateX(-50%);
		z-index: 100005;
		transition: top 0.34s ease, width 0.34s ease, height 0.34s ease;
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.mejs-track-nav:last-of-type {
		left: calc(50% + 82px);
	}

	.mejs-nav-next {
		transform: translateX(55px) !important;
	}

	.mejs-track-nav button {
		width: 34px;
		height: 34px;
		font-size: 0.86rem;
		opacity: 0.95;
	}

	.mejs__playpause-button > button {
		margin: 0 !important;
		left: 50% !important;
		top: 50% !important;
		transform: translate(-50%, -50%);
		width: 58px !important;
		height: 58px !important;
		border-radius: 999px !important;
		background-image: none !important;
		background-repeat: no-repeat !important;
		background-color: transparent !important;
		opacity: 1 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		visibility: visible !important;
		z-index: 100006;
	}

	.mejs__button > button {
		margin: 0 !important;
	}

	.mejs__playpause-button.mejs__play > button::before {
		content: '\f04b';
		font-family: 'Font Awesome 6 Free';
		font-weight: 900;
		font-size: 1.05rem;
		line-height: 1;
		color: rgba(236,255,244,0.96);
		text-shadow: 0 0 8px rgba(0,220,95,0.48);
		transform: translateX(1px);
	}

	.mejs__playpause-button.mejs__pause > button::before {
		content: '\f04c';
		font-family: 'Font Awesome 6 Free';
		font-weight: 900;
		font-size: 1rem;
		line-height: 1;
		color: rgba(236,255,244,0.96);
		text-shadow: 0 0 8px rgba(0,220,95,0.48);
	}

	.mejs__currenttime-container,
	.mejs__duration-container {
		position: absolute !important;
		bottom: 2px;
		height: 18px !important;
		line-height: 18px !important;
		padding: 0 !important;
		font-size: 0.6rem !important;
		color: rgba(255,255,255,0.82) !important;
		z-index: 100004;
	}

	.mejs__currenttime-container {
		left: 12px;
	}

	.mejs__duration-container {
		right: 12px;
	}

	.mejs__mute-button,
	.mejs__volume-button,
	.mejs__horizontal-volume-slider,
	.mejs__horizontal-volume-total,
	.mejs__horizontal-volume-current,
	.mejs__mute > button,
	.mejs__volume-button > button,
	.mejs-nav-download {
		display: none !important;
	}

	.mejs__time-rail {
		position: absolute !important;
		left: 12px !important;
		right: 12px !important;
		bottom: 14px !important;
		width: auto !important;
		min-width: 0 !important;
		height: 18px !important;
		margin: 0 !important;
		padding: 0 !important;
		z-index: 100004;
		transition: left 0.34s ease, right 0.34s ease, bottom 0.34s ease, opacity 0.34s ease;
	}

	.mejs__time-total {
		height: 4px !important;
	}

	.mejs__time-handle {
		display: none !important;
	}

	@keyframes playerMorphIn {
		0% { transform: translateY(10px) scale(0.985); filter: saturate(0.8) brightness(0.9); }
		55% { transform: translateY(-2px) scale(1.01); filter: saturate(1.05) brightness(1); }
		100% { transform: translateY(0) scale(1); filter: none; }
	}

	@keyframes playerColorOpen {
		0% { box-shadow: 0 0 0 1px rgba(0,150,50,0.2), 0 -8px 20px rgba(0,0,0,0.35); border-top-color: rgba(0,150,50,0.4); }
		50% { box-shadow: 0 0 0 1px rgba(90,255,170,0.45), 0 -14px 28px rgba(0,120,60,0.32); border-top-color: rgba(95,255,155,0.9); }
		100% { box-shadow: 0 -12px 34px rgba(0,0,0,0.5); border-top-color: var(--acid-green); }
	}

	@keyframes playerColorClose {
		0% { box-shadow: 0 -12px 34px rgba(0,0,0,0.5); border-top-color: var(--acid-green); }
		55% { box-shadow: 0 0 0 1px rgba(140,255,200,0.32), 0 -10px 22px rgba(0,90,45,0.26); border-top-color: rgba(130,255,190,0.8); }
		100% { box-shadow: 0 0 0 1px rgba(0,150,50,0.2), 0 -8px 20px rgba(0,0,0,0.35); border-top-color: rgba(0,150,50,0.45); }
	}

	@keyframes playerMorphOut {
		0% { transform: translateY(0) scale(1); filter: none; }
		60% { transform: translateY(3px) scale(0.992); filter: saturate(0.9) brightness(0.95); }
		100% { transform: translateY(0) scale(1); filter: none; }
	}

	/* Compact mobile player after inactivity */
	body.player-idle .mejs__container {
		height: 62px !important;
		border-radius: 12px 12px 0 0;
		animation: playerMorphOut 0.78s cubic-bezier(0.2, 0.9, 0.24, 1), playerColorClose 0.86s ease;
	}

	body:not(.player-idle) .mejs__container {
		animation: playerMorphIn 0.82s cubic-bezier(0.2, 0.9, 0.24, 1), playerColorOpen 0.92s ease;
	}

	body.player-idle .mejs-track-artwork,
	body.player-idle .mejs-track-details,
	body.player-idle .mejs__currenttime-container,
	body.player-idle .mejs__duration-container {
		display: none !important;
	}

	body.player-idle .mejs__controls {
		height: 62px !important;
		padding: 0 10px !important;
		justify-content: center !important;
		align-items: center !important;
	}

	body.player-idle .mejs-track-nav {
		top: 14px;
	}

	body.player-idle .mejs-track-nav:first-of-type {
		left: calc(50% - 66px);
	}

	body.player-idle .mejs-track-nav:last-of-type {
		left: calc(50% + 42px);
	}

	body.player-idle .mejs-nav-next {
		transform: translateX(35px) !important;
	}

	body.player-idle .mejs__playpause-button {
		top: 12px;
		width: 38px !important;
		height: 38px !important;
	}

	body.player-idle .mejs__playpause-button > button {
		width: 38px !important;
		height: 38px !important;
	}

	body.player-idle .mejs__playpause-button.mejs__play > button::before {
		font-size: 0.82rem;
	}

	body.player-idle .mejs__playpause-button.mejs__pause > button::before {
		font-size: 0.78rem;
	}

	body.player-idle .mejs__time-rail {
		left: 12px !important;
		right: 12px !important;
		bottom: 10px !important;
		opacity: 0.9;
	}

	body.player-idle .player-eq-bg {
		bottom: 62px !important;
		height: calc(100vh - 62px);
	}

	body.player-idle #gotoTop {
		bottom: 126px !important;
	}

	.mejs-upcoming {
		display: none;
	}

	.player-eq-bg {
		bottom: 138px !important;
		height: calc(100vh - 138px);
	}

	#gotoTop {
		bottom: 202px !important;
	}
}

