/* ==========================================================================
   Small reusable utilities & the scroll-reveal animation
   (paired with assets/js/scroll-animations.js).
   ========================================================================== */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity 700ms ease, transform 700ms ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.text-center { text-align: center; }
.mt-0 { margin-top: 0; }
.mb-0 { margin-bottom: 0; }
.divider-leaf { display: flex; align-items: center; justify-content: center; gap: 14px; color: var(--color-secondary); margin: 10px 0 30px; }
.divider-leaf svg { width: 26px; height: 26px; }
.divider-leaf::before, .divider-leaf::after { content: ''; height: 1px; width: 60px; background: var(--color-border); }

.not-found-wrap { text-align: center; padding: 120px 24px; }
.not-found-wrap h1 { font-size: 4rem; color: var(--color-secondary); }
.not-found-wrap .hero-actions { justify-content: center; }

.skip-link {
	position: absolute; left: -9999px; top: 0; z-index: 10000;
	background: var(--color-primary); color: #fff; padding: 14px 20px; border-radius: 0 0 8px 0;
}
.skip-link:focus { left: 0; }
