﻿        /* =====================================================
           DESIGN TOKENS — Loren Software Design System
        ===================================================== */
        :root {
            --bg:          #0b0c10;
            --bg-alt:      var(--bg);
            --bg-card:     var(--bg);
            --bg-card-h:   var(--bg);
            --fg:          #ffffff;
            --fg-body:     #c5c6c7;
            --fg-muted:    #5a6070;
            --accent:      #00e5ff;
            --accent-dim:  rgba(0,229,255,.10);
            --accent-glow: rgba(0,229,255,.35);
            --accent-2:    #4fc3f7;
            --border:      rgba(255,255,255,.06);
            --border-a:    rgba(0,229,255,.22);
            --nav-h:       72px;
            --ease:        cubic-bezier(.4,0,.2,1);
            --cursor-plus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cline x1='12' y1='5' x2='12' y2='19' stroke='%2300e5ff' stroke-width='2' stroke-linecap='round'/%3E%3Cline x1='5' y1='12' x2='19' y2='12' stroke='%2300e5ff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") 12 12, crosshair;
            /* Section spacing (adjacent paddings add up between sections) */
            --section-top-first: 6rem;
            --section-pad:       4.5rem;
            --section-gap:       2.5rem;
            --section-bottom-last: 5rem;
        }

        /* =====================================================
           RESET & BASE
        ===================================================== */
        *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

        html { scroll-behavior:smooth; font-size:16px; }

        html, body,
        a, button, input, textarea, select, label,
        .burger, .lang-btn, .card, .project-card, .project-link {
            cursor: var(--cursor-plus);
        }

        body {
            background: var(--bg);
            color: var(--fg-body);
            font-family: 'Inter','Space Grotesk',sans-serif;
            line-height: 1.65;
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased;
            -webkit-text-size-adjust: 100%;
        }
        body.menu-open {
            overflow:hidden;
            touch-action:none;
        }

        /* Thin cyan scrollbar */
        ::-webkit-scrollbar           { width:3px; }
        ::-webkit-scrollbar-track     { background:var(--bg); }
        ::-webkit-scrollbar-thumb     { background:var(--accent); border-radius:2px; }

        a  { text-decoration:none; color:inherit; }
        img { max-width:100%; display:block; }

        /* =====================================================
           GLOBAL NOISE OVERLAY (subtle grain)
        ===================================================== */
        body::after {
            content:'';
            position:fixed; inset:0;
            background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
            opacity:.022;
            pointer-events:none;
            z-index:9998;
        }

        /* =====================================================
           UTILITY
        ===================================================== */
        .container {
            width:100%; max-width:1280px;
            margin:0 auto; padding:0 2rem;
        }

        .sec-label {
            display:inline-flex; align-items:center; gap:10px;
            font-family:'Orbitron',monospace;
            font-size:.65rem; font-weight:600;
            letter-spacing:.28em; text-transform:uppercase;
            color:var(--accent); margin-bottom:1.25rem;
        }
        .sec-label::before {
            content:''; display:block;
            width:22px; height:1px; background:var(--accent);
        }

        .sec-title {
            font-family:'Space Grotesk',sans-serif;
            font-size:clamp(2rem,3.8vw,3.4rem);
            font-weight:700; color:var(--fg);
            line-height:1.12; letter-spacing:-.025em;
        }

        .sec-sub {
            font-size:1rem; color:var(--fg-body);
            max-width:600px; line-height:1.75; margin-top:.9rem;
        }

        /* =====================================================
           REVEAL ANIMATION (Intersection Observer)
        ===================================================== */
        .reveal {
            opacity:0; transform:translateY(36px);
            transition:opacity .75s var(--ease), transform .75s var(--ease);
        }
        .reveal.in { opacity:1; transform:translateY(0); }
        .d1 { transition-delay:.08s; }
        .d2 { transition-delay:.18s; }
        .d3 { transition-delay:.28s; }
        .d4 { transition-delay:.38s; }

        /* =====================================================
           LANGUAGE SYSTEM
        ===================================================== */
        /* TR = default visible, EN = hidden */
        .en          { display:none !important; }
        .en-inline   { display:none !important; }

        body.lang-en .tr        { display:none !important; }
        body.lang-en .tr-inline { display:none !important; }
        body.lang-en .en        { display:block !important; }
        body.lang-en .en-inline { display:inline !important; }

        /* =====================================================
           NAVBAR
        ===================================================== */
        #nav {
            position:fixed; top:0; left:0; width:100%;
            z-index:1000;
            transition: background .45s var(--ease),
                        border-color .45s var(--ease),
                        backdrop-filter .45s var(--ease),
                        box-shadow .45s var(--ease);
            border-bottom:1px solid transparent;
        }
        #nav.scrolled {
            background:rgba(11,12,16,.88);
            backdrop-filter:blur(22px) saturate(1.6);
            -webkit-backdrop-filter:blur(22px) saturate(1.6);
            border-bottom-color:rgba(0,229,255,.12);
            box-shadow:0 1px 30px rgba(0,0,0,.55);
        }

        .nav-inner {
            display:flex; align-items:center; justify-content:space-between;
            height:var(--nav-h);
            max-width:1280px; margin:0 auto; padding:0 2rem;
        }

        /* Logo */
        .nav-logo { display:flex; align-items:center; gap:10px; flex-shrink:0; }
        .nav-logo img {
            height:52px; width:auto; object-fit:contain;
            filter:brightness(1.05);
        }
        .logo-txt {
            font-family:'Orbitron',monospace;
            font-size:1.15rem; font-weight:800;
            color:var(--fg); letter-spacing:.08em;
        }
        .logo-txt span { color:var(--accent); }

        /* Nav links */
        .nav-links {
            display:flex; align-items:center; gap:2.5rem;
        }
        .nav-links a {
            font-family:'Space Grotesk',sans-serif;
            font-size:.82rem; font-weight:500;
            color:var(--fg-body); letter-spacing:.04em;
            position:relative; transition:color .2s;
        }
        .nav-links a::after {
            content:''; position:absolute; bottom:-5px; left:0;
            width:0; height:1px; background:var(--accent);
            transition:width .35s var(--ease);
        }
        .nav-links a:hover { color:var(--fg); }
        .nav-links a:hover::after { width:100%; }

        /* Lang buttons */
        .nav-right { display:flex; align-items:center; gap:1rem; }
        .lang-wrap {
            display:flex; align-items:center; gap:3px;
            background:rgba(255,255,255,.04);
            border:1px solid var(--border);
            border-radius:6px; padding:4px;
        }
        .lang-btn {
            background:transparent; border:none;
            color:var(--fg-muted);
            font-family:'Space Grotesk',sans-serif;
            font-size:.72rem; font-weight:700;
            letter-spacing:.12em; padding:4px 11px;
            border-radius:4px;
            transition:all .2s;
        }
        .lang-btn.on {
            background:var(--accent); color:var(--bg);
        }
        .lang-btn:not(.on):hover {
            color:var(--fg); background:rgba(255,255,255,.06);
        }

        /* Hamburger */
        .burger {
            display:none; flex-direction:column; gap:5px;
            padding:4px; background:none; border:none;
        }
        .burger span {
            display:block; width:22px; height:1.5px;
            background:var(--fg-body);
            transition:all .25s;
        }
        .burger.open span:nth-child(1) { transform:translateY(6.5px) rotate(45deg); }
        .burger.open span:nth-child(2) { opacity:0; }
        .burger.open span:nth-child(3) { transform:translateY(-6.5px) rotate(-45deg); }

        /* Mobile drawer */
        .mob-menu {
            display:none; position:fixed;
            top:var(--nav-h); left:0; right:0;
            background:rgba(11,12,16,.97);
            backdrop-filter:blur(20px);
            border-bottom:1px solid var(--border);
            padding:1.5rem 2rem;
            flex-direction:column; gap:.25rem;
            z-index:999;
        }
        .mob-menu.open { display:flex; }
        .mob-menu a {
            font-size:.95rem; font-weight:500;
            color:var(--fg-body);
            padding:.65rem 0;
            border-bottom:1px solid var(--border);
            transition:color .2s;
        }
        .mob-menu a:last-of-type { border-bottom:none; }
        .mob-menu a:hover { color:var(--accent); }

        /* =====================================================
           HERO — SCROLL-DRIVEN VIDEO
        ===================================================== */
        #hero { position:relative; }

        .vid-scroll-wrap {
            /* 5× viewport tall → gives scroll space */
            height:500vh; position:relative;
        }

        .vid-sticky {
            position:sticky; top:0;
            width:100%; height:100vh;
            overflow:hidden;
        }

        #hero-video {
            position:absolute; top:50%; left:50%;
            transform:translate(-50%,-50%);
            min-width:100%; min-height:100%;
            width:auto; height:auto;
            object-fit:cover;
        }

        /* Multi-layer overlay for cinematic look */
        .vid-overlay {
            position:absolute; inset:0;
            background:
                linear-gradient(to bottom,
                    rgba(11,12,16,.55) 0%,
                    rgba(11,12,16,.08) 25%,
                    rgba(11,12,16,.08) 70%,
                    rgba(11,12,16,.95) 100%),
                linear-gradient(to right,
                    rgba(11,12,16,.25) 0%,
                    transparent 50%,
                    rgba(11,12,16,.25) 100%);
            z-index:1;
        }

        /* Scroll progress bar (bottom) */
        #vid-bar {
            position:absolute; bottom:0; left:0;
            width:0%; height:2px;
            background:linear-gradient(to right, transparent, var(--accent), var(--accent-2));
            box-shadow:0 0 12px var(--accent-glow);
            z-index:10;
        }

        /* Slogans */
        .slogan-wrap {
            position:absolute; inset:0;
            display:flex; align-items:center; justify-content:center;
            z-index:2; padding:0 2rem;
            text-align:center;
        }

        .slogan {
            position:absolute;
            opacity:0; transform:translateY(22px);
            pointer-events:none;
            max-width:960px; width:100%;
            padding:0 2rem;
            transition:opacity .4s var(--ease), transform .4s var(--ease);
        }

        .slogan-tag {
            display:inline-block;
            font-family:'Orbitron',monospace;
            font-size:.6rem; font-weight:600;
            letter-spacing:.32em; text-transform:uppercase;
            color:var(--accent); margin-bottom:1.4rem;
        }

        .slogan h1 {
            font-family:'Space Grotesk',sans-serif;
            font-size:clamp(2.4rem,5.5vw,5rem);
            font-weight:700; color:var(--fg);
            line-height:1.08; letter-spacing:-.035em;
            text-shadow:0 2px 40px rgba(0,0,0,.7);
        }
        .slogan h2 {
            font-family:'Space Grotesk',sans-serif;
            font-size:clamp(2rem,4.5vw,4.2rem);
            font-weight:700; color:var(--fg);
            line-height:1.08; letter-spacing:-.03em;
            text-shadow:0 2px 40px rgba(0,0,0,.7);
        }
        .slogan h1 em, .slogan h2 em {
            font-style:normal;
            background:linear-gradient(135deg, var(--accent), var(--accent-2));
            -webkit-background-clip:text;
            -webkit-text-fill-color:transparent;
            background-clip:text;
        }

        /* Scroll down arrow */
        .scroll-cue {
            position:absolute; bottom:2rem; left:50%;
            transform:translateX(-50%);
            z-index:5;
            display:flex; flex-direction:column; align-items:center; gap:8px;
            transition:opacity .4s;
        }
        .scroll-cue span {
            font-family:'Orbitron',monospace;
            font-size:.55rem; letter-spacing:.28em;
            text-transform:uppercase; color:var(--fg-muted);
        }
        .scroll-cue-line {
            width:1px; height:44px;
            background:linear-gradient(to bottom, var(--accent), transparent);
            animation:cueP 2s ease-in-out infinite;
        }
        @keyframes cueP {
            0%,100% { opacity:.3; transform:scaleY(1); }
            50%      { opacity:1;  transform:scaleY(1.08); }
        }

        /* Corner HUD decorations on video */
        .hud-corner {
            position:absolute; z-index:3;
            width:20px; height:20px;
            pointer-events:none;
        }
        .hud-corner.tl { top:20px; left:20px;
            border-top:1px solid rgba(0,229,255,.4);
            border-left:1px solid rgba(0,229,255,.4); }
        .hud-corner.tr { top:20px; right:20px;
            border-top:1px solid rgba(0,229,255,.4);
            border-right:1px solid rgba(0,229,255,.4); }
        .hud-corner.bl { bottom:20px; left:20px;
            border-bottom:1px solid rgba(0,229,255,.4);
            border-left:1px solid rgba(0,229,255,.4); }
        .hud-corner.br { bottom:20px; right:20px;
            border-bottom:1px solid rgba(0,229,255,.4);
            border-right:1px solid rgba(0,229,255,.4); }

        /* =====================================================
           ABOUT SECTION
        ===================================================== */
        #about {
            padding:var(--section-top-first) 0 var(--section-gap);
            position:relative; overflow:hidden;
        }
        #about::before {
            content:'';
            position:absolute; top:-120px; left:-180px;
            width:560px; height:560px;
            background:radial-gradient(circle, rgba(0,229,255,.05) 0%, transparent 70%);
            pointer-events:none;
        }

        .about-grid {
            display:grid; grid-template-columns:1fr 1fr;
            gap:5rem; align-items:center;
        }

        .about-text-body {
            font-size:.97rem; line-height:1.85;
            color:var(--fg-body); margin-top:1.4rem;
        }

        /* Stat pills */
        .stats {
            display:grid; grid-template-columns:repeat(4,1fr);
            gap:1rem; margin-top:2.8rem;
        }
        .stat {
            padding:1.3rem 1rem;
            background:var(--bg-card);
            border:1px solid var(--border);
            border-radius:8px; text-align:center;
            transition:border-color .35s var(--ease), box-shadow .35s var(--ease);
        }
        .stat:hover {
            border-color:var(--border-a);
            box-shadow:0 0 22px rgba(0,229,255,.08);
        }
        .stat-n {
            display:block;
            font-family:'Orbitron',monospace;
            font-size:1.7rem; font-weight:800;
            color:var(--accent);
        }
        .stat-l {
            display:block;
            font-size:.68rem; color:var(--fg-muted);
            text-transform:uppercase; letter-spacing:.1em;
            margin-top:.3rem;
        }

        /* About visual (HUD display) */
        .about-visual {
            position:relative;
        }
        .hud-box {
            width:100%; aspect-ratio:4/3;
            background:var(--bg-card);
            border:1px solid var(--border);
            border-radius:14px; overflow:hidden;
            position:relative;
        }
        .hud-box::before {
            content:''; position:absolute;
            top:0; left:0; right:0; height:1px;
            background:linear-gradient(to right, transparent, var(--accent), transparent);
        }
        .hud-grid {
            position:absolute; inset:0;
            background-image:
                linear-gradient(rgba(0,229,255,.025) 1px, transparent 1px),
                linear-gradient(90deg, rgba(0,229,255,.025) 1px, transparent 1px);
            background-size:36px 36px;
        }
        /* Rotating ring */
        .hud-ring {
            position:absolute; top:50%; left:50%;
            transform:translate(-50%,-50%);
            width:180px; height:180px;
            border:1px solid rgba(0,229,255,.18);
            border-radius:50%;
            animation:spinRing 18s linear infinite;
        }
        .hud-ring::before {
            content:''; position:absolute;
            inset:14px; border-radius:50%;
            border:1px solid rgba(0,229,255,.1);
        }
        .hud-ring::after {
            content:''; position:absolute;
            top:-5px; left:50%;
            transform:translateX(-50%);
            width:10px; height:10px;
            background:var(--accent); border-radius:50%;
            box-shadow:0 0 18px var(--accent), 0 0 40px var(--accent-glow);
        }
        @keyframes spinRing {
            from { transform:translate(-50%,-50%) rotate(0deg); }
            to   { transform:translate(-50%,-50%) rotate(360deg); }
        }
        /* Crosshair */
        .hud-cross {
            position:absolute; top:50%; left:50%;
            transform:translate(-50%,-50%);
            width:60px; height:60px;
        }
        .hud-cross::before {
            content:''; position:absolute;
            top:50%; left:0; right:0; height:1px;
            background:rgba(0,229,255,.6);
            transform:translateY(-50%);
        }
        .hud-cross::after {
            content:''; position:absolute;
            left:50%; top:0; bottom:0; width:1px;
            background:rgba(0,229,255,.6);
            transform:translateX(-50%);
        }
        /* Scan line */
        .hud-scan {
            position:absolute; left:0; right:0; height:1px;
            background:linear-gradient(to right, transparent, rgba(0,229,255,.7), transparent);
            animation:scan 3s ease-in-out infinite;
        }
        @keyframes scan {
            0%   { top:0%; opacity:0; }
            5%   { opacity:1; }
            95%  { opacity:1; }
            100% { top:100%; opacity:0; }
        }
        /* HUD labels */
        .hud-label {
            position:absolute; bottom:1.5rem; left:50%;
            transform:translateX(-50%);
            font-family:'Orbitron',monospace;
            font-size:.55rem; letter-spacing:.3em;
            color:var(--accent); white-space:nowrap;
            text-transform:uppercase;
        }
        .hud-c { /* corner decorations */
            position:absolute; width:14px; height:14px; pointer-events:none;
        }
        .hud-c.tl { top:14px; left:14px;
            border-top:1px solid rgba(0,229,255,.45);
            border-left:1px solid rgba(0,229,255,.45); }
        .hud-c.tr { top:14px; right:14px;
            border-top:1px solid rgba(0,229,255,.45);
            border-right:1px solid rgba(0,229,255,.45); }
        .hud-c.bl { bottom:14px; left:14px;
            border-bottom:1px solid rgba(0,229,255,.45);
            border-left:1px solid rgba(0,229,255,.45); }
        .hud-c.br { bottom:14px; right:14px;
            border-bottom:1px solid rgba(0,229,255,.45);
            border-right:1px solid rgba(0,229,255,.45); }

        /* Blinking status dot */
        .status-dot {
            position:absolute; top:14px; left:50%;
            transform:translateX(-50%);
            display:flex; align-items:center; gap:7px;
        }
        .status-dot span {
            width:6px; height:6px; border-radius:50%;
            background:var(--accent);
            box-shadow:0 0 8px var(--accent);
            animation:blink 1.5s ease-in-out infinite;
        }
        .status-dot p {
            font-family:'Orbitron',monospace;
            font-size:.5rem; letter-spacing:.2em;
            color:var(--accent); text-transform:uppercase;
        }
        @keyframes blink {
            0%,100% { opacity:1; } 50% { opacity:.2; }
        }

        /* =====================================================
           SECTORS SECTION
        ===================================================== */
        #sectors {
            padding:var(--section-gap) 0 var(--section-gap);
            background:var(--bg-alt); position:relative;
        }
        #sectors::before {
            content:''; position:absolute; inset:0;
            background-image:
                linear-gradient(rgba(0,229,255,.012) 1px, transparent 1px),
                linear-gradient(90deg, rgba(0,229,255,.012) 1px, transparent 1px);
            background-size:55px 55px;
            pointer-events:none;
        }

        .sectors-hd {
            text-align:center; margin-bottom:4.5rem;
        }
        .sectors-hd .sec-label { justify-content:center; }
        .sectors-hd .sec-label::before { display:none; }

        .sectors-grid {
            display:grid; grid-template-columns:repeat(3,1fr);
            gap:1.25rem;
        }

        /* Card */
        .card {
            background:var(--bg-card);
            border:1px solid var(--border);
            border-radius:14px; padding:2.5rem;
            position:relative; overflow:hidden;
            display:flex; flex-direction:column;
            transition:transform .45s var(--ease),
                        border-color .45s var(--ease),
                        box-shadow .45s var(--ease),
                        background .45s var(--ease);
        }
        /* Top glow line reveal on hover */
        .card::before {
            content:''; position:absolute; top:0; left:0; right:0; height:1px;
            background:linear-gradient(to right, transparent, var(--accent), transparent);
            opacity:0; transition:opacity .45s var(--ease);
        }
        /* Bottom radial glow */
        .card::after {
            content:''; position:absolute;
            bottom:-120px; left:50%; transform:translateX(-50%);
            width:220px; height:220px; border-radius:50%;
            background:radial-gradient(circle, rgba(0,229,255,.09) 0%, transparent 70%);
            transition:bottom .5s var(--ease), width .5s var(--ease);
        }
        .card:hover {
            transform:translateY(-7px);
            background:var(--bg-card-h);
            border-color:rgba(0,229,255,.28);
            box-shadow:
                0 0 0 1px rgba(0,229,255,.08),
                0 25px 60px rgba(0,0,0,.45),
                0 0 50px rgba(0,229,255,.07);
        }
        .card:hover::before { opacity:1; }
        .card:hover::after  { bottom:-50px; width:320px; }

        /* Card icon */
        .card-icon {
            width:52px; height:52px;
            border:1px solid var(--border-a);
            border-radius:10px;
            background:var(--accent-dim);
            display:flex; align-items:center; justify-content:center;
            margin-bottom:1.8rem;
            transition:background .35s, box-shadow .35s;
        }
        .card:hover .card-icon {
            background:rgba(0,229,255,.18);
            box-shadow:0 0 22px rgba(0,229,255,.22);
        }
        .card-icon svg {
            width:22px; height:22px;
            fill:none; stroke:var(--accent);
            stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round;
        }

        .card-num {
            position:absolute; top:1.8rem; right:1.8rem;
            font-family:'Orbitron',monospace;
            font-size:.58rem; color:var(--fg-muted); letter-spacing:.1em;
        }
        .card-title {
            font-family:'Space Grotesk',sans-serif;
            font-size:1.2rem; font-weight:600;
            color:var(--fg); margin-bottom:.9rem; line-height:1.3;
        }
        .card-desc {
            font-size:.88rem; color:var(--fg-body);
            line-height:1.75; flex:1;
        }

        .card-tags {
            display:flex; flex-wrap:wrap; gap:5px; margin-top:1.4rem;
        }
        .tag {
            font-family:'Orbitron',monospace;
            font-size:.5rem; letter-spacing:.1em; text-transform:uppercase;
            color:var(--accent);
            background:var(--accent-dim);
            border:1px solid rgba(0,229,255,.12);
            padding:3px 9px; border-radius:3px;
        }

        /* Arrow link */
        .card-link {
            display:inline-flex; align-items:center; gap:5px;
            margin-top:1.8rem;
            font-size:.78rem; font-weight:500; color:var(--accent);
            opacity:0; transform:translateX(-8px);
            transition:opacity .35s var(--ease), transform .35s var(--ease);
        }
        .card-link svg {
            width:13px; height:13px;
            fill:none; stroke:var(--accent); stroke-width:2;
        }
        .card:hover .card-link { opacity:1; transform:translateX(0); }

        /* =====================================================
           PROJECTS SECTION
        ===================================================== */
        #projects {
            padding:var(--section-pad) 0 var(--section-gap);
            background:var(--bg);
            position:relative;
        }

        .section-header {
            display:flex; align-items:center; gap:1.5rem;
            margin-bottom:3.5rem;
        }
        .section-num {
            font-family:'Orbitron',monospace;
            font-size:.75rem; font-weight:700;
            color:var(--accent); letter-spacing:.15em;
            flex-shrink:0;
        }
        .section-title-group h2 {
            font-family:'Space Grotesk',sans-serif;
            font-size:clamp(1.8rem,3vw,2.6rem);
            font-weight:700; color:var(--fg);
            line-height:1.1; white-space:nowrap;
        }
        .section-line {
            flex:1; height:1px;
            background:linear-gradient(90deg, var(--border-a), transparent);
        }

        .projects-list {
            display:flex; flex-direction:column; gap:1rem;
        }
        .project-card {
            display:grid;
            grid-template-columns:auto 1fr auto;
            align-items:start;
            gap:1.25rem 2rem;
            padding:1.75rem 2rem;
            background:var(--bg-card);
            border:1px solid var(--border);
            border-radius:12px;
            transition:border-color .35s var(--ease),
                        box-shadow .35s var(--ease);
        }
        .project-card:hover {
            border-color:var(--border-a);
            box-shadow:0 0 28px rgba(0,229,255,.06);
        }
        .project-num {
            font-family:'Orbitron',monospace;
            font-size:.85rem; color:var(--fg-muted);
            letter-spacing:.1em; padding-top:.15rem;
        }
        .project-info h3 {
            font-family:'Space Grotesk',sans-serif;
            font-size:1.12rem; font-weight:600;
            color:var(--fg); margin-bottom:.45rem;
        }
        .project-info p {
            font-size:.92rem; line-height:1.7;
            color:var(--fg-body); max-width:720px;
        }
        .project-links {
            display:flex; flex-wrap:wrap; gap:.65rem;
            margin-top:1rem;
        }
        .project-link {
            display:inline-flex; align-items:center; gap:.45rem;
            font-size:.78rem; font-weight:500;
            color:var(--accent);
            padding:.4rem .85rem;
            border:1px solid var(--border-a);
            border-radius:6px;
            transition:background .3s var(--ease);
        }
        .project-link:hover { background:var(--accent-dim); }
        .project-link svg { flex-shrink:0; opacity:.9; }

        .project-status {
            font-family:'Orbitron',monospace;
            font-size:.58rem; letter-spacing:.12em;
            text-transform:uppercase;
            padding:.45rem .75rem; border-radius:4px;
            white-space:nowrap; align-self:center;
        }
        .status-award {
            color:#ffd54f;
            background:rgba(255,213,79,.1);
            border:1px solid rgba(255,213,79,.28);
        }
        .status-active {
            color:var(--accent);
            background:var(--accent-dim);
            border:1px solid var(--border-a);
        }
        .status-dev {
            color:var(--accent-2);
            background:rgba(79,195,247,.1);
            border:1px solid rgba(79,195,247,.22);
        }

        /* =====================================================
           VISION SECTION
        ===================================================== */
        #vision {
            padding:var(--section-gap) 0 var(--section-gap);
            position:relative; overflow:hidden;
        }
        #vision::before {
            content:''; position:absolute; top:50%; left:50%;
            transform:translate(-50%,-50%);
            width:900px; height:900px; border-radius:50%;
            background:radial-gradient(circle, rgba(0,229,255,.03) 0%, transparent 60%);
            pointer-events:none;
        }

        .vision-center {
            max-width:980px; margin:0 auto; text-align:center;
        }

        .vision-divider {
            display:flex; align-items:center; gap:1.5rem; margin:3.5rem 0;
        }
        .vision-divider::before,
        .vision-divider::after {
            content:''; flex:1; height:1px;
            background:linear-gradient(to right, transparent, var(--border));
        }
        .vision-divider::after {
            background:linear-gradient(to left, transparent, var(--border));
        }
        .vision-divider i {
            display:block; width:7px; height:7px;
            background:var(--accent); transform:rotate(45deg); flex-shrink:0;
            box-shadow:0 0 10px var(--accent);
        }

        .vision-block {
            font-family:'Space Grotesk',sans-serif;
            font-size:clamp(.95rem,1.55vw,1.15rem);
            font-weight:400; line-height:2;
            color:var(--fg-body); text-align:justify;
            padding:3rem 3.5rem;
            background:var(--bg-card);
            border:1px solid var(--border);
            border-radius:16px; position:relative;
        }
        .vision-block::before {
            content:''; position:absolute; top:0; left:0; right:0; height:1px;
            background:linear-gradient(to right, transparent, var(--accent), transparent);
        }
        .vision-block::after {
            content:''; position:absolute; bottom:0; left:0; right:0; height:1px;
            background:linear-gradient(to right, transparent, rgba(0,229,255,.25), transparent);
        }
        .vision-block strong { color:var(--fg); font-weight:600; }

        /* Vision goal tiles */
        .vision-goals {
            display:grid; grid-template-columns:repeat(2,1fr);
            gap:1rem; margin-top:3.5rem; text-align:left;
        }
        .v-goal {
            display:flex; gap:.9rem;
            padding:1.4rem 1.5rem;
            background:var(--bg-card);
            border:1px solid var(--border);
            border-radius:10px;
            transition:border-color .35s, box-shadow .35s;
        }
        .v-goal:hover {
            border-color:var(--border-a);
            box-shadow:0 0 22px rgba(0,229,255,.06);
        }
        .v-dot {
            width:6px; height:6px; border-radius:50%;
            background:var(--accent); flex-shrink:0; margin-top:.55rem;
            box-shadow:0 0 8px var(--accent);
        }
        .v-goal p {
            font-size:.85rem; line-height:1.65; color:var(--fg-body);
        }
        .v-goal p strong { color:var(--fg); }

        /* =====================================================
           CONTACT SECTION
        ===================================================== */
        #contact {
            padding:var(--section-pad) 0 var(--section-bottom-last);
            background:var(--bg-alt); position:relative;
        }

        .contact-wrapper {
            display:grid; grid-template-columns:1fr 1fr;
            gap:3rem; align-items:stretch;
        }

        .contact-info .about-text-body {
            margin-top:1.4rem;
        }

        .contact-items {
            display:flex; flex-direction:column; gap:1rem;
            margin-top:2.8rem;
        }
        .contact-item {
            display:flex; align-items:flex-start; gap:1rem;
            padding:1.1rem 1.25rem;
            background:var(--bg-card);
            border:1px solid var(--border);
            border-radius:10px;
            transition:border-color .35s var(--ease);
        }
        .contact-item:hover { border-color:var(--border-a); }
        .contact-item-icon {
            font-size:1rem; color:var(--accent);
            line-height:1; flex-shrink:0;
            margin-top:.15rem;
        }
        .contact-item-label {
            font-size:.68rem; font-weight:500;
            color:var(--fg-muted);
            text-transform:uppercase; letter-spacing:.1em;
            margin-bottom:.25rem;
        }
        .contact-item-value {
            font-size:.9rem; color:var(--fg);
        }
        .contact-item-value a {
            color:var(--accent);
            transition:opacity .2s;
        }
        .contact-item-value a:hover { opacity:.8; }

        .contact-map {
            min-height:380px;
            border:1px solid var(--border);
            border-radius:12px;
            overflow:hidden;
            background:var(--bg-card);
        }
        .contact-map iframe {
            display:block; width:100%; height:100%;
            min-height:380px; filter:grayscale(.35) contrast(1.05);
        }

        /* =====================================================
           FOOTER
        ===================================================== */
        footer {
            padding:2.8rem 0;
            border-top:1px solid var(--border);
            background:var(--bg);
        }
        .footer-inner {
            display:flex; align-items:center; justify-content:space-between;
            flex-wrap:wrap; gap:1.5rem;
        }
        .footer-logo {
            font-family:'Orbitron',monospace;
            font-size:.88rem; font-weight:800;
            color:var(--fg); letter-spacing:.1em;
        }
        .footer-logo span { color:var(--accent); }
        .footer-links {
            display:flex; flex-wrap:wrap; gap:2rem;
        }
        .footer-links a {
            font-size:.78rem; color:var(--fg-muted);
            transition:color .2s;
        }
        .footer-links a:hover { color:var(--accent); }
        .footer-copy { font-size:.72rem; color:var(--fg-muted); }

        /* =====================================================
           RESPONSIVE
        ===================================================== */
        @media (max-width:1024px) {
            .sectors-grid { grid-template-columns:repeat(2,1fr); }
            .sectors-grid .card:last-child {
                grid-column:1 / -1; max-width:420px; margin:0 auto;
            }
            .nav-links { gap:1.5rem; }
            .nav-links a { font-size:.78rem; }
        }

        @media (max-width:900px) {
            .nav-links { display:none; }
            .burger    { display:flex; }
        }

        @media (max-width:768px) {
            :root {
                --nav-h:               64px;
                --section-top-first:   4rem;
                --section-pad:         3rem;
                --section-gap:         1.75rem;
                --section-bottom-last: 3.5rem;
            }

            .container,
            .nav-inner {
                padding-left:1.25rem;
                padding-right:1.25rem;
            }

            .nav-logo img { height:40px; }

            .burger {
                min-width:44px; min-height:44px;
                align-items:center; justify-content:center;
            }
            .lang-btn {
                min-height:36px;
                padding:6px 12px;
            }

            .mob-menu {
                padding:1rem 1.25rem 1.5rem;
                max-height:calc(100dvh - var(--nav-h));
                overflow-y:auto;
                -webkit-overflow-scrolling:touch;
            }
            .mob-menu a {
                padding:.85rem 0;
                font-size:1rem;
            }

            .vid-scroll-wrap { height:400vh; }

            .slogan-wrap { padding:0 1.25rem; }
            .slogan { padding:0; }
            .slogan-tag {
                font-size:.55rem;
                letter-spacing:.22em;
                margin-bottom:1rem;
            }
            .sec-title {
                font-size:clamp(1.65rem, 6.5vw, 2.4rem);
            }

            .hud-corner.tl { top:12px; left:12px; }
            .hud-corner.tr { top:12px; right:12px; }
            .hud-corner.bl { bottom:12px; left:12px; }
            .hud-corner.br { bottom:12px; right:12px; }
            .scroll-cue { bottom:1.25rem; }

            .about-grid   { grid-template-columns:1fr; gap:2.5rem; }
            .about-visual { order:-1; }
            .stats        { grid-template-columns:repeat(2,1fr); }
            .hud-ring { width:140px; height:140px; }

            .sectors-hd { margin-bottom:3rem; }
            .sectors-grid { grid-template-columns:1fr; }
            .sectors-grid .card:last-child { grid-column:auto; max-width:100%; }
            .card { padding:1.75rem; }
            .card:hover { transform:none; }

            .section-header {
                flex-wrap:wrap;
                gap:1rem;
                margin-bottom:2.5rem;
            }
            .section-title-group h2 {
                white-space:normal;
                font-size:clamp(1.5rem, 6vw, 2rem);
            }
            .section-line {
                flex:none;
                width:100%;
            }

            .project-card {
                grid-template-columns:1fr;
                gap:.85rem 1rem;
                padding:1.5rem;
            }
            .project-num { opacity:.7; }
            .project-info h3 {
                font-size:1.05rem;
                word-break:break-word;
            }
            .project-status { align-self:flex-start; }
            .project-links { gap:.5rem; }

            .vision-goals { grid-template-columns:1fr; }
            .vision-divider { margin:2.5rem 0; }
            .vision-block {
                padding:1.75rem;
                text-align:left;
                line-height:1.85;
            }
            .v-goal { padding:1.2rem 1.25rem; }

            .contact-wrapper { grid-template-columns:1fr; gap:2rem; }
            .contact-map,
            .contact-map iframe { min-height:280px; }

            .footer-inner {
                flex-direction:column;
                align-items:flex-start;
                gap:1.25rem;
            }
            .footer-links { gap:.75rem 1.25rem; }
            .footer-copy { line-height:1.6; }
        }

        @media (max-width:480px) {
            :root { --nav-h: 60px; }

            .container,
            .nav-inner,
            .mob-menu {
                padding-left:1rem;
                padding-right:1rem;
            }

            .nav-logo img { height:34px; }
            .logo-txt { font-size:1rem; }

            .slogan h1 { font-size:1.85rem; }
            .slogan h2 { font-size:1.55rem; }
            .scroll-cue span { font-size:.5rem; letter-spacing:.2em; }

            .stats { grid-template-columns:1fr 1fr; gap:.75rem; }
            .stat { padding:1rem .75rem; }
            .stat-n { font-size:1.45rem; }

            .card { padding:1.35rem; }
            .card-title { font-size:1.15rem; }

            .section-header { margin-bottom:2rem; }
            .project-card { padding:1.25rem; }
            .project-num { font-size:.75rem; }

            .vision-block {
                padding:1.25rem;
                font-size:.9rem;
            }
            .hud-label {
                font-size:.45rem;
                letter-spacing:.18em;
                white-space:normal;
                text-align:center;
                max-width:92%;
            }

            .contact-map,
            .contact-map iframe { min-height:240px; }
        }

        @media (prefers-reduced-motion: reduce) {
            .reveal {
                opacity:1;
                transform:none;
                transition:none;
            }
            .hud-ring,
            .hud-scan { animation:none; }
            .vid-scroll-wrap { height:100vh; }
        }

        /* =====================================================
           PRIVACY POLICY PAGE (standalone, no nav/footer)
        ===================================================== */
        .privacy-page {
            min-height: 100vh;
        }

        .privacy-main {
            padding: 5rem 0 6rem;
            position: relative;
        }

        .privacy-main::before {
            content: '';
            position: absolute;
            top: -80px;
            left: -120px;
            width: 480px;
            height: 480px;
            background: radial-gradient(circle, rgba(0,229,255,.05) 0%, transparent 70%);
            pointer-events: none;
        }

        .privacy-content {
            max-width: 760px;
            margin: 0 auto;
            position: relative;
        }

        .privacy-updated {
            margin-top: 1rem;
            font-size: .82rem;
            color: var(--fg-muted);
            letter-spacing: .04em;
        }

        .privacy-body {
            margin-top: 2.5rem;
            padding: 2.5rem 3rem;
            background: var(--bg-card);
            border: 1px solid var(--border);
            border-radius: 16px;
            position: relative;
        }

        .privacy-body::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 1px;
            background: linear-gradient(to right, transparent, var(--accent), transparent);
        }

        .privacy-body p,
        .privacy-body li {
            font-size: .97rem;
            line-height: 1.85;
            color: var(--fg-body);
        }

        .privacy-body p + p,
        .privacy-body ul {
            margin-top: 1rem;
        }

        .privacy-body h2 {
            font-family: 'Space Grotesk', sans-serif;
            font-size: 1.15rem;
            font-weight: 600;
            color: var(--fg);
            margin-top: 2rem;
            margin-bottom: .5rem;
        }

        .privacy-body h2:first-of-type {
            margin-top: 0;
        }

        .privacy-body ul {
            padding-left: 1.25rem;
            display: flex;
            flex-direction: column;
            gap: .5rem;
        }

        .privacy-body a {
            color: var(--accent);
            transition: opacity .2s;
        }

        .privacy-body a:hover {
            opacity: .8;
        }

        .privacy-note {
            margin-top: 2rem;
            padding-top: 1.5rem;
            border-top: 1px solid var(--border);
            font-size: .88rem;
            color: var(--fg-muted);
            font-style: italic;
        }

        /* Support form */
        .support-intro {
            margin-top: 1.25rem;
            font-size: .97rem;
            line-height: 1.85;
            color: var(--fg-body);
            max-width: 640px;
        }

        .support-form-wrap {
            margin-top: 2rem;
        }

        .support-form {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
        }

        .form-field {
            display: flex;
            flex-direction: column;
            gap: .5rem;
        }

        .form-field label {
            font-family: 'Space Grotesk', sans-serif;
            font-size: .82rem;
            font-weight: 500;
            color: var(--fg);
            letter-spacing: .04em;
        }

        .form-field input,
        .form-field textarea {
            width: 100%;
            padding: .85rem 1rem;
            background: rgba(255, 255, 255, .03);
            border: 1px solid var(--border);
            border-radius: 8px;
            color: var(--fg);
            font-family: 'Inter', sans-serif;
            font-size: .95rem;
            line-height: 1.5;
            transition: border-color .25s var(--ease), box-shadow .25s var(--ease);
        }

        .form-field input::placeholder,
        .form-field textarea::placeholder {
            color: var(--fg-muted);
        }

        .form-field input:focus,
        .form-field textarea:focus {
            outline: none;
            border-color: var(--border-a);
            box-shadow: 0 0 0 3px rgba(0, 229, 255, .08);
        }

        .form-field textarea {
            resize: vertical;
            min-height: 140px;
        }

        .support-submit {
            align-self: flex-start;
            padding: .75rem 2rem;
            background: var(--accent);
            border: none;
            border-radius: 6px;
            color: var(--bg);
            font-family: 'Space Grotesk', sans-serif;
            font-size: .88rem;
            font-weight: 600;
            letter-spacing: .06em;
            transition: opacity .2s, box-shadow .25s var(--ease);
        }

        .support-submit:hover:not(:disabled) {
            opacity: .92;
            box-shadow: 0 0 24px rgba(0, 229, 255, .25);
        }

        .support-submit:disabled {
            opacity: .55;
            cursor: not-allowed;
        }

        .form-status {
            font-size: .88rem;
            line-height: 1.6;
            padding: .85rem 1rem;
            border-radius: 8px;
        }

        .form-status.success {
            color: var(--accent);
            background: var(--accent-dim);
            border: 1px solid var(--border-a);
        }

        .form-status.error {
            color: #ff8a80;
            background: rgba(255, 138, 128, .08);
            border: 1px solid rgba(255, 138, 128, .25);
        }

        @media (max-width: 768px) {
            .privacy-main {
                padding: 3.5rem 0 4rem;
            }

            .privacy-body {
                padding: 1.75rem;
            }
        }

        @media (max-width: 480px) {
            .privacy-main {
                padding: 2.5rem 0 3rem;
            }

            .privacy-body {
                padding: 1.25rem;
            }
        }

        /* =====================================================
           MISC UTILITIES
        ===================================================== */
        @keyframes spinBtn {
            from { transform:rotate(0deg); }
            to   { transform:rotate(360deg); }
