@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");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}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_7b064e0d-module__MOT0tq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_7b064e0d-module__MOT0tq__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/32687112bd2dd8db-s.0v2ipp7s07_p9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/28868e710e86be81-s.44ks8kcggj012.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.1ii7211jqpzi_.woff2)format("woff2");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}@font-face{font-family:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_4f9f433b-module__fJfFLG__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_4f9f433b-module__fJfFLG__variable{--font-space-grotesk:"Space Grotesk", "Space Grotesk Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.3bz3aq452sydg.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.2sb9jzhmrh7ny.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.343obqi851wr5.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.40kcwrf1wub16.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.200l3jur7oygh.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.269kn9uafm0ti.woff2)format("woff2");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}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_84d6efd-module__5Hl15a__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_84d6efd-module__5Hl15a__variable{--font-jetbrains-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--bg:#050308;--bg-soft:#0b0512;--panel:#12081f8c;--panel-solid:#12081f;--panel-line:#a83ffb38;--glass:#ffffff0a;--glass-strong:#ffffff12;--purple-1:#ff6bf0;--purple-2:#b23bff;--purple-3:#6d1fd6;--purple-deep:#2b0a4d;--ink:#f4f0fb;--ink-muted:#a696c2;--ink-faint:#6b5d85;--ease-out:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body{background:var(--bg);color:var(--ink);font-family:var(--font-inter), sans-serif;min-height:100%;overflow-x:hidden}body{position:relative}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}#stars{z-index:0;pointer-events:none;display:block;position:fixed;inset:0}.nebula{z-index:0;pointer-events:none;background:radial-gradient(55% 40% at 80% 12%,#b23bff38,#0000 60%),radial-gradient(45% 35% at 10% 70%,#ff6bf01a,#0000 55%),radial-gradient(70% 50% at 50% 100%,#6d1fd61f,#0000 70%);position:fixed;inset:0}.cursor-glow{pointer-events:none;z-index:5;opacity:0;will-change:transform;background:radial-gradient(circle,#b23bff29,#0000 65%);border-radius:50%;width:420px;height:420px;margin:-210px 0 0 -210px;transition:opacity .35s;position:fixed;top:0;left:0}.cursor-glow.is-visible{opacity:1}.site{z-index:1;position:relative}.nav{z-index:50;transition:background .35s var(--ease-out), border-color .35s var(--ease-out), backdrop-filter .35s;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;gap:24px;padding:14px clamp(20px,5vw,64px);display:flex;position:fixed;top:0;left:0;right:0}.nav.scrolled{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom-color:var(--panel-line);background:#050308b8}.nav-brand{flex-shrink:0;align-items:center;display:flex}.nav-logo{object-fit:contain;filter:drop-shadow(0 0 12px #b23bff59);width:auto;height:72px}.nav-links{align-items:center;gap:clamp(16px,3vw,32px);list-style:none;display:flex}.nav-links a{color:var(--ink-muted);font-size:14px;transition:color .2s}.nav-links a:hover{color:var(--ink)}.nav-cta{color:#0b0512;background:linear-gradient(100deg, var(--purple-1), var(--purple-2));transition:transform .2s var(--ease-out), box-shadow .2s;border-radius:999px;justify-content:center;align-items:center;padding:10px 20px;font-size:13px;font-weight:600;display:inline-flex;box-shadow:0 6px 22px #b23bff47}.nav-cta:hover{transform:translateY(-1px);box-shadow:0 8px 28px #b23bff6b}.nav-toggle{background:var(--glass);border:1px solid var(--panel-line);color:var(--ink);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;display:none}.nav-mobile{display:none}.section{padding:clamp(72px,12vw,120px) clamp(20px,5vw,64px);position:relative}.section-label{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.28em;text-transform:uppercase;color:var(--purple-1);margin-bottom:18px;font-size:12px}.section-title{font-family:var(--font-space-grotesk), sans-serif;letter-spacing:-.02em;max-width:18ch;font-size:clamp(28px,4.5vw,48px);font-weight:700;line-height:1.12}.section-lead{max-width:46ch;color:var(--ink-muted);margin-top:16px;font-size:16px;line-height:1.65}.grad{background:linear-gradient(100deg, var(--purple-1), var(--purple-2) 55%, var(--purple-3));color:#0000;-webkit-background-clip:text;background-clip:text}.btn-primary{color:#0b0512;background:linear-gradient(100deg, var(--purple-1), var(--purple-2));cursor:pointer;transition:transform .2s var(--ease-out), box-shadow .2s;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:14px;font-weight:600;display:inline-flex;box-shadow:0 0 24px #b23bff59,0 6px 22px #b23bff47}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 36px #b23bff80,0 10px 30px #b23bff6b}.btn-ghost{color:var(--ink);background:var(--glass);border:1px solid var(--panel-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;transition:border-color .2s, background .2s, transform .2s var(--ease-out);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:14px;font-weight:600;display:inline-flex}.btn-ghost:hover{background:#b23bff1a;border-color:#b23bff80;transform:translateY(-2px)}.reveal{opacity:0;transition:opacity .8s var(--ease-out), transform .8s var(--ease-out);transform:translateY(28px)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.hero{flex-direction:column;justify-content:center;min-height:100dvh;padding:120px clamp(20px,5vw,64px) clamp(48px,8vw,80px);display:flex;position:relative;overflow:hidden}.hero-inner{grid-template-columns:1fr 1.05fr;align-items:center;gap:clamp(24px,5vw,64px);width:100%;display:grid}.hero-content{z-index:2;max-width:560px;position:relative}.hero-visual{z-index:1;justify-content:center;align-items:center;animation:9s ease-in-out infinite hero-drift;display:flex;position:relative}.hero-visual-glow{filter:blur(40px);z-index:0;pointer-events:none;background:radial-gradient(#b23bff66,#0000 70%);animation:5s ease-in-out infinite glow-pulse;position:absolute;inset:12% 10%}.hero-visual-img{z-index:1;object-fit:contain;filter:drop-shadow(0 20px 50px #6d1fd659);width:min(100%,560px);height:auto;position:relative}@keyframes hero-drift{0%,to{transform:translateY(0)translate(0)}50%{transform:translateY(-18px)translate(6px)}}@keyframes glow-pulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}.hero h1{font-family:var(--font-space-grotesk), sans-serif;letter-spacing:-.03em;margin-bottom:18px;font-size:clamp(36px,5.5vw,64px);font-weight:700;line-height:1.05}.hero-sub{max-width:46ch;color:var(--ink-muted);margin-bottom:32px;font-size:clamp(15px,2vw,18px);line-height:1.65}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-scroll{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);flex-direction:column;align-items:center;gap:10px;font-size:10px;display:flex;position:absolute;bottom:clamp(48px,8vw,80px);right:clamp(20px,5vw,64px)}.hero-scroll-line{background:linear-gradient(to bottom, var(--purple-2), transparent);width:1px;height:48px;animation:2s ease-in-out infinite scroll-line}@keyframes scroll-line{0%{transform-origin:top;opacity:.4;transform:scaleY(.4)}50%{opacity:1;transform:scaleY(1)}to{transform-origin:bottom;opacity:.4;transform:scaleY(.4)}}.services-head{margin-bottom:clamp(40px,6vw,64px)}.services-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.services-grid>.reveal{height:100%}.glass-card{background:linear-gradient(160deg, var(--glass-strong), var(--glass));border:1px solid var(--panel-line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);height:100%;transition:transform .35s var(--ease-out), border-color .35s, box-shadow .35s;border-radius:24px;padding:clamp(28px,4vw,36px);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff05,0 20px 50px #00000040}.glass-card:before{content:"";opacity:.5;pointer-events:none;background:radial-gradient(circle,#ff6bf040,#0000 70%);width:180px;height:180px;transition:opacity .35s;position:absolute;inset:-40% auto auto -20%}.glass-card:hover{border-color:#b23bff8c;transform:translateY(-6px);box-shadow:inset 0 0 0 1px #ff6bf014,0 0 40px #b23bff33,0 24px 60px #00000059}.glass-card:hover:before{opacity:1}.service-icon{border:1px solid var(--panel-line);width:52px;height:52px;color:var(--purple-1);transition:transform .35s var(--ease-out);background:#b23bff1f;border-radius:16px;place-items:center;margin-bottom:22px;animation:5s ease-in-out infinite icon-float;display:grid;box-shadow:0 0 24px #b23bff33}.glass-card:hover .service-icon{transform:translateY(-4px)scale(1.06)}@keyframes icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.glass-card h3{font-family:var(--font-space-grotesk), sans-serif;margin-bottom:12px;font-size:22px;font-weight:600}.glass-card p{color:var(--ink-muted);font-size:15px;line-height:1.65}.glass-card ul{gap:8px;margin-top:18px;list-style:none;display:grid}.glass-card li{color:var(--ink-faint);align-items:center;gap:8px;font-size:13px;display:flex}.glass-card li:before{content:"";background:var(--purple-1);border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 8px #ff6bf0cc}.process{background:radial-gradient(50% 40% at 50% 0,#b23bff14,#0000 60%),linear-gradient(#0000,#12081f66,#0000)}.process-timeline{grid-template-columns:repeat(4,1fr);gap:20px;margin-top:clamp(48px,7vw,72px);display:grid;position:relative}.process-timeline:before{content:"";background:linear-gradient(90deg, transparent, var(--purple-2), var(--purple-1), var(--purple-2), transparent);opacity:.7;height:2px;position:absolute;top:28px;left:8%;right:8%;box-shadow:0 0 16px #b23bff8c}.process-step{text-align:center;padding:0 8px;position:relative}.process-orb{width:56px;height:56px;font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.06em;color:var(--ink);z-index:1;background:#12081fe6;border:1px solid #b23bff8c;border-radius:50%;place-items:center;margin:0 auto 22px;font-size:13px;display:grid;position:relative;box-shadow:0 0 24px #b23bff59,inset 0 0 20px #ff6bf01f}.process-step h3{font-family:var(--font-space-grotesk), sans-serif;margin-bottom:10px;font-size:22px;font-weight:600}.process-step p{color:var(--ink-muted);max-width:22ch;margin:0 auto;font-size:14px;line-height:1.6}.portfolio-head{margin-bottom:clamp(40px,6vw,64px)}.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.portfolio-grid>.reveal{height:100%}.project-card{border:1px solid var(--panel-line);background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);height:100%;transition:transform .35s var(--ease-out), border-color .35s, box-shadow .35s;border-radius:24px;overflow:hidden}.project-card:hover{border-color:#b23bff80;transform:translateY(-6px);box-shadow:0 0 40px #b23bff2e}.project-image{background:#0a0512;overflow:hidden}.project-img{aspect-ratio:16/11;object-fit:cover;object-position:top center;width:100%;height:auto;transition:transform .6s var(--ease-out)}.project-card:hover .project-img{transform:scale(1.04)}.project-meta{padding:20px 22px 24px}.project-meta .tag{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--purple-1);margin-bottom:8px;font-size:11px}.project-meta h3{font-family:var(--font-space-grotesk), sans-serif;margin-bottom:6px;font-size:20px;font-weight:600}.project-meta p{color:var(--ink-muted);font-size:14px;line-height:1.5}.about{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(32px,6vw,80px);display:grid}.about-panel{border:1px solid var(--panel-line);background:linear-gradient(160deg, #b23bff1f, var(--glass));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:28px;min-height:280px;padding:clamp(28px,4vw,40px);position:relative;overflow:hidden}.about-panel:after{content:"";filter:blur(10px);background:radial-gradient(circle,#ff6bf04d,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;bottom:-30%;right:-20%}.tech-icons{z-index:1;grid-template-columns:repeat(3,1fr);gap:12px;display:grid;position:relative}.tech-chip{border:1px solid var(--panel-line);text-align:center;color:var(--ink-muted);transition:transform .3s var(--ease-out), border-color .3s, color .3s;background:#05030873;border-radius:14px;padding:16px 12px;font-size:12px}.tech-chip:hover{color:var(--ink);border-color:#b23bff80;transform:translateY(-4px)}.tech-chip strong{font-family:var(--font-space-grotesk), sans-serif;color:var(--ink);margin-bottom:4px;font-size:15px;display:block}.about-stats{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;display:grid}.stat{border-top:1px solid var(--panel-line);padding-top:16px}.stat-value{font-family:var(--font-space-grotesk), sans-serif;margin-bottom:8px;font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1}.stat-label{color:var(--ink-muted);font-size:13px;line-height:1.4}.contact{padding-bottom:clamp(80px,12vw,120px)}.contact-panel{border:1px solid var(--panel-line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:radial-gradient(60% 80% at 100% 0,#b23bff33,#0000 55%),radial-gradient(50% 60% at 0 100%,#ff6bf014,#0000 50%),#12081fa6;border-radius:28px;grid-template-columns:1fr 1fr;align-items:start;gap:clamp(32px,5vw,64px);padding:clamp(36px,6vw,64px);display:grid;overflow:hidden}.contact-panel h2{font-family:var(--font-space-grotesk), sans-serif;letter-spacing:-.02em;margin-bottom:14px;font-size:clamp(28px,4vw,44px);line-height:1.12}.contact-panel>div>p{color:var(--ink-muted);max-width:36ch;margin-bottom:28px;line-height:1.65}.contact-form{gap:14px;display:grid}.contact-form label{color:var(--ink-faint);font-size:12px;font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.08em;text-transform:uppercase;gap:6px;display:grid}.contact-form input,.contact-form textarea{border:1px solid var(--panel-line);width:100%;color:var(--ink);background:#ffffff08;border-radius:14px;outline:none;padding:14px 16px;transition:border-color .2s,box-shadow .2s}.contact-form textarea{resize:vertical;min-height:120px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--purple-2);box-shadow:0 0 0 3px #b23bff2e}.contact-form .btn-primary{width:fit-content;margin-top:6px}.form-success{color:#c9a8ff;min-height:20px;font-size:14px}.footer{border-top:1px solid var(--panel-line);padding:clamp(40px,6vw,64px) clamp(20px,5vw,64px) 28px}.footer-grid{grid-template-columns:1.5fr .9fr .9fr 1.3fr;gap:36px;margin-bottom:40px;display:grid}.footer-brand-block .nav-logo{height:84px;margin-bottom:14px}.footer-brand-block p{color:var(--ink-muted);max-width:32ch;font-size:14px;line-height:1.6}.trust-badges{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.trust-badge{border:1px solid var(--panel-line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color .2s, background .2s, transform .2s var(--ease-out);background:#ffffff08;border-radius:14px;align-items:center;gap:10px;padding:10px 14px;display:inline-flex}.trust-badge:hover{background:#b23bff14;border-color:#b23bff73;transform:translateY(-2px)}.trust-badge span{gap:2px;display:grid}.trust-badge strong{color:var(--ink);font-size:13px;font-weight:600;line-height:1.1}.trust-badge small{color:var(--ink-faint);font-size:11px}.footer h4{font-family:var(--font-space-grotesk), sans-serif;color:var(--ink);margin-bottom:16px;font-size:14px}.footer-links{gap:10px;list-style:none;display:grid}.footer-links a{color:var(--ink-muted);font-size:14px;transition:color .2s}.footer-links a:hover{color:var(--purple-1)}.footer-contact address{gap:14px;font-style:normal;display:grid}.footer-contact p{color:var(--ink-muted);font-size:14px;line-height:1.65}.footer-contact a{color:var(--ink-muted);transition:color .2s}.footer-contact a:hover{color:var(--purple-1)}.footer-bottom{border-top:1px solid var(--panel-line);color:var(--ink-faint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:24px;font-size:12px;display:flex}.socials{gap:16px;display:flex}.socials a{color:var(--ink-muted);transition:color .2s,transform .2s;display:flex}.socials a:hover{color:var(--purple-1);transform:translateY(-2px)}.socials svg{width:16px;height:16px}@media (max-width:960px){.hero-scroll{display:none}.hero-inner{text-align:center;grid-template-columns:1fr}.hero-content{max-width:640px;margin:0 auto}.hero-actions{justify-content:center}.hero-sub{margin-left:auto;margin-right:auto}.hero-visual{order:-1;max-width:420px;margin:0 auto}.process-timeline{grid-template-columns:1fr 1fr;gap:28px}.process-timeline:before{display:none}.portfolio-grid{grid-template-columns:1fr}.about,.contact-panel,.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width:720px){.nav-links,.nav-cta{display:none}.nav-toggle{display:inline-flex}.nav-mobile{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--panel-line);opacity:0;pointer-events:none;transition:opacity .25s, transform .25s var(--ease-out);background:#050308f2;flex-direction:column;gap:8px;padding:16px 20px 24px;display:flex;position:absolute;top:100%;left:0;right:0;transform:translateY(-8px)}.nav-mobile.open{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-mobile a{color:var(--ink-muted);padding:12px 4px;font-size:15px}.nav-mobile .nav-cta{width:fit-content;margin-top:8px;display:inline-flex}.services-grid,.process-timeline,.about-stats,.tech-icons,.footer-grid{grid-template-columns:1fr}.nav-logo{height:56px}.hero{justify-content:center;padding-top:110px;padding-bottom:48px}.contact-form .btn-primary{width:100%}.process-step{text-align:left;border:1px solid var(--panel-line);background:var(--glass);border-radius:20px;padding:20px}.process-orb{margin:0 0 16px}.process-step p{max-width:none;margin:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-visual,.hero-visual-glow,.service-icon,.hero-scroll-line,.cursor-glow,.reveal{opacity:1!important;transition:none!important;animation:none!important;transform:none!important}}
