/* ============ Base Reset ============ */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        html,
        body {
            height: 100%;
        }

        body {
            overflow-x: hidden !important;
            font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial,
                sans-serif;
            color: #fff;
            background-image: url('/images/img-webp/jeremiah.webp');
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
            background-attachment: fixed;
        }

        /* ============ Hero ============ */
        .hero {
            text-align: center;
            color: #ffffff;
            padding: 120px 2px 80px;
            /* background: rgba(5, 5, 23, 0.5); */
        }

        .hero-h1 {
            transform: translateX(-100%);
            transition: transform 1s ease-out, opacity 1s ease-out;
        }

        .hero-text {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 20px;
            margin-bottom: 100px;
        }

        .hero-h1 {
            position: static;
            transform: translateX(-100%);
            transition: transform 1s ease-out, opacity 1s ease-out;
            opacity: 0;
        }

        .hero-p {
            position: static;color: #ffffff;
            margin: 0;
            text-align: center;
            transform: translateX(100%);
            transition: transform 1s ease-out, opacity 1s ease-out;
            opacity: 0;
            font-size: 1.3rem;
            font-weight: 400;
            line-height: 1.6;
        }

        .animate-h1 {
            transform: translateX(0);
            opacity: 1;
        }

        .animate-p {
            transform: translateX(0);
            opacity: 1;
        }

        .hero-cta {
            display: flex;
            justify-content: center;
            gap: 10px;
            margin: 20px 0 50px 0;
            align-items: center;
        }

        /* ============ Layout Backgrounds ============ */
        main {
            min-height: 100vh;
            background: rgba(5, 5, 23, 0.8);
            text-align: left;
            padding-top: 96px;
        }

        /* ======== Mobile / Tablet Styles (<= 1024px) ======== */
        @media (max-width: 1024px) {

            #navMenu.active {
                display: block;
            }

            h2 {
                font-size: 30px;
            }

            .hero-text {
                padding: 20px;
            }
        }
