:root {
            --primary: #0033ff;
            --primary-glow: rgba(0, 51, 255, 0.4);
            --bg-dark: #010010;
            --card-bg: rgba(10, 10, 35, 0.8);
            --text-main: #ffffff;
            --text-dim: #aeb5d9;
            --accent: #3b82f6;
            --sidebar-width: clamp(240px, 20vw, 300px);
            --success: #27c93f;
        }

        * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Poppins', sans-serif; }
        
        body {
            background: var(--bg-dark);
            color: var(--text-main);
            overflow-x: hidden;
            min-height: 100vh;
            display: flex;
            flex-direction: column; /* Mobile stack */
        }

        /* --- Ambient Background --- */
        .bg-glow {
            position: fixed; inset: 0;
            background: radial-gradient(circle at 15% 20%, #1a1a50aa, transparent 40%),
                        radial-gradient(circle at 85% 70%, #0033ff44, transparent 40%);
            filter: blur(80px); z-index: -2;
        }

        .grid-overlay {
            position: fixed; inset: 0;
            background-image: linear-gradient(rgba(10, 10, 42, 0.2) 1px, transparent 1px),
                              linear-gradient(90deg, rgba(10, 10, 42, 0.2) 1px, transparent 1px);
            background-size: 50px 50px; z-index: -1;
        }

        /* --- Mobile Overlay --- */
        .sidebar-overlay {
            display: none;
            position: fixed;
            inset: 0;
            background: rgba(0, 0, 0, 0.5);
            backdrop-filter: blur(4px);
            z-index: 999;
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .sidebar-overlay.active { display: block; opacity: 1; }

        /* --- Sidebar (Synced with Index) --- */
        nav.sidebar {
            position: fixed; left: 0; top: 0; height: 100vh; width: 280px;
            background: rgba(2, 2, 20, 0.9); backdrop-filter: blur(15px);
            border-right: 1px solid rgba(255, 255, 255, 0.05);
            display: flex; flex-direction: column; padding: 2.5rem 1.5rem; z-index: 1000;
            transform: translateX(-100%); 
            transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            overflow-y: auto;
        }

        nav.sidebar.active { transform: translateX(0); }

        .profile-container { text-align: center; margin-bottom: 2rem; }
        .profile-img {
            width: 100%; max-width: 100px; aspect-ratio: 1/1; border-radius: 50%;
            border: 3px solid var(--primary); padding: 5px;
            box-shadow: 0 0 20px var(--primary-glow); object-fit: cover;
        }

        .nav-links { display: flex; flex-direction: column; gap: 0.5rem; }
        .nav-links a {
            display: flex; align-items: center; padding: 0.75rem 1rem;
            color: var(--text-dim); text-decoration: none; border-radius: 12px;
            transition: 0.3s; font-size: 0.95rem;
        }
        .nav-links a i { width: 25px; font-size: 1.1rem; }
        .nav-links a span { margin-left: 10px; }
        .nav-links a:hover, .nav-links a.active {
            background: rgba(0, 51, 255, 0.15); color: #fff; transform: translateX(5px);
        }

        /* --- Mobile Toggle --- */
        .mobile-toggle {
            display: flex; align-items: center; justify-content: center;
            position: fixed; top: 1rem; right: 1rem; z-index: 2000;
            background: var(--primary); width: 3rem; height: 3rem;
            border-radius: 12px; border: none; color: white; font-size: 1.5rem;
            cursor: pointer; box-shadow: 0 4px 15px var(--primary-glow);
        }

        /* --- Main Content --- */
        main { 
            flex: 1; display: flex; align-items: center; justify-content: center; 
            padding: 5rem 1.5rem 6rem 1.5rem; width: 100%; 
        }

        .contact-card {
            width: 100%; max-width: 800px;
            background: var(--card-bg); border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 24px; padding: 2.5rem 1.5rem; backdrop-filter: blur(20px);
            box-shadow: 0 20px 50px rgba(0,0,0,0.5); position: relative;
            animation: slideUp 0.8s ease-out;
        }

        @keyframes slideUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }

        .terminal-dots { position: absolute; top: 1.2rem; left: 1.5rem; display: flex; gap: 8px; }
        .dot { width: 12px; height: 12px; border-radius: 50%; }
        .red { background: #ff5f56; } .yellow { background: #ffbd2e; } .green { background: #27c93f; }

        h2 { font-size: 1.8rem; margin: 1rem 0 0.5rem; display: flex; align-items: center; gap: 12px; }
        h2 i { color: var(--primary); }
        .subtitle { color: var(--text-dim); margin-bottom: 2rem; font-size: 0.9rem; }

        /* --- Form Styling --- */
        .form-row { display: grid; grid-template-columns: 1fr; gap: 1.2rem; margin-bottom: 1.2rem; }
        .form-group { position: relative; }
        .form-group label { display: block; font-size: 0.7rem; color: var(--accent); margin-bottom: 6px; text-transform: uppercase; font-weight: 600; }

        .input-wrapper { position: relative; }
        .input-wrapper i { position: absolute; left: 15px; top: 50%; transform: translateY(-50%); color: var(--accent); opacity: 0.7; }
        
        input, textarea, .custom-select-trigger {
            width: 100%; background: rgba(255, 255, 255, 0.05);
            border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 12px;
            padding: 12px 15px 12px 45px; color: white; font-size: 0.95rem; transition: 0.3s;
        }
        textarea { height: 100px; padding-top: 15px; resize: none; }
        input:focus, textarea:focus { outline: none; border-color: var(--primary); background: rgba(0, 51, 255, 0.08); }

        .phone-container { display: grid; grid-template-columns: 1fr; gap: 1rem; }

        /* Country Selector Tweak */
        .custom-select-trigger { padding-left: 15px; display: flex; align-items: center; justify-content: space-between; }
        .custom-select-options {
            position: absolute; top: 110%; left: 0; width: 100%; max-height: 250px;
            background: #0a0a25; border: 1px solid var(--primary); border-radius: 12px;
            overflow-y: auto; z-index: 100; display: none;
        }
        .custom-select.active .custom-select-options { display: block; }
        .option { padding: 10px 15px; display: flex; align-items: center; gap: 10px; cursor: pointer; }
        .option:hover { background: var(--primary); }
        .option img { width: 20px; }

        .btn-send {
            width: 100%; background: var(--primary); color: white; padding: 1rem;
            border-radius: 12px; border: none; font-weight: 600; cursor: pointer;
            transition: 0.3s; display: flex; align-items: center; justify-content: center; gap: 10px;
            box-shadow: 0 10px 20px var(--primary-glow);
        }

        /* --- Popups --- */
        .popup-overlay {
            position: fixed; inset: 0; background: rgba(0, 0, 0, 0.8);
            backdrop-filter: blur(10px); display: none; align-items: center;
            justify-content: center; z-index: 3000; opacity: 0; transition: 0.4s;
        }
        .popup-overlay.active { display: flex; opacity: 1; }
        .success-popup {
            background: var(--card-bg); border: 1px solid var(--primary);
            padding: 2.5rem 1.5rem; border-radius: 24px; text-align: center;
            max-width: 350px; width: 90%; transform: scale(0.8); transition: 0.4s;
        }
        .popup-overlay.active .success-popup { transform: scale(1); }
        .success-icon { font-size: 3rem; color: var(--success); margin-bottom: 1rem; }

        footer {
            position: fixed; bottom: 0; width: 100%; padding: 1rem;
            text-align: center; font-size: 0.8rem; color: var(--text-dim);
            background: rgba(1, 0, 16, 0.8); backdrop-filter: blur(10px);
            border-top: 1px solid rgba(255,255,255,0.05); z-index: 100;
        }
/* d */
 /* d */
        /* =========================================
           RESPONSIVE BREAKPOINTS
           ========================================= */

        @media (min-width: 768px) {
            .contact-card { padding: 3.5rem; }
            h2 { font-size: 2.2rem; }
            .form-row { grid-template-columns: 1fr 1fr; }
            .phone-container { grid-template-columns: 140px 1fr; }
        }

        @media (min-width: 1024px) {
            body { flex-direction: row; }
            .mobile-toggle, .sidebar-overlay { display: none !important; }
            nav.sidebar { transform: translateX(0); width: var(--sidebar-width); }
            main { margin-left: var(--sidebar-width); padding: 3rem; }
            footer { width: calc(100% - var(--sidebar-width)); left: var(--sidebar-width); }
            .bg-glow { filter: blur(120px); }
        }