:root{--bg-primary:#0a0520;--bg-secondary:#1a1540;--text-primary:#fff;--text-secondary:#a8b2d1;--accent:#4f9cff;--accent-glow:#4f9cff66;--border:#4f9cff26}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter Variable,Inter,-apple-system,Segoe UI,sans-serif;line-height:1.6;overflow-x:hidden}.container{max-width:1400px;margin:0 auto;padding:0 5%}.lang-toggle{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);background:#1a1540cc;border-radius:50px;flex-shrink:0;gap:.3rem;padding:.3rem;display:flex}.lang-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50px;padding:.5rem 1rem;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .3s}.lang-btn.active{background:var(--accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}#webgl-container{z-index:0;pointer-events:none;background:radial-gradient(circle,#4f9cff38 0%,#4f9cff0f 28%,#0000 55%),radial-gradient(circle,#0000 30%,#7dd3fc1a 31%,#0000 32.5%),radial-gradient(at 50% 120%,#1a1540e6 0%,#0000 60%);width:100%;height:100%;position:fixed;top:0;left:0}#webgl-container canvas{opacity:0;transition:opacity 1.2s}#webgl-container.is-ready canvas{opacity:1}[data-hero=static] #webgl-container:after{content:"";background-image:radial-gradient(#7dd3fc59 1px,#0000 1.5px);background-size:28px 28px;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:radial-gradient(circle,#000 0%,#0000 45%);mask-image:radial-gradient(circle,#000 0%,#0000 45%)}.nav{z-index:1000;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-bottom:1px solid var(--border);background:#0a0520cc;position:fixed;top:0;left:0;right:0}.nav-container{justify-content:space-between;align-items:center;gap:2rem;max-width:1600px;margin:0 auto;padding:1.25rem 5%;display:flex}.nav-container .nav-menu{margin-left:auto}.logo-container{flex-shrink:0}.logo{width:auto;max-width:100%;height:42px;transition:transform .3s}.logo:hover{transform:scale(1.05)}.nav-menu{gap:2.5rem;display:flex}.nav-link{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:.5rem 0;font-family:inherit;font-size:.95rem;font-weight:500;transition:color .3s;position:relative}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--accent)}.nav-link.active:after{content:"";background:var(--accent);height:2px;box-shadow:0 0 10px var(--accent);position:absolute;bottom:0;left:0;right:0}.section{z-index:1;min-height:100vh;padding:10rem 0 5rem;display:block;position:relative}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.hero{text-align:center;justify-content:center;align-items:center;padding:8rem 5% 4rem;display:flex}.hero-content{max-width:1100px;animation:1.2s cubic-bezier(.16,1,.3,1) heroFade}@keyframes heroFade{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-label{letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-bottom:2rem;font-size:.85rem;font-weight:600}.hero-title{letter-spacing:-.02em;margin-bottom:2rem;font-size:clamp(2.75rem,6.5vw,6rem);font-weight:700;line-height:1.1}.gradient-text{background:linear-gradient(135deg,#4f9cff 0%,#7dd3fc 50%,#a5f3fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-subtitle{color:var(--text-secondary);max-width:650px;margin:0 auto 3rem;font-size:clamp(1.1rem,2vw,1.3rem);font-weight:400;line-height:1.7}.cta-group{justify-content:center;gap:1.5rem;display:flex}.btn{cursor:pointer;border:none;border-radius:50px;padding:1.1rem 2.8rem;font-family:inherit;font-size:1rem;font-weight:600;text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1);display:inline-block}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 8px 32px var(--accent-glow)}.btn-primary:hover{box-shadow:0 12px 48px var(--accent-glow);transform:translateY(-3px)}.hero+.section{background:linear-gradient(to bottom, #0a052000 0, var(--bg-primary) 45vh)}.section-title{letter-spacing:-.02em;margin-bottom:1.5rem;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:700;line-height:1.2}.section-description{color:var(--text-secondary);max-width:750px;font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.7}.portfolio{padding-top:12rem}.section-header{text-align:center;max-width:850px;margin-bottom:5rem;margin-left:auto;margin-right:auto}.portfolio-grid{grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:2.5rem;max-width:1400px;display:grid}.portfolio-item{aspect-ratio:16/10;border:1px solid var(--border);cursor:pointer;background:#1a154066;border-radius:20px;transition:all .5s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.portfolio-item:hover{border-color:var(--accent);box-shadow:0 24px 60px var(--accent-glow);transform:translateY(-10px)}.portfolio-3d{width:100%;height:100%;position:absolute;top:0;left:0}.portfolio-overlay{opacity:0;background:linear-gradient(#0000 0%,#0a0520fa 100%);padding:2.5rem;transition:all .5s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;left:0;right:0;transform:translateY(20px)}.portfolio-item:hover .portfolio-overlay{opacity:1;transform:translateY(0)}.portfolio-name{letter-spacing:-.01em;margin-bottom:.75rem;font-size:1.8rem;font-weight:700}.portfolio-desc{color:var(--text-secondary);font-size:1rem;line-height:1.6}.about{padding:12rem 0 8rem}.about-content{text-align:center;max-width:900px;margin:0 auto}.about-text{margin:3rem 0 4rem}.about-paragraph{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1.15rem;line-height:1.8}.stats-grid{grid-template-columns:repeat(3,1fr);gap:2.5rem;margin-top:4rem;display:grid}.stat-item{text-align:center;border:1px solid var(--border);background:#1a154066;border-radius:16px;padding:2.5rem 1.5rem;transition:all .4s}.stat-item:hover{border-color:var(--accent);box-shadow:0 16px 48px var(--accent-glow);transform:translateY(-6px)}.stat-number{color:var(--accent);margin-bottom:.75rem;font-size:3.5rem;font-weight:700;line-height:1}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.15em;font-size:.95rem;font-weight:500}.contact{padding:12rem 0 8rem}.contact-content{text-align:center;max-width:800px;margin:0 auto}.contact-grid{justify-content:center;margin-top:4rem;display:flex}.contact-card{border:1px solid var(--border);color:var(--text-primary);background:#1a154066;border-radius:20px;flex-direction:column;align-items:center;gap:1.5rem;padding:3rem 4rem;text-decoration:none;transition:all .4s;display:flex}.contact-card:hover{border-color:var(--accent);box-shadow:0 20px 60px var(--accent-glow);transform:translateY(-8px)}.contact-icon{width:64px;height:64px;color:var(--accent);background:#4f9cff26;border-radius:16px;justify-content:center;align-items:center;transition:all .3s;display:flex}.contact-card:hover .contact-icon{background:var(--accent);color:#fff;transform:scale(1.1)}.contact-value{color:var(--text-primary);font-size:1.25rem;font-weight:600}.footer{z-index:1;border-top:1px solid var(--border);background:#0a0520cc;padding:3rem 0;position:relative}.footer-brand{text-align:left}.footer-logo{width:auto;max-width:100%;height:42px;margin-bottom:1.5rem}.footer-text{color:var(--text-secondary);font-size:.95rem}.btn-secondary{color:var(--text-primary);border:1px solid var(--border);background:0 0;box-shadow:inset 0 0 0 1px #4f9cff40}.btn-secondary:hover{border-color:var(--accent);transform:translateY(-3px)}.skip-link{z-index:3000;background:var(--accent);color:#fff;border-radius:8px;padding:.75rem 1.25rem;font-weight:600;text-decoration:none;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:1rem}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.logo-container{display:inline-flex}.services{padding-top:12rem}.services-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;display:grid}.service-card{border:1px solid var(--border);background:#1a154066;border-radius:20px;padding:2.25rem 2rem;transition:all .4s}.service-card:hover{border-color:var(--accent);box-shadow:0 16px 48px var(--accent-glow);transform:translateY(-6px)}.service-number{letter-spacing:.2em;color:var(--accent);margin-bottom:1.25rem;font-size:.85rem;font-weight:600}.service-name{margin-bottom:.75rem;font-size:1.35rem;font-weight:700;line-height:1.3}.service-desc{color:var(--text-secondary);font-size:1rem;line-height:1.6}.tech-list{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:3.5rem;list-style:none;display:flex}.tech-list li{border:1px solid var(--border);color:var(--text-secondary);border-radius:50px;padding:.5rem 1.1rem;font-size:.9rem}a.portfolio-item{color:inherit;text-decoration:none;display:block}.portfolio-tag{letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:.6rem;font-size:.75rem;font-weight:600}.portfolio-link{color:var(--accent);margin-top:1rem;font-size:.95rem;font-weight:600;display:inline-block}.portfolio-item:focus-within .portfolio-overlay{opacity:1;transform:translateY(0)}.portfolio-item:focus-visible .portfolio-overlay{opacity:1;transform:translateY(0)}@media (hover:none){.portfolio-overlay{opacity:1;transform:none}}.principles{text-align:left;margin-top:6rem}.principles-title{text-align:center;margin-bottom:2.5rem;font-size:1.8rem;font-weight:700}.process-list{counter-reset:step;grid-template-columns:repeat(2,1fr);gap:1.5rem;list-style:none;display:grid}.process-list li{counter-increment:step;border:1px solid var(--border);color:var(--text-secondary);background:#1a154066;border-radius:16px;padding:1.75rem 1.75rem 1.75rem 4.5rem;line-height:1.6;position:relative}.process-list li:before{content:counter(step, decimal-leading-zero);color:var(--accent);font-weight:700;position:absolute;top:1.75rem;left:1.5rem}.process-list strong{color:var(--text-primary);margin-bottom:.35rem;font-size:1.1rem;display:block}.contact-note{color:var(--text-secondary);font-size:.9rem}.footer-grid{border-bottom:1px solid var(--border);grid-template-columns:2fr 1fr 1fr;gap:3rem;padding-bottom:2.5rem;display:grid}.footer-col{flex-direction:column;align-items:flex-start;gap:.6rem;display:flex}.footer-heading{letter-spacing:.15em;text-transform:uppercase;color:var(--text-primary);margin-bottom:.4rem;font-size:.8rem;font-weight:600}.footer-link{font:inherit;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.95rem;text-decoration:none;transition:color .3s}.footer-link:hover{color:var(--accent)}.footer-copy{text-align:center;color:var(--text-secondary);padding-top:2rem;font-size:.9rem}.legal{z-index:1;max-width:760px;margin:0 auto;padding:10rem 5% 5rem;position:relative}.legal h1{margin-bottom:.5rem;font-size:clamp(2rem,4vw,3rem);line-height:1.2}.legal h2{margin:2.5rem 0 .75rem;font-size:1.25rem}.legal p{color:var(--text-secondary);margin-bottom:1rem}.legal a{color:var(--accent)}.legal hr{border:none;border-top:1px solid var(--border);margin:4rem 0}.legal-updated{font-size:.9rem}.legal-back{margin-left:auto;text-decoration:none}.not-found{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;padding:2rem 5%;display:flex}@media (max-width:1024px){.portfolio-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr;gap:2rem}}@media (max-width:1100px){.nav-menu{gap:1.5rem}}@media (max-width:768px){.footer-grid{grid-template-columns:1fr;gap:2rem}.process-list{grid-template-columns:1fr}.nav-container{flex-wrap:wrap;justify-content:space-between;gap:.75rem 1rem;padding:1rem 5%}.nav-container .nav-menu{order:3;justify-content:space-between;gap:.5rem;width:100%;margin-left:0}.nav-link{font-size:.9rem}.logo{height:34px}.hero-title{font-size:2.5rem}.hero{padding-top:10rem}.cta-group{flex-wrap:wrap;gap:.75rem}.cta-group .btn{white-space:nowrap;padding:1rem 1.6rem}.section{padding:8rem 0 4rem}.portfolio-grid{grid-template-columns:1fr;gap:2rem}.portfolio-item{aspect-ratio:auto}.portfolio-3d{height:190px;position:relative}.portfolio-overlay{background:0 0;padding:0 1.5rem 1.75rem;position:relative}.portfolio-name{font-size:1.4rem}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
