*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,Arial,sans-serif}body,.login-container{background-color:#121212;color:#e0e0e0;height:100vh;display:flex;align-items:center;justify-content:center}.login-card{background-color:#1e1e1e;padding:2.5rem 3rem;border-radius:10px;box-shadow:0 6px 10px #0009;width:100%;max-width:400px;text-align:center}.login-header{display:flex;flex-direction:column;align-items:center;text-align:center}.login-header .logo{width:100px;height:auto;margin-bottom:1rem;display:block;margin-left:auto;margin-right:auto}.login-header h2{color:#4fa3ff;margin-bottom:.5rem}.login-header p{color:#b0b0b0;font-size:.9rem;margin-bottom:1.5rem}.form-group{text-align:left;margin-bottom:1.2rem}.form-group label{display:block;margin-bottom:.4rem;font-size:.9rem;color:#bdbdbd}.form-group input{width:100%;padding:.7rem;border:1px solid #333;border-radius:5px;background-color:#2a2a2a;color:#fff;transition:border-color .3s ease}.form-group input:focus{border-color:#4fa3ff;outline:none}.btn-login{width:100%;background-color:#4fa3ff;color:#fff;font-weight:600;border:none;border-radius:5px;padding:.8rem;cursor:pointer;margin-top:.8rem;transition:background .3s ease}.btn-login:hover{background-color:#318ae6}.login-footer{margin-top:1.8rem;font-size:.85rem;color:#777}@media (max-width: 480px){.login-card{padding:2rem 1.5rem}}.swal2-popup{background:#1e1e1e!important;color:#e0e0e0!important;border-radius:10px!important}.swal2-title{color:#4fa3ff!important}.swal2-confirm{background-color:#4fa3ff!important;border:none!important}html,body,#root{background-color:#121212!important;height:100%;width:100%}.login-container{min-height:100vh;background-color:#121212}.swal2-popup{width:350px!important;height:330px!important;padding:1.2rem!important;font-size:.9rem!important;background:#1f1f1f!important;color:#ddd!important;border-radius:12px!important;box-shadow:0 0 15px #0006}.swal2-title{font-size:1.1rem!important;color:#4fa3ff!important}.swal2-icon{transform:scale(.8)}body{margin:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#1e1e1e;color:#f1f1f1}.home-container{display:flex;flex-direction:column;min-height:100vh}.navbar{display:flex;justify-content:space-between;align-items:center;background-color:#2a2a2a;padding:15px 40px;box-shadow:0 2px 6px #0006;position:sticky;top:0;z-index:10}.logo{display:flex;align-items:center;font-size:1.5rem;font-weight:700;color:#4fa3ff;gap:10px}.logo-img{width:40px;height:40px;object-fit:contain;filter:drop-shadow(0 0 3px rgba(79,163,255,.6))}.nav-links a{color:#ddd;text-decoration:none;margin-left:20px;font-weight:500;transition:color .2s}.nav-links a:hover{color:#4da3ff}.main-content h1{font-size:2rem;margin-bottom:10px;color:#4da3ff}.main-content p{margin-bottom:30px;color:#ccc}.footer{background-color:#2a2a2a;text-align:center;padding:15px 0;color:#aaa;border-top:1px solid #333}.nav-links a{color:#e0e0e0;margin-left:20px;cursor:pointer;text-decoration:none;transition:color .3s ease}.nav-links a:hover{color:#4fa3ff}.chart-container{background-color:#1e1e1e;padding:1.5rem;border-radius:10px;box-shadow:0 4px 10px #0009;margin-top:2rem}.chart-container h3{color:#4fa3ff;margin-bottom:1rem;text-align:center}.chart-container:hover{transform:scale(1.02);transition:.3s ease}.hamburger{display:none;flex-direction:column;justify-content:center;cursor:pointer;width:30px;height:25px;gap:5px;z-index:15}.hamburger span{height:3px;width:100%;background:#e0e0e0;border-radius:5px;transition:all .3s ease}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.dropdown{position:relative;display:inline-block}.dropdown-toggle{cursor:pointer;-webkit-user-select:none;user-select:none}.dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;background:#2a2a2a;border-radius:6px;box-shadow:0 6px 18px #00000073;display:flex;flex-direction:column;min-width:180px;padding:6px 0;z-index:999;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease,visibility .18s;pointer-events:none}.dropdown-menu a{color:#ddd;padding:10px 16px;text-decoration:none;display:block;transition:background .15s ease,color .15s ease;font-size:.95rem}.dropdown-menu a:hover{background:#333;color:#4fa3ff}.dropdown-menu.show,.dropdown:hover .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}@media (max-width: 768px){.hamburger{display:flex}.nav-links{position:absolute;top:60px;left:0;background:#2a2a2a;width:100%;flex-direction:column;align-items:center;gap:15px;padding:20px 0;opacity:0;pointer-events:none;transform:translateY(-20px);transition:all .3s ease}.nav-links.open{opacity:1;pointer-events:all;transform:translateY(0)}.nav-links a{font-size:1rem}.dropdown-menu a{padding-left:18px;color:#ddd}}body{margin:0;font-family:Poppins,Segoe UI,sans-serif;background-color:#0d0d0d;color:#f5f5f5;scroll-behavior:smooth}.hero{background:linear-gradient(135deg,#111,#1e1e1e,#0d0d0d);padding:100px 20px;text-align:center;color:#fff}.hero h1{font-size:2.8rem;font-weight:700;margin-bottom:15px;background:linear-gradient(90deg,#4ea8de,#00c6ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero p{max-width:600px;margin:0 auto 40px;color:#c5c5c5;line-height:1.6}.hero button{background:#0078ff;border:none;padding:14px 36px;color:#fff;font-weight:600;border-radius:10px;cursor:pointer;transition:.3s ease}.hero button:hover{background:#289cff;transform:translateY(-3px)}.about{padding:80px 20px;max-width:800px;margin:auto;text-align:center}.about h2{font-size:2rem;margin-bottom:20px;color:#4ea8de}.about p{color:#d0d0d0;line-height:1.8;margin-bottom:25px}.about ul{list-style:none;padding:0;text-align:left;max-width:600px;margin:auto}.about li{background:#1a1a1a;padding:14px 20px;border-radius:12px;margin-bottom:12px;color:#f0f0f0;transition:.3s}.about li:hover{background:#242424;transform:translate(5px)}.services{background-color:#151515;padding:90px 20px;text-align:center}.services h2{font-size:2.2rem;margin-bottom:40px;color:#4ea8de}.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:25px;max-width:1000px;margin:0 auto}.service-card{background:#1c1c1c;padding:28px 20px;border-radius:16px;transition:.4s;box-shadow:0 0 15px #0000004d}.service-card:hover{background:#242424;transform:translateY(-5px);box-shadow:0 0 25px #4ea8de33}.service-card h3{margin-top:10px;color:#fff}.service-card p{color:silver;font-size:.95rem;line-height:1.5}.cta{padding:100px 20px;text-align:center;background:linear-gradient(180deg,#0d0d0d,#101820)}.cta h2{font-size:2rem;margin-bottom:15px;color:#4ea8de}.cta p{color:#cfcfcf;margin-bottom:30px}.cta button{margin:8px;padding:14px 36px;font-weight:600;border:none;border-radius:10px;cursor:pointer;color:#fff;transition:.3s}.cta .wa{background-color:#25d366}.cta .wa:hover{background-color:#1ebe5d;transform:scale(1.05)}.cta .email{background-color:#0078ff}.cta .email:hover{background-color:#289cff;transform:scale(1.05)}.main-content{flex:1;padding:40px}@media (max-width: 768px){.hero h1{font-size:2rem}.about ul{text-align:center}.service-grid{grid-template-columns:1fr}}.about-page{background-color:#0d0d0d;color:#f1f1f1;font-family:Poppins,sans-serif}.about-hero{text-align:center;padding:100px 20px 80px;background:linear-gradient(145deg,#1a1a1a,#111)}.about-hero h1{font-size:2.8rem;background:linear-gradient(90deg,#00c6ff,#4ea8de);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:20px}.about-hero p{max-width:700px;margin:0 auto;color:#d0d0d0;font-size:1.1rem;line-height:1.8}.about-story{padding:80px 20px;max-width:800px;margin:auto;text-align:center}.about-story h2{font-size:2rem;color:#4ea8de;margin-bottom:20px}.about-story p{color:#c5c5c5;line-height:1.8;margin-bottom:20px}.about-vision{background-color:#151515;padding:90px 20px;text-align:center}.about-vision h2{font-size:2.2rem;margin-bottom:50px;color:#4ea8de}.vision-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;max-width:1000px;margin:auto}.vision-card{background:#1c1c1c;padding:30px 25px;border-radius:16px;box-shadow:0 0 15px #4ea8de26;transition:.3s}.vision-card:hover{background:#222;transform:translateY(-4px)}.vision-card h3{margin-bottom:15px;color:#00c6ff}.vision-card p,.vision-card ul{color:silver;text-align:left;line-height:1.7}.about-tech{padding:90px 20px;text-align:center}.about-tech h2{color:#4ea8de;font-size:2.2rem;margin-bottom:40px}.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;max-width:900px;margin:0 auto}.tech-card{background:#1c1c1c;padding:20px;border-radius:12px;font-weight:600;color:#00c6ff;transition:.3s;box-shadow:0 0 10px #00c6ff1a}.tech-card:hover{background:#242424;box-shadow:0 0 20px #00c6ff40;transform:translateY(-5px)}@media (max-width: 768px){.about-hero h1{font-size:2rem}}.loading-text{color:#9ca3af;font-size:1rem;letter-spacing:1px;font-family:Segoe UI,sans-serif}.dots:after{content:"";animation:dots 1.5s steps(4,end) infinite}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%{content:"..."}to{content:"...."}}.search-input{padding:8px 12px;border-radius:6px;border:1px solid #333;background-color:#2a2a2a;color:#fff;width:250px}.search-input:focus{outline:none;border-color:#4fa3ff}.services-page{background-color:#0d0d0d;color:#f1f1f1;font-family:Poppins,sans-serif}.services-hero{text-align:center;padding:100px 20px 60px;background:linear-gradient(135deg,#1a1a1a,#111)}.services-hero h1{font-size:2.8rem;margin-bottom:20px;background:linear-gradient(90deg,#00c6ff,#4ea8de);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.services-hero p{max-width:700px;margin:0 auto;color:#c5c5c5;line-height:1.7}.services-list{padding:80px 20px;text-align:center}.services-list h2{color:#4ea8de;font-size:2.2rem;margin-bottom:40px}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:30px;max-width:1100px;margin:0 auto}.service-card{background:#1b1b1b;padding:30px 25px;border-radius:16px;text-align:left;box-shadow:0 0 15px #0000004d;transition:.4s}.service-card:hover{transform:translateY(-6px);background:#232323;box-shadow:0 0 25px #4ea8de33}.service-icon{font-size:2.5rem;margin-bottom:15px}.service-card h3{color:#00c6ff;margin-bottom:10px}.service-card p{color:#cfcfcf;line-height:1.6;margin-bottom:10px}.service-card ul{list-style:none;padding:0;margin:0}.service-card li{color:#a9a9a9;font-size:.95rem;line-height:1.6}.workflow{background-color:#151515;padding:90px 20px;text-align:center}.workflow h2{color:#4ea8de;font-size:2.2rem;margin-bottom:50px}.workflow-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:25px;max-width:1000px;margin:auto}.workflow-card{background:#1b1b1b;border-radius:16px;padding:30px 20px;position:relative;transition:.4s}.workflow-card:hover{transform:translateY(-6px);background:#222;box-shadow:0 0 20px #00c6ff33}.workflow-step{display:inline-block;background-color:#00c6ff;color:#000;font-weight:700;border-radius:50%;width:38px;height:38px;line-height:38px;text-align:center;margin-bottom:15px}.workflow-card h4{color:#00c6ff;margin-bottom:10px}.workflow-card p{color:silver;line-height:1.6}.services-cta{padding:100px 20px;text-align:center;background:linear-gradient(180deg,#0d0d0d,#101820)}.services-cta h2{color:#4ea8de;font-size:2rem;margin-bottom:15px}.services-cta p{color:#cfcfcf;max-width:650px;margin:0 auto 30px}.cta-buttons button{margin:8px;padding:14px 36px;border:none;border-radius:10px;font-weight:600;cursor:pointer;color:#fff;transition:.3s}.cta-buttons .wa{background-color:#25d366}.cta-buttons .wa:hover{background-color:#1ebe5d;transform:scale(1.05)}.cta-buttons .email{background-color:#0078ff}.cta-buttons .email:hover{background-color:#289cff;transform:scale(1.05)}@media (max-width: 768px){.services-hero h1{font-size:2rem}.service-card,.workflow-card{text-align:center}}.portfolio-page{background-color:#0e0e0e;color:#f1f1f1;font-family:Poppins,sans-serif}.portfolio-header{text-align:center;padding:100px 20px 60px;background:linear-gradient(135deg,#141414,#0d1b2a)}.portfolio-header h1{font-size:2.8rem;margin-bottom:20px;background:linear-gradient(90deg,#00c6ff,#4ea8de);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.portfolio-header p{max-width:750px;margin:0 auto;color:#c5c5c5;line-height:1.7}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:35px;max-width:1200px;margin:80px auto;padding:0 20px}.portfolio-card{background-color:#1a1a1a;border-radius:16px;overflow:hidden;transition:.4s ease;box-shadow:0 0 15px #0006}.portfolio-card:hover{transform:translateY(-8px);box-shadow:0 0 30px #00c6ff40}.portfolio-img img{width:100%;height:220px;object-fit:cover;transition:.4s ease}.portfolio-card:hover img{transform:scale(1.05)}.portfolio-content{padding:25px}.portfolio-content h3{color:#00c6ff;margin-bottom:10px;font-size:1.3rem}.portfolio-content p{color:#cfcfcf;font-size:.95rem;line-height:1.6;margin-bottom:15px}.tech-stack{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.tech-stack span{background-color:#111f2b;border:1px solid #00c6ff;border-radius:8px;padding:4px 10px;font-size:.8rem;color:#00c6ff}.view-btn{background:linear-gradient(90deg,#00c6ff,#4ea8de);color:#000;text-decoration:none;padding:10px 20px;border-radius:10px;font-weight:600;transition:.3s}.view-btn:hover{transform:scale(1.05);background:linear-gradient(90deg,#4ea8de,#00c6ff)}.portfolio-cta{text-align:center;padding:100px 20px;background:linear-gradient(180deg,#0d0d0d,#101820)}.portfolio-cta h2{color:#4ea8de;font-size:2rem;margin-bottom:15px}.portfolio-cta p{color:#cfcfcf;max-width:650px;margin:0 auto 30px}.portfolio-cta button{padding:14px 36px;border:none;border-radius:10px;background-color:#00c6ff;color:#000;font-weight:700;cursor:pointer;transition:.3s}.portfolio-cta button:hover{background-color:#4ea8de;transform:scale(1.05)}@media (max-width: 768px){.portfolio-header h1{font-size:2rem}.portfolio-content{text-align:center}.tech-stack{justify-content:center}}.konsultasi-container{max-width:700px;margin:80px auto;padding:40px;background:#1e1e1e;color:#f1f1f1;border-radius:10px;box-shadow:0 4px 15px #0009;text-align:center;transition:transform .3s ease}.konsultasi-container:hover{transform:translateY(-3px)}.konsultasi-container h1{color:#4fa3ff;font-size:2rem;margin-bottom:10px}.konsultasi-container p{color:#bbb;margin-bottom:30px}.konsultasi-form{display:flex;flex-direction:column;gap:20px}.form-group{text-align:left}.form-group label{font-weight:600;color:#ddd;margin-bottom:5px;display:block}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border-radius:8px;border:1px solid #333;background-color:#2a2a2a;color:#f1f1f1;font-size:1rem;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4fa3ff;outline:none;box-shadow:0 0 5px #4fa3ff66}.btn-kirim{background-color:#25d366;color:#fff;border:none;padding:14px 0;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background-color .3s ease,transform .2s ease}.btn-kirim:hover{background-color:#1ebc59;transform:scale(1.03)}@media (max-width: 768px){.konsultasi-container{margin:30px 15px;padding:25px}.konsultasi-container h1{font-size:1.6rem}}.btn-kirim.loading{background-color:#2f82e8;cursor:not-allowed;display:flex;align-items:center;justify-content:center}.spinner{border:3px solid #f3f3f3;border-top:3px solid #fff;border-radius:50%;width:16px;height:16px;margin-right:8px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}body{background:#0f0f17;font-family:Poppins,sans-serif;color:#fff}.download-container{max-width:1100px;margin:50px auto;padding:20px;text-align:center}.title{font-size:36px;margin-bottom:35px;font-weight:700;color:#e4e7ec;text-shadow:0 0 20px rgba(0,122,255,.3)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:25px}.card{padding:25px;border-radius:15px;background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);transition:.3s}.card:hover{transform:translateY(-7px);border:1px solid rgba(0,153,255,.5);box-shadow:0 0 25px #09f3}.card-title{font-size:22px;font-weight:600;margin-bottom:10px}.card-desc{font-size:15px;opacity:.8;margin-bottom:18px;min-height:60px}.download-btn{display:inline-block;padding:10px 20px;background:#007bff;border-radius:8px;text-decoration:none;color:#fff;font-weight:600;transition:.3s}.download-btn:hover{background:#0a84ff;box-shadow:0 0 15px #09f6}.fade-in{animation:fadeIn .8s ease forwards;opacity:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
