*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;background:#0a0a0a;color:#fff;overflow-x:hidden;line-height:1.6}#app{position:relative;width:100%;height:100vh}.navbar{position:fixed;top:0;left:0;width:100%;background:#0a0a0a33;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1);z-index:1000;transition:all .3s ease}.navbar-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;height:70px}.navbar-logo img{height:130px;width:auto}.navbar-nav{display:flex;align-items:center}.nav-menu{display:flex;list-style:none;margin:0;padding:0;gap:2rem}.nav-item{position:relative}.nav-link{color:#fff;text-decoration:none;font-weight:400;font-size:.95rem;padding:.5rem 0;transition:all .3s ease;position:relative}.nav-link:hover{color:#64ffda}.nav-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(45deg,#64ffda,#00d4ff);transition:width .3s ease}.nav-link:hover:after{width:100%}.dropdown{position:relative}.dropdown-menu{position:absolute;top:100%;left:0;background:#0a0a0a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.1);border-radius:8px;min-width:200px;width:max-content;opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .25s ease,visibility .25s ease,transform .25s ease;box-shadow:0 10px 30px #0000004d;padding:.5rem 0;margin-top:.5rem;pointer-events:none}.dropdown:hover .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.dropdown-menu li{list-style:none;opacity:0;transform:translateY(-5px);transition:opacity .2s ease,transform .2s ease}.dropdown:hover .dropdown-menu li{opacity:1;transform:translateY(0)}.dropdown:hover .dropdown-menu li:nth-child(1){transition-delay:.05s}.dropdown:hover .dropdown-menu li:nth-child(2){transition-delay:.1s}.dropdown:hover .dropdown-menu li:nth-child(3){transition-delay:.15s}.dropdown:hover .dropdown-menu li:nth-child(4){transition-delay:.2s}.dropdown:hover .dropdown-menu li:nth-child(5){transition-delay:.25s}.dropdown-submenu{position:relative}.dropdown-menu-sub{position:absolute;top:0;left:100%;background:#0a0a0a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.1);border-radius:8px;min-width:200px;width:max-content;opacity:0;visibility:hidden;transform:translateY(0);transition:opacity .25s ease,visibility .25s ease,transform .25s ease;box-shadow:0 10px 30px #0000004d;padding:.5rem 0;margin-top:.25rem;pointer-events:none}.dropdown-menu-sub:before{content:"";position:absolute;top:-.25rem;left:0;width:100%;height:.25rem;background:transparent;pointer-events:auto}.dropdown-submenu:hover .dropdown-menu-sub{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.dropdown-submenu:hover{background:#64ffda0d}.dropdown-menu-sub li{list-style:none;opacity:0;transform:translateY(-5px);transition:opacity .2s ease,transform .2s ease}.dropdown-submenu:hover .dropdown-menu-sub li{opacity:1;transform:translate(0)}.dropdown:hover .dropdown-submenu .dropdown-menu-sub li:nth-child(1){transition-delay:.1s}.dropdown-submenu:hover .dropdown-menu-sub li:nth-child(1){transition-delay:.1s}.dropdown-menu a{color:#fff;text-decoration:none;padding:.75rem 1.5rem;display:block;font-size:.9rem;transition:background-color .2s ease,color .2s ease,border-left-color .2s ease;border-left:3px solid transparent}.dropdown-menu a:hover{background:#64ffda1a;color:#64ffda;border-left-color:#64ffda}.navbar-toggle{display:none;flex-direction:column;cursor:pointer;gap:4px}.navbar-toggle span{width:25px;height:3px;background:#fff;transition:all .3s ease;border-radius:2px}.navbar-toggle.active span:nth-child(1){transform:rotate(45deg) translate(4px,3px)}.navbar-toggle.active span:nth-child(2){opacity:0}.navbar-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}@media (max-width: 768px){.navbar-toggle{display:flex}.navbar-nav{position:absolute;top:100%;left:0;width:100%;background:#0a0a0a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-top:1px solid rgba(255,255,255,.1);transform:translateY(-100%);opacity:1;visibility:hidden;transition:all .3s ease}.navbar-nav.active{transform:translateY(0);opacity:1;visibility:visible}.nav-menu{flex-direction:column;gap:0;padding:1rem 0}.nav-item{width:100%}.nav-link{padding:1rem 2rem;display:block;border-bottom:1px solid rgba(255,255,255,.1)}.dropdown-menu{position:static;opacity:0;visibility:hidden;transform:translateY(-10px);background:#0a0a0a;border:none;border-radius:0;box-shadow:none;margin-top:0;padding:0;pointer-events:none;max-height:0;overflow:hidden;transition:opacity .3s ease,visibility .3s ease,transform .3s ease,max-height .3s ease}.nav-item.dropdown.mobile-open .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;max-height:500px}.dropdown-menu li{opacity:0;transform:translateY(-5px);transition:opacity .2s ease,transform .2s ease}.nav-item.dropdown.mobile-open .dropdown-menu li{opacity:1;transform:translateY(0)}.nav-item.dropdown.mobile-open .dropdown-menu li:nth-child(1){transition-delay:.05s}.nav-item.dropdown.mobile-open .dropdown-menu li:nth-child(2){transition-delay:.1s}.nav-item.dropdown.mobile-open .dropdown-menu li:nth-child(3){transition-delay:.15s}.nav-item.dropdown.mobile-open .dropdown-menu li:nth-child(4){transition-delay:.2s}.nav-item.dropdown.mobile-open .dropdown-menu li:nth-child(5){transition-delay:.25s}.dropdown-menu a{padding:.75rem 3rem;font-size:.85rem;border-left:3px solid transparent}.dropdown-menu a:hover{background:#64ffda1a;color:#64ffda}}@media (max-width: 480px){.navbar-container{padding:0 1rem}.navbar-logo img{height:120px}}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.project-item{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem;transition:all .3s ease}.project-item:hover{background:#64ffda1a;border-color:#64ffda4d;transform:translateY(-2px)}.project-item h3{color:#64ffda;margin-bottom:.5rem;font-size:1.2rem}.project-item p{color:#fffc;font-size:.9rem;line-height:1.5}.contact-info{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:2rem}.contact-info p{margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.contact-info strong{color:#64ffda;min-width:120px}@media (max-width: 768px){.projects-grid{grid-template-columns:1fr;gap:1rem}.project-item{padding:1rem}.contact-info{padding:1.5rem}.contact-info p{flex-direction:column;align-items:flex-start;gap:.25rem}.contact-info strong{min-width:auto}}.contact-container{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2rem}.contact-info h3,.contact-map h3{color:#64ffda;margin-bottom:1.5rem;font-size:1.3rem;text-align:center}.contact-map iframe{border-radius:8px;box-shadow:0 10px 30px #0000004d}@media (max-width: 768px){.contact-container{grid-template-columns:1fr;gap:2rem}.contact-map iframe{height:300px}}#loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0a0a0a,#1a1a2e,#16213e);display:flex;align-items:center;justify-content:center;z-index:1000;transition:opacity .5s ease-out}#loading-screen.hidden{opacity:1;pointer-events:none}.loading-content{text-align:center;max-width:400px;padding:2rem}.loading-spinner{width:60px;height:60px;border:3px solid rgba(255,255,255,.1);border-top:3px solid #64ffda;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 2rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-content h2{font-size:1.8rem;font-weight:600;margin-bottom:1rem;background:linear-gradient(45deg,#64ffda,#00d4ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.loading-content p{color:#ffffffb3;font-size:1rem}#three-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1}#scroll-container{position:relative;z-index:2;padding-top:70px}.scroll-section h1,.scroll-section h2,.scroll-section h3{text-align:center!important}.references-logos{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1.5rem;margin-top:2rem;padding:2rem 0;justify-items:center;align-items:center}.reference-logo-item{display:flex;flex-direction:column;align-items:center;text-align:center;transition:all .3s ease}.reference-logo-item:hover{transform:translateY(-5px)}.reference-logo{width:250px;height:100px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:0;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.reference-logo:hover{background:#fff3;border-color:#64ffda;box-shadow:0 8px 25px #64ffda4d}.reference-logo img{width:100%;height:100%;object-fit:cover;transition:all .3s ease}.reference-logo:hover img{transform:scale(1.1)}.reference-name{display:none}@media screen and (max-width: 480px){.references-logos{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.8rem}.reference-logo{width:150px;height:60px}}.logo-section{height:200px;display:flex;top:0;left:0;align-items:center;justify-content:center;position:fixed}.logo-section img{width:200px;height:200px}.text-background{background:linear-gradient(45deg,#64ffda,#00d4ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.services-container{display:flex;align-items:flex-start;gap:3rem;margin-top:2rem;align-items:center}.services-container-reverse{flex-direction:row-reverse}.services-image{width:300px;height:300px;object-fit:cover;border-radius:8px;box-shadow:0 10px 30px #0000004d}@media screen and (max-width: 600px){.services-image{width:200px;height:200px}}.services-text-container{display:flex;flex-direction:column;gap:16px;text-align:start;margin-left:60px}@media screen and (max-width: 1200px){.services-text-container{margin-left:0}}.services-subheader{font-size:1.1rem!important;font-weight:600!important;text-align:start!important}.services-text{font-size:16px;font-weight:400;color:#fffc}.services-list{list-style-type:disc;margin-left:20px}.services-list li{font-size:16px;font-weight:400;color:#fffc}@media screen and (max-width: 1200px){.services-container{flex-direction:column}}.hero-section,.scroll-section{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative}.scroll-section{background:transparent}.section-content{text-align:center;max-width:1200px;padding:2rem;opacity:1;transform:translateY(0);transition:all .8s ease-out}.section-content.visible{opacity:1;transform:translateY(0)}.section-content h2{font-size:3rem;font-weight:700;margin-bottom:1rem;text-align:center;background:linear-gradient(45deg,#64ffda,#00d4ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-content p{font-size:1.2rem;color:#fffc;font-weight:300}.hero-content h1{font-size:4rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(45deg,#64ffda,#00d4ff,#ff6b6b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:glow 2s ease-in-out infinite alternate}@keyframes glow{0%{text-shadow:0 0 20px rgba(100,255,218,.5)}to{text-shadow:0 0 30px rgba(100,255,218,.8),0 0 40px rgba(0,212,255,.5)}}.hero-content p{font-size:1.4rem;color:#fffc;font-weight:300}.hero-animated-sentences{position:relative;height:auto;min-height:8rem;width:1200px;overflow:visible;display:flex;align-items:center;justify-content:center;margin-bottom:40px}@media screen and (max-width: 1200px){.hero-animated-sentences{width:1000px}}@media screen and (max-width: 1000px){.hero-animated-sentences{width:800px}}@media screen and (max-width: 800px){.hero-animated-sentences{width:600px}}@media screen and (max-width: 600px){.hero-animated-sentences{width:400px}}@media screen and (max-width: 400px){.hero-animated-sentences{width:340px}}@media screen and (max-width: 1200px){.hero-sentence{font-size:3.5rem}}@media screen and (max-width: 800px){.hero-sentence{font-size:2.8rem;line-height:1.3}.hero-animated-sentences{min-height:7rem}}@media screen and (max-width: 600px){.hero-sentence{font-size:2.2rem;line-height:1.4;padding:0 15px}.hero-animated-sentences{min-height:6rem}}@media screen and (max-width: 400px){.hero-sentence{font-size:1.8rem;line-height:1.5;padding:0 10px}.hero-animated-sentences{min-height:5rem}}.hero-sentence{position:absolute;left:0;right:0;top:0;opacity:0;transform:translateY(60px);transition:opacity .7s cubic-bezier(.77,0,.18,1),transform .7s cubic-bezier(.77,0,.18,1);font-size:4rem;font-weight:700;line-height:1.2;text-align:center;background:linear-gradient(45deg,#64ffda,#00d4ff,#ff6b6b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:glow 2s ease-in-out infinite alternate;margin:0;padding:0 20px;word-break:keep-all;-webkit-hyphens:none;hyphens:none}.hero-sentence.active{opacity:1;transform:translateY(0);z-index:2}.hero-sentence.exit{opacity:0;transform:translateY(-60px);z-index:1}.hero-sentence.enter{opacity:0;transform:translateY(60px);z-index:2}#ui-overlay{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.scroll-indicator{position:fixed;right:30px;top:50%;transform:translateY(-50%);width:4px;height:100px;background:#ffffff1a;border-radius:2px}.scroll-progress{width:100%;height:0%;background:linear-gradient(to bottom,#64ffda,#00d4ff);border-radius:2px;transition:height .1s ease-out}@media (max-width: 768px){.hero-content h1{font-size:2.5rem}.section-content h2{font-size:2rem}.section-content p,.hero-content p{font-size:1rem}.scroll-indicator{right:15px;width:3px;height:80px}}@media (max-width: 480px){.hero-content h1{font-size:2rem}.section-content h2{font-size:1.5rem}.section-content{padding:1rem}}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#ffffff1a}::-webkit-scrollbar-thumb{background:linear-gradient(to bottom,#64ffda,#00d4ff);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(to bottom,#00d4ff,#64ffda)}.scroll-section .section-content{text-align:left;width:100%}.geovinci-description{text-align:center;margin-bottom:3rem}.geovinci-description p{font-size:1.1rem;color:#fffc;line-height:1.6;max-width:800px;margin:0 auto}.geovinci-form-container{max-width:800px;margin:0 auto;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:3rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.geovinci-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.95rem;font-weight:500;color:#64ffda;margin-bottom:.5rem}.form-group input,.form-group textarea{padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:1rem;font-family:inherit;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#64ffda;background:#ffffff14;box-shadow:0 0 0 3px #64ffda1a}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff6}.file-info{font-size:.8rem;color:#fff9;margin-top:.5rem}.submit-btn{background:linear-gradient(45deg,#64ffda,#00d4ff);border:none;border-radius:8px;padding:1rem 2rem;color:#0a0a0a;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;margin-top:1rem}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #64ffda66}.submit-btn:active{transform:translateY(0)}.submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-loading{display:flex;align-items:center;gap:.5rem;justify-content:center}.btn-loading .loading-spinner{width:16px;height:16px;border:2px solid rgba(10,10,10,.2);border-top:2px solid #0a0a0a;border-radius:50%;animation:spin 1s linear infinite}.toast-container{position:fixed;top:100px;right:30px;z-index:1000;display:flex;flex-direction:column;gap:10px}.toast{background:#0a0a0af2;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:8px;padding:1rem 1.5rem;color:#fff;font-size:.95rem;max-width:350px;border-left:4px solid;opacity:0;transform:translate(100%);transition:all .3s ease;box-shadow:0 10px 30px #0000004d}.toast.show{opacity:1;transform:translate(0)}.toast.success{border-left-color:#64ffda}.toast.error{border-left-color:#ff6b6b}.toast.info{border-left-color:#00d4ff}@media (max-width: 768px){.geovinci-form-container{padding:2rem;margin:0 1rem}.form-row{grid-template-columns:1fr;gap:1rem}.toast-container{right:15px;left:15px}.toast{max-width:none}}@media (max-width: 480px){.geovinci-form-container{padding:1.5rem}.form-group input,.form-group textarea{padding:.8rem}.submit-btn{padding:.8rem 1.5rem}}@media (max-width: 768px){.navbar-nav.active .nav-item.dropdown .dropdown-menu{position:static;opacity:0;visibility:hidden;transform:translateY(-10px);background:#0a0a0a;border:none;border-radius:0;box-shadow:none;margin-top:0;padding:0;pointer-events:none;max-height:0;overflow:hidden;transition:opacity .3s ease,visibility .3s ease,transform .3s ease,max-height .3s ease}.navbar-nav.active .nav-item.dropdown.mobile-open .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;max-height:500px}.dropdown-menu li{opacity:0;transform:translateY(-5px);transition:opacity .2s ease,transform .2s ease}.nav-item.dropdown.mobile-open .dropdown-menu li{opacity:1;transform:translateY(0)}.nav-item.dropdown.mobile-open .dropdown-menu li:nth-child(1){transition-delay:.05s}.nav-item.dropdown.mobile-open .dropdown-menu li:nth-child(2){transition-delay:.1s}.nav-item.dropdown.mobile-open .dropdown-menu li:nth-child(3){transition-delay:.15s}.nav-item.dropdown.mobile-open .dropdown-menu li:nth-child(4){transition-delay:.2s}.nav-item.dropdown.mobile-open .dropdown-menu li:nth-child(5){transition-delay:.25s}.dropdown-menu a{padding:.75rem 3rem;font-size:.85rem;border-left:3px solid transparent}.dropdown-menu a:hover{background:#64ffda1a;color:#64ffda}}.footer{background:linear-gradient(135deg,#1e293b,#0f172a);color:#e2e8f0;padding:40px 0;margin-top:80px;border-top:1px solid #334155;position:relative;overflow:hidden}.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#3b82f6,transparent)}.footer-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.footer-left p{margin:0;font-size:14px;color:#94a3b8;font-weight:400;letter-spacing:.5px}.footer-right{display:flex;align-items:center}.developer-logo{display:inline-block;transition:all .3s ease;border-radius:8px;overflow:hidden;position:relative}.developer-logo:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,#3b82f61a,#9333ea1a);opacity:0;transition:opacity .3s ease;z-index:1}.developer-logo:hover:before{opacity:1}.developer-logo img{width:100px;height:20px;object-fit:contain;transition:transform .3s ease;position:relative;z-index:2}.developer-logo:hover img{transform:scale(1.05)}.developer-logo:hover{box-shadow:0 8px 25px #3b82f64d;transform:translateY(-2px)}@media (max-width: 768px){.footer{padding:30px 0;margin-top:60px}.footer-content{flex-direction:column;text-align:center;gap:15px}.footer-left p{font-size:13px}.developer-logo img{width:80px;height:16px}}@media (max-width: 480px){.footer{padding:25px 0;margin-top:40px}.footer-content{padding:0 15px}.footer-left p{font-size:12px;line-height:1.4}.developer-logo img{width:70px;height:14px}}@keyframes footerGlow{0%,to{box-shadow:0 0 20px #3b82f61a}50%{box-shadow:0 0 30px #3b82f633}}.footer{animation:footerGlow 4s ease-in-out infinite}.quality-content{margin-top:1rem}.read-more-container{margin-top:1.5rem;text-align:center}.read-more-link{display:inline-block;padding:.75rem 2rem;background:linear-gradient(45deg,#64ffda,#00d4ff);color:#0a0a0a;text-decoration:none;border-radius:25px;font-weight:600;font-size:.9rem;transition:all .3s ease;box-shadow:0 4px 15px #64ffda4d}.read-more-link:hover{transform:translateY(-2px);box-shadow:0 6px 20px #64ffda66;background:linear-gradient(45deg,#00d4ff,#64ffda)}.read-more-link:active{transform:translateY(0)}
