:root{--font-sans:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", monospace;--bg-dark:#000;--bg-capsule:#ffffff14;--bg-capsule-hover:#ffffff26;--border-color:#ffffff26;--border-hover:#fff6;--primary:#9d4edd;--primary-glow:#9d4edd40;--accent:#3a86ff;--accent-glow:#3a86ff40;--text-primary:#fff;--text-secondary:#ccc;--text-muted:#666}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-dark);color:var(--text-primary);width:100vw;height:100vh;overflow:hidden}#starfield{z-index:1;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0}.glow-spot-1{background:radial-gradient(circle, var(--primary-glow) 0%, transparent 65%);z-index:0;pointer-events:none;filter:blur(80px);width:500px;height:500px;position:absolute;top:25%;left:25%}.glow-spot-2{background:radial-gradient(circle, var(--accent-glow) 0%, transparent 65%);z-index:0;pointer-events:none;filter:blur(80px);width:500px;height:500px;position:absolute;bottom:25%;right:25%}.centered-hero-container{z-index:2;text-align:center;opacity:1;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;padding:2rem;transition:opacity .45s cubic-bezier(.16,1,.3,1),transform .45s cubic-bezier(.16,1,.3,1);display:flex;position:relative;transform:scale(1)}.centered-hero-container.enter-transition{opacity:1;transform:scale(1)}.centered-hero-container.exit-transition{opacity:0;transform:scale(.96)translateY(5px)}.hero-header{margin-bottom:2.2rem;animation:1.2s ease-out fadeInDown}h1.title{letter-spacing:-.02em;background:linear-gradient(135deg, #fff 40%, #ebd9ff 70%, var(--primary) 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 15px #ffffff26);text-shadow:0 0 40px #ffffff1a;-webkit-background-clip:text;background-clip:text;margin-bottom:.6rem;font-size:5rem;font-weight:900;animation:6s ease-in-out infinite float}.subtitle{color:var(--text-secondary);letter-spacing:.2em;text-transform:uppercase;opacity:.85;font-size:1.25rem;font-weight:300}.capsules-row{flex-wrap:wrap;justify-content:center;gap:1rem;width:100%;max-width:600px;animation:1.2s ease-out fadeInUp;display:flex}.capsule-link{background:var(--bg-capsule);border:1px solid var(--border-color);color:var(--text-primary);-webkit-backdrop-filter:blur(10px);border-radius:30px;align-items:center;gap:.6rem;padding:.75rem 1.6rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 15px #0003}.capsule-glow{background:radial-gradient(100px circle at var(--x,0) var(--y,0), #ffffff26, transparent 60%);opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .4s;position:absolute;top:0;left:0}.capsule-link:hover{border-color:var(--border-hover);background:var(--bg-capsule-hover);transform:translateY(-4px)scale(1.05);box-shadow:0 8px 30px #9d4edd33}.capsule-link:hover .capsule-glow{opacity:1}.capsule-icon{color:var(--text-secondary);justify-content:center;align-items:center;transition:color .3s;display:flex}.capsule-link:hover .capsule-icon{color:#fff}.simple-footer{text-align:center;width:100%;color:var(--text-muted);letter-spacing:.05em;z-index:2;opacity:1;font-size:.8rem;transition:opacity .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1);position:absolute;bottom:25px}.simple-footer.enter-transition{opacity:1}.simple-footer.exit-transition{opacity:0;transform:translateY(3px)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.projects-wrapper{text-align:left;width:100%;max-width:920px;padding:1rem .5rem}.centered-hero-container.projects-route-container{justify-content:flex-start;padding-top:6vh;padding-bottom:110px;overflow:hidden auto}.projects-route-container::-webkit-scrollbar{width:8px}.projects-route-container::-webkit-scrollbar-track{background:0 0}.projects-route-container::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.projects-route-container::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.back-home-btn{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border-radius:30px;align-items:center;gap:.5rem;margin-top:3rem;padding:.75rem 1.6rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 15px #00000026}.back-home-btn:hover{color:#fff;background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-3px);box-shadow:0 8px 25px #ffffff0d}.project-modal-title{letter-spacing:-.02em;color:#fff;text-align:left;margin-bottom:2rem;font-size:1.8rem;font-weight:800}.project-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:1.5rem;width:100%;display:grid}.project-grid-item{border:1px solid var(--border-color);background:#ffffff05;border-radius:20px;flex-direction:column;transition:all .3s;display:flex;overflow:hidden}.project-grid-item:hover{border-color:var(--border-hover);background:#ffffff0a;transform:translateY(-4px)}.project-img-wrapper{border-bottom:1px solid var(--border-color);width:100%;height:180px;position:relative;overflow:hidden}.project-img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1)}.project-grid-item:hover .project-img{transform:scale(1.05)}.project-img-overlay{pointer-events:none;background:linear-gradient(#0000 30%,#0c0c12cc);width:100%;height:100%;position:absolute;top:0;left:0}.project-info{flex-direction:column;flex-grow:1;gap:.6rem;padding:1.5rem;display:flex}.project-title{letter-spacing:-.01em;color:#fff;font-size:1.35rem;font-weight:700}.project-desc{color:var(--text-secondary);flex-grow:1;margin-bottom:.8rem;font-size:.88rem;line-height:1.45}.go-to-web-btn{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;cursor:pointer;border:none;border-radius:30px;justify-content:center;align-self:flex-start;align-items:center;gap:.5rem;padding:.65rem 1.4rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 15px #9d4edd33}.go-to-web-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #9d4edd66}.no-projects-msg{color:var(--text-muted);text-align:center;padding:3rem 0;font-size:1rem}@media (width<=600px){h1.title{font-size:3.6rem}.subtitle{letter-spacing:.15em;font-size:1.05rem}.capsules-row{gap:.8rem}.capsule-link{padding:.65rem 1.4rem;font-size:.85rem}.ads-section{margin-top:2.2rem;padding:1rem}.project-grid{grid-template-columns:1fr}.projects-wrapper{padding:.5rem}}.ads-absolute-container{z-index:10;justify-content:center;align-items:center;width:90%;max-width:320px;height:100px;display:flex;position:absolute;bottom:65px;left:50%;overflow:hidden;transform:translate(-50%)}@media (width>=1200px){.ads-absolute-container{width:200px;height:600px;max-height:70vh;inset:50% 30px auto auto;transform:translateY(-50%)}}.contact-wrapper{flex-direction:column;gap:1rem;width:100%;max-width:540px;margin:1.5rem auto 0;animation:1.2s ease-out fadeInUp;display:flex}.contact-card-link{text-align:left;border-radius:20px;justify-content:flex-start;align-items:center;gap:1.2rem;width:100%;padding:1.1rem 1.8rem;display:flex}.contact-info-text{flex-direction:column;gap:.2rem;display:flex}.contact-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700}.contact-value{color:var(--text-primary);font-size:.95rem;font-weight:600}.project-img-fallback{color:#fff;letter-spacing:.05em;text-shadow:0 4px 10px #00000073;opacity:.85;justify-content:center;align-items:center;width:100%;height:100%;font-size:2.2rem;font-weight:900;transition:transform .6s cubic-bezier(.16,1,.3,1),opacity .3s;display:flex}.project-grid-item:hover .project-img-fallback{opacity:1;transform:scale(1.05)}
