/* Smooth Scrolling */
html {
	scroll-behavior: smooth;
	scroll-padding-top: 90px;
}

/* Scroll Animations */
.reveal {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.8s cubic-bezier(0.5, 0, 0, 1), transform 0.8s cubic-bezier(0.5, 0, 0, 1);
}

.reveal.active {
	opacity: 1;
	transform: translateY(0);
}

.delay-1 { transition-delay: 0.15s; }
.delay-2 { transition-delay: 0.3s; }

/* Hide default marker for mobile details menu & FAQ */
details > summary {
	list-style: none;
}
details > summary::-webkit-details-marker {
	display: none;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-10px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Header navigation active states */
.nav-parent-active {
	position: relative;
	color: #231f20; /* brandDark */
}

.nav-parent-active::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 1.35rem;
	width: 22px;
	height: 2px;
	background: #231f20; /* small black underline */
	border-radius: 9999px;
}

.nav-sub-active {
	font-weight: 700;
	color: #231f20 !important; /* brandDark */
	background-color: #f9f9fa; /* brandLight */
	border-left: 3px solid #fcee18; /* accent bar */
}

.nav-sub-active:hover {
	background-color: #f9f9fa;
	color: #231f20 !important;
}