* { margin: 0; padding: 0; box-sizing: border-box; }
        html { scroll-behavior: smooth; }
        body { font-family: "Poppins", sans-serif; background: #ffffff; color: #1e293b; }
        .nav-link { position: relative; color: #64748b; font-size: 0.875rem; font-weight: 500; transition: color 0.2s; cursor: pointer; text-decoration: none; }
        .nav-link:hover { color: #2563eb; }
        .nav-link.active { color: #2563eb; font-weight: 600; }
        .nav-link.active::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 100%; height: 2px; background: #3b82f6; border-radius: 1px; }
        .btn-primary { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.75rem 1.75rem; background: #2563eb; color: #fff; font-size: 0.875rem; font-weight: 600; border-radius: 0.5rem; transition: all 0.2s; cursor: pointer; border: none; }
        .btn-primary:hover { background: #1d4ed8; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(37,99,235,0.25); }
        .btn-outline { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.75rem 1.75rem; background: transparent; color: #2563eb; font-size: 0.875rem; font-weight: 600; border-radius: 0.5rem; border: 1.5px solid #bfdbfe; transition: all 0.2s; cursor: pointer; }
        .btn-outline:hover { border-color: #3b82f6; background: #eff6ff; }
        .tech-card { padding: 1.5rem; background: #ffffff; border: 1px solid #f1f5f9; border-radius: 0.75rem; transition: all 0.25s; cursor: default; }
        .tech-card:hover { border-color: #bfdbfe; box-shadow: 0 4px 16px rgba(37,99,235,0.06); transform: translateY(-2px); }
        .tech-card .ico { width: 2.5rem; height: 2.5rem; display: flex; align-items: center; justify-content: center; border-radius: 0.5rem; background: #eff6ff; color: #3b82f6; margin-bottom: 0.75rem; }
        .tech-card .ico svg { width: 1.25rem; height: 1.25rem; }
        .feature-icon { width: 3rem; height: 3rem; display: flex; align-items: center; justify-content: center; border-radius: 0.75rem; background: #eff6ff; color: #3b82f6; flex-shrink: 0; }
        .feature-icon svg { width: 1.5rem; height: 1.5rem; }
        .footer-link { color: #94a3b8; font-size: 0.8125rem; transition: color 0.2s; cursor: pointer; text-decoration: none; }
        .footer-link:hover { color: #ffffff; }
        .gradient-text { background: linear-gradient(135deg, #2563eb 0%, #60a5fa 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
        .hero-badge { display: inline-flex; align-items: center; gap: 0.375rem; padding: 0.375rem 1rem; background: #eff6ff; border: 1px solid #bfdbfe; border-radius: 9999px; font-size: 0.8125rem; color: #2563eb; font-weight: 500; }
        #fab-top { position: fixed; bottom: 2rem; right: 2rem; z-index: 100; width: 3rem; height: 3rem; display: flex; align-items: center; justify-content: center; background: #2563eb; color: #fff; border: none; border-radius: 9999px; cursor: pointer; box-shadow: 0 4px 12px rgba(37,99,235,0.3); transition: all 0.25s; opacity: 0; visibility: hidden; transform: translateY(10px); }
        #fab-top.show { opacity: 1; visibility: visible; transform: translateY(0); }
        #fab-top:hover { background: #1d4ed8; transform: translateY(-2px); box-shadow: 0 6px 16px rgba(37,99,235,0.35); }
        #fab-top svg { width: 1.25rem; height: 1.25rem; }