:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0 0 60px;transition:background-color .4s ease,color .4s ease;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}body.dark-mode{background-color:#1c1c1c;color:#f0f0f0}body.dark-mode a{color:#87a8ff}body.dark-mode button{background-color:#2a2a2a;color:#f0f0f0;border:1px solid #555}body.dark-mode button:hover{border-color:#87a8ff}body.dark-mode h1,body.dark-mode h2,body.dark-mode p{color:#f0f0f0}.home{position:relative;text-align:center;padding:6rem 1rem 4rem;overflow:hidden;background-color:#fff}.angled-background{position:absolute;top:0;left:0;width:100%;height:300px;background-color:#021d41d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);clip-path:polygon(0 0,100% 0,100% 80%,0 100%);z-index:1}.logo,.home h1,.home p{position:relative;z-index:2}.logo{width:200px;height:auto;margin-bottom:1rem}.home h1{font-size:2.8rem;font-weight:700;color:#1a1a2e;margin-bottom:.5rem}.home p{font-size:1.2rem;color:#444;max-width:700px;margin:0 auto;padding:0 1rem}body.dark-mode .home{background-color:#121212;color:#f0f0f0}body.dark-mode .home h1{color:#e0e0e0}body.dark-mode .home p{color:#ccc}body.dark-mode .angled-background{background-color:#141414d9}@media (max-width: 768px){.logo{width:150px}.home h1{font-size:2.2rem}.home p{font-size:1rem}.angled-background{height:220px;clip-path:polygon(0 0,100% 0,100% 85%,0 100%)}}@media (max-width: 480px){.logo{width:120px}.home h1{font-size:1.8rem}.home p{font-size:.95rem}.angled-background{height:180px;clip-path:polygon(0 0,100% 0,100% 90%,0 100%)}}.services-section{padding:4rem 2rem;background-color:#f9f9f9;text-align:center}.services-section h2{font-size:2.5rem;margin-bottom:2rem;color:#222;font-weight:700;text-transform:uppercase;border-bottom:3px solid #004aad;display:inline-block;padding-bottom:.5rem}.services-content{display:flex;justify-content:center;align-items:center;flex-direction:column}.services-img{width:100%;max-width:900px;height:auto;border-radius:12px;box-shadow:0 6px 18px #0000001a;transition:transform .3s ease}.services-img:hover{transform:scale(1.02)}body.dark-mode .services-section{background-color:#1c1c1c;color:#f0f0f0}body.dark-mode .services-section h2{color:#f0f0f0;border-color:#87a8ff}body.dark-mode .services-img{box-shadow:0 6px 18px #ffffff1a}@media (max-width: 768px){.services-section h2{font-size:2rem}.services-img{max-width:100%;border-radius:8px}}@media (max-width: 480px){.services-section h2{font-size:1.8rem}.services-img{border-radius:6px}}.gallery{padding:2rem;text-align:center;background-color:#f9f9f9}.gallery h2{margin-bottom:2rem;font-size:2rem;color:#222}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;padding:0 1rem}.gallery-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow:hidden;transition:transform .3s ease}.gallery-card:hover{transform:scale(1.03)}.gallery-card img{width:100%;height:300px;object-fit:cover}.gallery-card h3{margin:1rem 0 .5rem;font-size:1.2rem;color:#333}.gallery-card p{padding:0 1rem 1rem;font-size:.95rem;color:#555}body.dark-mode .gallery{background-color:#1e1e1e;color:#fff}body.dark-mode .gallery-card{background-color:#2a2a2a;color:#e0e0e0}body.dark-mode .gallery-card p{color:#ccc}@media (max-width: 768px){.gallery{padding:1.5rem 1rem}.gallery h2{font-size:1.6rem;margin-bottom:1.5rem}.gallery-grid{gap:1.5rem}.gallery-card img{height:220px}.gallery-card h3{font-size:1.1rem}.gallery-card p{font-size:.9rem}}@media (max-width: 480px){.gallery{padding:1rem .5rem}.gallery h2{font-size:1.4rem}.gallery-card img{height:180px}.gallery-card h3{font-size:1rem}.gallery-card p{font-size:.85rem}}.contact-section{padding:4rem 2rem;background:linear-gradient(to right,#f0f4ff,#fff);opacity:0;transform:translateY(30px);transition:all .8s ease}.contact-section.fade-in{opacity:1;transform:translateY(0)}.contact-container{display:flex;flex-wrap:wrap;gap:2rem;max-width:1200px;margin:auto;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 6px 24px #0000001a}.contact-left{flex:1;padding:2rem;min-width:300px}.section-title{font-size:2.5rem;color:#004aad;margin-bottom:.5rem}.subtitle{color:#666;margin-bottom:1.5rem}.contact-info{margin-bottom:2rem}.contact-info p{margin:.3rem 0;color:#444;font-size:.95rem}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{position:relative}.contact-form input,.contact-form textarea{width:100%;padding:1rem .75rem;border:1px solid #ccc;border-radius:8px;font-size:1rem;background:transparent;outline:none;transition:border .3s ease}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:#004aad}.form-group label{position:absolute;top:1rem;left:.8rem;color:#888;background:#fff;padding:0 .2rem;transition:.3s;pointer-events:none}.contact-form input:focus+label,.contact-form input:not(:placeholder-shown)+label,.contact-form textarea:focus+label,.contact-form textarea:not(:placeholder-shown)+label{top:-.6rem;left:.6rem;font-size:.8rem;color:#004aad}.contact-form button{padding:1rem;background-color:#004aad;color:#fff;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:background .3s ease,transform .2s ease}.contact-form button:hover{background-color:#00337a;transform:scale(1.03)}.contact-right{flex:1;min-width:300px;max-height:100%;overflow:hidden}.contact-right img{width:100%;height:100%;object-fit:cover;display:block}@media (max-width: 768px){.contact-container{flex-direction:column}.contact-right img{height:auto}}body.dark-mode .contact-section{background:linear-gradient(to right,#1c1c1c,#2a2a2a)}body.dark-mode .contact-container{background-color:#222;color:#f0f0f0}body.dark-mode .contact-info p{color:#ccc}body.dark-mode .contact-form input,body.dark-mode .contact-form textarea{background-color:#2c2c2c;border:1px solid #555;color:#f0f0f0}body.dark-mode .form-group label{background:#222;color:#aaa}body.dark-mode .contact-form input:focus+label,body.dark-mode .contact-form input:not(:placeholder-shown)+label,body.dark-mode .contact-form textarea:focus+label,body.dark-mode .contact-form textarea:not(:placeholder-shown)+label{color:#87a8ff}body.dark-mode .contact-form button{background-color:#333;color:#fff}body.dark-mode .contact-form button:hover{background-color:#555}@media (max-width: 600px){.contact-section{padding:2rem 1rem}.section-title{font-size:1.8rem;text-align:center}.subtitle{text-align:center}.contact-left{padding:1.5rem 1rem}.contact-info{font-size:.9rem}.contact-info p{line-height:1.4;font-size:.9rem}.contact-form input,.contact-form textarea{padding:.75rem .65rem;font-size:.9rem}.form-group label{font-size:.85rem}.contact-form button{padding:.9rem;font-size:.95rem}.contact-right{padding:1rem}.contact-right img{max-height:250px;border-radius:12px}}.projects-section{padding:4rem 2rem;background-color:#f9f9f9;text-align:center}.projects-section h2{font-size:2.5rem;color:#004aad;margin-bottom:.5rem}.projects-subtitle{color:#666;margin-bottom:2rem;font-size:1rem}.project-videos{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.video-card{background:#fff;border-radius:10px;box-shadow:0 4px 12px #0000001a;padding:1rem;width:320px;position:relative;transition:transform .3s ease}.video-card:hover{transform:translateY(-4px)}.video-wrapper{position:relative;cursor:pointer}.video-wrapper video{width:100%;border-radius:8px}.custom-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#ffffffd9;border-radius:50%;width:64px;height:64px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px #0000004d;pointer-events:none;transition:opacity .3s ease}.video-card p{margin-top:.5rem;font-weight:700;color:#333}body.dark-mode .projects-section{background-color:#1e1e1e;color:#f0f0f0}body.dark-mode .video-card{background-color:#2a2a2a}body.dark-mode .video-card p{color:#f0f0f0}body.dark-mode .projects-subtitle{color:#aaa}@media (max-width: 768px){.video-card{width:90%}.projects-section h2{font-size:2rem}}@media (max-width: 480px){.custom-icon{width:50px;height:50px}.projects-subtitle,.video-card p{font-size:.9rem}}.help-section{padding:4rem 2rem;background-color:#f0f8ff;max-width:1000px;margin:auto;font-family:Segoe UI,sans-serif}.help-section h2{text-align:center;font-size:2.5rem;color:#004aad;margin-bottom:1rem}.intro-text{text-align:center;color:#555;margin-bottom:2rem;font-size:1rem}.faq-list{display:flex;flex-direction:column;gap:1rem}.faq-item{background-color:#fff;border-radius:10px;border:1px solid #ccc;padding:1rem 1.5rem;box-shadow:0 4px 12px #0000000d;transition:box-shadow .3s ease}.faq-item:hover{box-shadow:0 6px 20px #00000014}.faq-question{display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-weight:700;font-size:1.1rem;color:#003580}.faq-question span{font-size:1.5rem;color:#004aad}.faq-answer{margin-top:.75rem;color:#444;line-height:1.6}.service-list{padding-left:1.2rem;margin-top:.5rem}.service-list li{margin:.3rem 0;color:#555}.chat-hint{margin-top:2rem;text-align:center;font-style:italic;font-size:.95rem;color:#07c}body.dark-mode .help-section{background-color:#1e1e1e;color:#f0f0f0}body.dark-mode .faq-item{background-color:#2a2a2a;border-color:#444}body.dark-mode .faq-question{color:gold}body.dark-mode .faq-answer{color:#ddd}body.dark-mode .service-list li{color:#bbb}body.dark-mode .chat-hint{color:#66b3ff}@media (max-width: 768px){.help-section{padding:3rem 1rem}.help-section h2{font-size:2rem}.faq-question{font-size:1rem}.faq-answer{font-size:.95rem}}@media (max-width: 480px){.help-section{padding:2rem .5rem}.help-section h2{font-size:1.7rem}.faq-question{font-size:.95rem}.faq-answer{font-size:.9rem}}.navbar{background-color:#021d41d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;padding:0rem 1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;z-index:1000;position:relative}@media (min-width: 769px){.navbar{position:sticky;top:0}}.nav-left{display:flex;align-items:center;gap:10px}.navlogo{border-radius:50%}.nav-title{color:orange;font-size:1.5rem;font-weight:700}.navbar ul{display:flex;list-style:none;gap:2rem;align-items:center}.navbar li button{position:relative;background:none;border:none;color:#fff;font-size:1rem;cursor:pointer;transition:color .3s ease;padding:.5rem 0}.navbar li button:after{content:"";position:absolute;bottom:0;left:0;height:2px;width:0;background-color:gold;transition:width .3s ease}.navbar li button:hover:after{width:100%}.settings-icon{font-size:24px;cursor:pointer;color:orange;transition:transform .3s}.settings-icon:hover{transform:rotate(90deg)}.navbar li button:focus{outline:none;box-shadow:none;border:none}.hamburger{display:none;font-size:24px;color:#fff;cursor:pointer}@media (max-width: 768px){.hamburger{display:block}.navbar ul.nav-links{display:none;flex-direction:column;width:100%;background-color:#021d41f2;padding:1rem 0;position:absolute;top:60px;left:0}.navbar ul.nav-links.show{display:flex}.navbar ul.nav-links li{text-align:center;margin:.5rem 0}.settings-icon{display:none}.navbar.mobile-open .settings-icon{display:block;margin:1rem auto 0}}.settings-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:999}.settings-modal{background:#fff;padding:2rem;border-radius:12px;width:300px;position:relative;box-shadow:0 8px 20px #0000004d}.settings-modal h2{margin-bottom:1rem;color:#004aad}.setting-option{margin:1rem 0;display:flex;justify-content:space-between;align-items:center}.close-btn{position:absolute;top:10px;right:15px;font-size:1.2rem;background:none;border:none;cursor:pointer;color:#888}.close-btn:hover{color:red}.settings-modal .close-button{position:absolute;top:10px;right:10px;background:#ddd;border:none;padding:.4rem .7rem;border-radius:50%;font-size:1rem;cursor:pointer}.settings-modal label{display:flex;align-items:center;margin-top:1rem;font-weight:500}body.dark-mode .settings-modal{background-color:#2a2a2a;color:#f0f0f0}body.dark-mode .settings-modal label{color:#f0f0f0}body.dark-mode .settings-modal .close-button{background:#444;color:#fff}.footer-container{background:#1a1a2e;color:#eaeaea;padding:50px 20px 20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.footer-content{display:flex;flex-wrap:wrap;justify-content:space-between;max-width:1200px;margin:auto;gap:30px}.footer-brand{flex:1 1 250px}.footer-logo{width:80px;height:auto;border-radius:10px;margin-bottom:15px}.brand-description{font-size:14px;line-height:1.6;color:#ccc;margin-bottom:15px}.footer-socials a{color:#f4a261;font-size:18px;margin-right:12px;transition:color .3s ease}.footer-socials a:hover{color:#fff}.footer-links,.footer-contact{flex:1 1 180px;color:#a0aec0}.footer-links h4,.footer-contact h4{font-size:18px;margin-bottom:12px;color:#f4a261}.footer-links a,.footer-contact a{display:block;margin:6px 0;text-decoration:none;color:#a0aec0;transition:color .3s ease;font-size:14px}.footer-links a:hover,.footer-contact a:hover{color:#fff}.footer-contact p{margin:6px 0;font-size:14px}.footer-bottom{text-align:center;margin-top:30px;padding-top:15px;border-top:1px solid #2c2c3a;font-size:13px;color:#888}@media (max-width: 768px){.footer-content{flex-direction:column;align-items:center;text-align:center}.footer-brand,.footer-links,.footer-contact{margin-bottom:30px}}@media (max-width: 480px){.footer-container{padding:40px 15px 15px}.footer-logo{width:60px}.brand-description{font-size:13px;line-height:1.5}.footer-links h4,.footer-contact h4{font-size:16px}.footer-links a,.footer-contact a,.footer-contact p{font-size:13px}.footer-socials a{font-size:16px;margin-right:8px}.footer-bottom{font-size:12px}}.preloader{position:fixed;inset:0;background:#021d41;display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .6s ease,visibility .6s ease}.preloader.hide{opacity:0;visibility:hidden}.loader{width:100px;height:100px;position:relative}.spark-circle{width:100px;height:100px;border:5px dashed #f9d423;border-radius:50%;animation:spin 2s linear infinite;display:flex;align-items:center;justify-content:center}.bolt-svg{animation:flicker 1.2s infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes flicker{0%,to{opacity:1}50%{opacity:.3}}@media (max-width: 768px){.loader{width:80px;height:80px}.spark-circle{width:80px;height:80px;border-width:4px}.bolt-svg{width:25px;height:40px}}@media (max-width: 480px){.loader{width:60px;height:60px}.spark-circle{width:60px;height:60px;border-width:3px}.bolt-svg{width:20px;height:35px}}.skyline-wrapper{width:100%;position:relative;padding-top:40px;overflow:hidden;margin-bottom:-1px}.sky-background{position:absolute;inset:0;background:linear-gradient(to bottom,#87ceeb,#e6f4ff);transition:background .5s ease;z-index:0}body.dark-mode .sky-background{background:linear-gradient(to bottom,#010810,#1a1a2e)}.sun,.moon{width:50px;height:50px;border-radius:50%;position:absolute;top:30px;right:40px;z-index:2}.sun{background:radial-gradient(circle,gold,#fcd34d);box-shadow:0 0 20px #ffec99}.moon{background:#f1f1f1;box-shadow:0 0 15px #ccc;display:none}body.dark-mode .moon{display:block}body.dark-mode .sun{display:none}.stars{position:absolute;inset:0;pointer-events:none;z-index:1}.star{position:absolute;width:3px;height:3px;background:#fff;border-radius:50%;opacity:.8;animation:twinkle 2s infinite ease-in-out;z-index:2}@keyframes twinkle{0%,to{opacity:.2}50%{opacity:1}}.electrical-skyline{display:flex;justify-content:center;align-items:flex-end;gap:40px;padding:0 20px;z-index:3;position:relative;flex-wrap:wrap}.power-tower{position:relative;height:130px;width:10px}.power-tower .pole{height:100%;width:6px;background:#be123c;margin:auto}.power-tower .line{height:2px;background:#be123c;position:absolute;left:-20px;right:-20px}.power-tower .line.top{top:30px}.power-tower .line.middle{top:60px}.power-tower .line.bottom{top:90px}.power-tower .light{width:10px;height:10px;background:#ff0;border-radius:50%;position:absolute;top:-8px;left:50%;transform:translate(-50%);animation:blink 1.5s infinite alternate}@keyframes blink{0%{opacity:.2}to{opacity:1}}.building{position:relative;width:40px;border-radius:4px 4px 0 0;display:flex;flex-wrap:wrap;justify-content:center;padding:6px;box-shadow:2px 4px 6px #0003;align-content:flex-start;transition:background .3s ease}.tall{height:140px}.medium{height:100px}.short{height:60px}.blue{background-color:#2563eb}.green{background-color:#059669}.red{background-color:#dc2626}.orange{background-color:#f97316}.window{width:6px;height:8px;margin:2px;background:#fff;opacity:.8;border-radius:1px}body.dark-mode .window{background:gold;box-shadow:0 0 3px gold}@media (max-width: 768px){.electrical-skyline{gap:20px}.sun,.moon{width:30px;height:30px;top:20px;right:20px}.building{width:30px;padding:4px}.tall{height:100px}.medium{height:70px}.short{height:50px}.window{width:4px;height:6px;margin:1px}}@media (max-width: 480px){.skyline-wrapper{padding-top:20px}.electrical-skyline{gap:10px;padding:0 10px}.sun,.moon{width:25px;height:25px}.building{width:25px;padding:3px}.tall{height:80px}.medium{height:60px}.short{height:40px}.window{width:3px;height:5px}}.bottom-nav{position:fixed;bottom:0;left:0;width:100%;height:65px;background:#213547;display:flex;justify-content:space-around;align-items:center;border-top:1px solid #222;z-index:9999}.bottom-nav button{background:none;border:none;color:#aaa;font-size:11px;display:flex;flex-direction:column;align-items:center;cursor:pointer}.bottom-nav button svg{font-size:20px;margin-bottom:3px}.bottom-nav button:hover{color:#f4a261}@media (min-width: 768px){.bottom-nav{height:55px;max-width:1200px;margin:0 auto;border-radius:12px 12px 0 0;left:50%;transform:translate(-50%)}.bottom-nav button{font-size:12px}.bottom-nav button svg{font-size:18px}}
