/* Spec-sheet grid texture behind the hero */
        .grid-lines {
            background-image:
                linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px),
                linear-gradient(90deg, rgba(255,255,255,0.035) 1px, transparent 1px);
            background-size: 56px 56px;
            mask-image: radial-gradient(circle at 50% 30%, black 0%, transparent 75%);
            -webkit-mask-image: radial-gradient(circle at 50% 30%, black 0%, transparent 75%);
        }

        .glass-card {
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.07) 0%, rgba(255, 255, 255, 0.025) 100%);
            backdrop-filter: blur(16px);
            -webkit-backdrop-filter: blur(16px);
            border: 1px solid rgba(255, 255, 255, 0.10);
            transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
        }
        .glass-card:hover {
            border-color: rgba(0, 210, 180, 0.35);
            box-shadow: 0 16px 40px -18px rgba(0, 210, 180, 0.30);
            transform: translateY(-3px);
        }

        .eyebrow {
            font-family: '"JetBrains Mono"', monospace;
            letter-spacing: 0.18em;
        }

        /* Nav underline that draws on hover / active */
        .navlink { position: relative; }
        .navlink::after {
            content: ''; position: absolute; left: 0; bottom: -6px; height: 2px; width: 0;
            background: #00D2B4; transition: width .25s ease;
        }
        .navlink:hover::after, .navlink.active::after { width: 100%; }

        /* Scroll reveal */
        .reveal { opacity: 0; transform: translateY(22px); transition: opacity .6s ease, transform .6s ease; }
        .reveal.in { opacity: 1; transform: none; }

        /* Back to top */
        #toTop { opacity: 0; pointer-events: none; transition: opacity .3s ease; }
        #toTop.show { opacity: 1; pointer-events: auto; }

        @media (prefers-reduced-motion: reduce) {
            .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
            html { scroll-behavior: auto; }
        }
