:root{--bg:#f3f4f6;--text:#0d1117;--muted:#5b6372;--line:#0d11171a;--blue:#1e5eff;--blue-ink:#0f47d9;--blue-soft:#e2e9ff;--navy:#0b1f5c;--glass:#ffffffb3;--glass-border:#ffffffbf;--nav-glass:#ffffffb8;--wp-base:#1e5eff;--wp-1:#0f47d9;--wp-2:#4a7bff;--wp-3:#7fa3ff;--fs-xs:.8125rem;--fs-base:1rem;--fs-md:1.25rem;--fs-lg:1.5625rem;--fs-xl:clamp(1.9375rem, 1.72rem + .9vw, 2.4375rem);--fs-2xl:clamp(2.4375rem, 2.16rem + 1.12vw, 3.0625rem);--fs-3xl:clamp(2.4375rem, 1.84rem + 2.47vw, 3.8125rem);--font:"Plus Jakarta Sans", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace}:root[data-theme=dark]{--bg:#0c0e12;--text:#e8ebf1;--muted:#8b93a1;--line:#ffffff17;--blue:#4c82ff;--blue-ink:#3a6ff0;--blue-soft:#4c82ff24;--glass:#181c26a8;--glass-border:#ffffff1a;--nav-glass:#14171eb8;--wp-base:#0d2470;--wp-1:#091a52;--wp-2:#163a9e;--wp-3:#2552cc}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font);font-size:var(--fs-base);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.6;transition:background-color .3s,color .3s;overflow-x:hidden}a{color:inherit;text-decoration:none}ul,ol{list-style:none}::selection{background:var(--blue);color:#fff}.container{width:min(1180px,100% - 32px);margin-inline:auto}.accent{color:var(--blue)}.mono-label{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:500}.mono-label span{opacity:.6}.line-group{display:block}.line-mask{margin-bottom:-.06em;padding-bottom:.06em;display:block;overflow:hidden}.line-mask>span{display:block}.btn{font:600 var(--fs-base)/1 var(--font);cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:12px 20px;transition:background-color .2s,color .2s,border-color .2s,transform .15s;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-ink)}.btn-white{color:#0f47d9;background:#fff;padding:15px 24px}.btn-white:hover{background:#e8efff}.btn-outline-light{color:#fff;border-color:#ffffff73;padding:15px 24px}.btn-outline-light:hover{background:#ffffff1f;border-color:#fff}.btn-sm{font-size:var(--fs-base);padding:8px 16px}.btn-lg{font-size:var(--fs-base);padding:16px 28px}.icon-btn{border:1px solid var(--line);width:34px;height:34px;color:var(--text);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.glass{background:var(--nav-glass);-webkit-backdrop-filter:blur(24px)saturate(180%);border:1px solid var(--glass-border);box-shadow:0 8px 30px #00000014}.brand{white-space:nowrap;font-weight:800;font-size:var(--fs-base);letter-spacing:-.02em;align-items:center;gap:9px;display:flex}.logo{width:28px;height:28px;display:block}.brand-sub{color:var(--blue)}.float-nav{z-index:300;border-radius:999px;align-items:center;gap:36px;width:max-content;max-width:calc(100% - 32px);padding:8px 8px 8px 18px;display:flex;position:fixed;top:14px;left:50%;translate:-50%}.float-nav nav{gap:4px;display:flex}.float-nav nav a{font-size:var(--fs-base);color:var(--text);opacity:.75;border-radius:999px;padding:8px 14px;font-weight:500;transition:opacity .2s,background-color .2s}.float-nav nav a:hover{opacity:1;background:var(--blue-soft)}.fn-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.hero{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:64px;min-height:min(100svh,860px);padding-block:120px 72px;display:grid}.hero-copy h1{font-size:var(--fs-3xl);letter-spacing:-.045em;margin:0 0 20px;font-weight:800;line-height:1.05}.hero-sub{font-size:var(--fs-md);color:var(--muted);max-width:46ch;line-height:1.65}.hero-ctas{flex-wrap:wrap;align-items:center;gap:8px;margin-top:32px;display:flex}.hero-caps{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;gap:10px 20px;margin-top:40px;display:flex}.hero-caps li{align-items:center;gap:8px;display:flex}.hero-caps li:before{content:"";background:var(--blue);width:5px;height:5px}.devices{aspect-ratio:16/9.4;position:relative}.devices figure{margin:0}.dev-screen{object-fit:cover;object-position:top left;background:#0d1b4c;width:100%;height:100%;display:block}.dev-monitor{flex-direction:column;align-items:center;width:74%;display:flex;position:absolute;top:0;left:13%}.dev-monitor-panel{aspect-ratio:16/10;background:#0b0b0e;border-radius:14px;width:100%;padding:1.1%;box-shadow:inset 0 0 0 1px #ffffff1a,0 30px 60px #08144638}.dev-monitor-panel .dev-screen{border-radius:6px}.dev-monitor-neck{aspect-ratio:1/.85;clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);background:#c9cdd4;width:13%}.dev-monitor-foot{background:#d5d8de;border-radius:3px 3px 8px 8px;width:30%;height:10px;margin-top:-1px;box-shadow:inset 0 -3px #b3b8c0,0 12px 20px #0814462e}.dev-laptop{filter:drop-shadow(0 24px 32px #08144647);flex-direction:column;align-items:center;width:46%;display:flex;position:absolute;bottom:0;left:0}.dev-laptop-lid{aspect-ratio:16/10.4;background:#0c0c0f;border-radius:12px 12px 4px 4px;width:88%;padding:2.4% 2.4% 3.2%;position:relative;box-shadow:inset 0 0 0 1.5px #3a3c42,inset 0 0 0 3px #0c0c0f}.dev-laptop-lid .dev-screen{object-position:top center;border-radius:3px}.dev-laptop-cam{background:#23252b;border-radius:50%;width:4px;height:4px;margin-left:-2px;position:absolute;top:1%;left:50%}.dev-laptop-base{background:#d5d8de;border-radius:2px 2px 14px 14px/2px 2px 60% 60%;width:100%;height:0;padding-bottom:3.6%;position:relative;box-shadow:inset 0 1px #f3f4f6,inset 0 -3px #b3b8c0}.dev-laptop-base span{background:#bfc3ca;border-radius:0 0 10px 10px;width:15%;height:40%;position:absolute;top:0;left:50%;translate:-50%}.dev-phone{filter:drop-shadow(0 24px 32px #0814464d);width:21%;height:auto;position:absolute;bottom:0;right:0}.split{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px;padding-block:112px;display:grid}.hero+.split{border-top:0}.split-aside{align-self:start;position:sticky;top:96px}.split-aside h2{font-size:var(--fs-xl);letter-spacing:-.03em;line-height:1.1}.split-aside p{color:var(--muted);max-width:34ch;margin-top:14px}.svc-group+.svc-group{margin-top:56px}.svc-group-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:10px;display:flex}.svc-showcase{cursor:pointer;font:600 var(--fs-base)/1.4 var(--font);color:var(--blue);border:0;border-bottom:2px solid var(--blue-soft);background:0 0;align-items:center;gap:6px;padding:0;display:inline-flex}.svc-showcase:hover{border-color:var(--blue)}.svc{border-bottom:1px solid var(--line);justify-content:space-between;gap:24px;padding:22px 0;display:flex}.svc:first-child{border-top:1px solid var(--line)}.svc h4{font-size:var(--fs-md);letter-spacing:-.02em;font-weight:700;transition:color .2s}.svc p{color:var(--muted);font-size:var(--fs-base);max-width:52ch;margin-top:4px}.svc:hover h4{color:var(--blue)}.svc-price{font-family:var(--mono);font-size:var(--fs-xs);color:var(--blue);white-space:nowrap;padding-top:5px}.works-section{border-top:1px solid var(--line);padding-block:112px}.works-head{align-items:baseline;gap:14px;margin-bottom:36px;display:flex}.works-head h2{font-size:var(--fs-xl);letter-spacing:-.03em;font-weight:800;line-height:1.15}.work-row{border-top:1px solid var(--line);grid-template-columns:56px minmax(0,1fr) 120px 28px;align-items:baseline;gap:24px;padding:26px 0;scroll-margin-top:90px;transition:padding .25s cubic-bezier(.2,.8,.2,1);display:grid}.work-row:last-child{border-bottom:1px solid var(--line)}.work-row:hover{padding-left:12px}.work-row:hover h3{color:var(--blue)}.work-row:target{animation:2.4s ease-out flash}@keyframes flash{0%{background:var(--blue-soft)}to{background:0 0}}.work-num,.work-cat{font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.work-cat{text-align:right}.work-main h3{font-size:var(--fs-lg);letter-spacing:-.03em;line-height:1.15;transition:color .2s}.work-main p{color:var(--muted);font-size:var(--fs-base);max-width:60ch;margin-top:6px}.work-main .work-stack{font-family:var(--mono);font-size:var(--fs-xs);color:var(--blue)}.work-arrow{color:var(--blue)}.work-row.clickable{cursor:pointer}.work-row:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:4px}.work-more{font-family:var(--mono);font-size:var(--fs-xs);color:var(--blue);margin-top:10px;display:inline-block}.work-thumb-inline{display:none}.work-preview{z-index:250;pointer-events:none;opacity:0;border-radius:14px;width:300px;height:190px;transition:opacity .2s,scale .25s;position:fixed;top:0;left:0;overflow:hidden;rotate:-2deg;scale:.92;box-shadow:0 20px 50px #08144640}.work-preview.show{opacity:1;scale:1}.thumb{place-items:center;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.t1{background:#1e5eff}.t2{background:#5c88ff}.t3{background:var(--navy)}.t4{background:#2a4fb8}.t5{background:#8fb0ff}.mock-os{background:#ffffff24;border:1px solid #ffffff4d;border-radius:12px;width:78%;height:140px;position:relative}.os-win{background:#ffffffe6;border-top:10px solid #fff;border-radius:8px;position:absolute}.os-win i{background:#dce6ff;border-radius:4px;position:absolute;inset:10px}.w1{width:44%;height:58%;top:12%;left:8%}.w2{width:40%;height:52%;top:22%;right:10%;rotate:2deg}.os-dock{background:#fff6;border-radius:10px;gap:6px;padding:5px 8px;display:flex;position:absolute;bottom:8px;left:50%;translate:-50%}.os-dock b{background:#fff;border-radius:4px;width:14px;height:14px}.os-dock b:nth-child(2n){background:var(--navy)}.mock-phone{background:#fff;border:5px solid #0d1117;border-radius:18px;align-content:start;gap:6px;width:82px;height:156px;padding:14px 8px;display:grid;translate:0 22px}.mock-phone i{background:#dce6ff;border-radius:6px;height:22px}.mock-phone i:first-child{background:#1e5eff;height:40px}.mock-landing{background:#fff;border-radius:10px;align-content:start;gap:8px;width:72%;height:136px;padding:12px;display:grid}.mock-landing>i{background:#0d1117;border-radius:4px;width:60%;height:10px}.mock-landing>i+i{background:#b8c6e6;width:40%;height:8px}.mock-landing span{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:6px;display:grid}.mock-landing span b{background:#dce6ff;border-radius:6px;height:44px}.mock-landing span b:first-child{background:#1e5eff}.mock-editor{background:#0d1117;border-radius:10px;gap:10px;width:72%;padding:14px;display:grid}.mock-editor .row{align-items:center;gap:10px;display:flex}.mock-editor .row b{background:#4c82ff;border-radius:50%;flex:none;width:22px;height:22px}.mock-editor .row em{background:#fff;border-radius:4px;height:8px}.mock-pad{background:#0d1117;border-radius:14px;grid-template-columns:repeat(3,34px);gap:8px;padding:12px;display:grid}.mock-pad b{background:#fff;border-radius:8px;height:34px;box-shadow:inset 0 -3px #b8c6e6}.mock-pad b.on{background:#1e5eff;box-shadow:inset 0 -3px #0f47d9}.sheet-backdrop{z-index:400;-webkit-backdrop-filter:blur(6px);background:#050a198c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{overscroll-behavior:contain;background:var(--bg);width:min(1100px,100%);max-height:calc(100svh - 40px);color:var(--text);border-radius:24px 24px 0 0;padding:32px 40px 40px;position:relative;overflow-y:auto;box-shadow:0 -20px 60px #00000040}.sheet-bar{z-index:3;justify-content:flex-end;height:0;display:flex;position:sticky;top:16px}.sheet-bar .icon-btn{background:var(--bg);width:40px;height:40px}.sheet-head h2{font-size:var(--fs-2xl);letter-spacing:-.045em;margin-top:10px;font-weight:800;line-height:1}.sheet-intro{grid-template-columns:1fr 1fr;gap:40px;margin:28px 0 36px;display:grid}.sheet-desc{font-size:var(--fs-md);line-height:1.55}.sheet-features li{border-top:1px solid var(--line);font-size:var(--fs-base);gap:12px;padding:10px 0;display:flex}.sheet-features li:last-child{border-bottom:1px solid var(--line)}.sheet-features li:before{content:"—";font-family:var(--mono);color:var(--blue)}.sheet-media{background:#0d1117;border-radius:16px;overflow:hidden}.sheet-media video{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.sheet-media img{width:100%;height:auto;display:block}.sheet-screens-head{justify-content:space-between;align-items:baseline;gap:16px;margin:44px 0 16px;display:flex}.sheet-screens-head h3{font-size:var(--fs-lg);letter-spacing:-.02em}.sheet-screens{scroll-snap-type:x mandatory;gap:16px;margin-inline:-40px;padding:0 40px 12px;scroll-padding-inline:40px;display:flex;overflow-x:auto}.sheet-screens figure{scroll-snap-align:start;flex:0 0 200px}.sheet-screens img{width:100%;height:auto;display:block}.sheet-screens.desktop figure{flex:none}.sheet-screens.desktop img{border:1px solid var(--line);border-radius:10px;width:auto;height:300px}.sheet-meta{flex-wrap:wrap;align-items:center;gap:10px 20px;margin-top:16px;display:flex}.sheet-link{color:var(--blue);border-bottom:2px solid var(--blue-soft);align-items:center;gap:4px;font-weight:600;display:inline-flex}.sheet-link:hover{border-color:var(--blue)}.sheet-note{font-size:var(--fs-xs);color:var(--muted);margin-top:10px;font-style:italic}.sheet-screens figcaption{text-align:center;font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted);margin-top:8px}.sheet-cta{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:40px;padding-top:28px;display:flex}.sheet-cta p{font-size:var(--fs-md);letter-spacing:-.02em;font-weight:700}.workshop{border-top:1px solid var(--line);padding-block:112px}.workshop-intro{grid-template-columns:1fr 1fr;gap:40px;margin-bottom:40px;display:grid}.workshop-desc{font-size:var(--fs-md);max-width:46ch;line-height:1.55}.masonry{--cols:4;--gap:14px;grid-template-columns:repeat(var(--cols), minmax(0, 1fr));grid-auto-flow:dense;grid-auto-rows:calc((100cqw - (var(--cols) - 1) * var(--gap)) / var(--cols));gap:var(--gap);display:grid;container-type:inline-size}.tile{cursor:zoom-in;background:#0d1117;border:0;border-radius:14px;width:100%;height:100%;padding:0;display:block;position:relative;overflow:hidden}.tile.feature{grid-area:span 2/span 2}.tile.wide{grid-column:span 2}.tile img,.tile video{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0}.tile:hover img,.tile:hover video{transform:scale(1.03)}.tile:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.tile-cap{font-family:var(--mono);font-size:var(--fs-xs);color:#fff;-webkit-backdrop-filter:blur(8px);opacity:0;background:#0d1117b8;border-radius:999px;padding:4px 10px;transition:opacity .2s,translate .2s;position:absolute;bottom:10px;left:10px;translate:0 6px}.tile:hover .tile-cap,.tile:focus-visible .tile-cap{opacity:1;translate:0}@media (hover:none){.tile-cap{opacity:1;translate:0}}.tile-badge{font:600 var(--fs-xs)/1.3 var(--font);color:#0d1117;background:#ffffffe6;border-radius:999px;align-items:center;gap:4px;padding:4px 9px;display:inline-flex;position:absolute;top:10px;left:10px}.workshop-cta{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:32px;padding-top:28px;display:flex}.workshop-cta p{font-size:var(--fs-md);letter-spacing:-.02em;font-weight:700}.lightbox{z-index:450;background:#050810eb;place-items:center;padding:56px 76px;display:grid;position:fixed;inset:0}.lb-figure{flex-direction:column;align-items:center;gap:12px;max-width:100%;display:flex}.lb-figure img,.lb-figure video{border-radius:12px;width:auto;max-width:min(1200px,100%);height:auto;max-height:calc(100svh - 150px);display:block}.lb-figure figcaption{font-family:var(--mono);font-size:var(--fs-xs);color:#fff;gap:16px;display:flex}.lb-figure figcaption span{opacity:.55}.lb-btn{cursor:pointer;color:#fff;background:#ffffff14;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute}.lb-btn:hover{background:#ffffff2e}.lb-close{top:16px;right:16px}.lb-prev{top:50%;left:16px;translate:0 -50%}.lb-next{top:50%;right:16px;translate:0 -50%}.prose-lg{font-size:var(--fs-lg);letter-spacing:-.01em;font-weight:500;line-height:1.5}.prose-lg .mk{color:var(--blue)}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:var(--fs-md);cursor:pointer;justify-content:space-between;gap:16px;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:var(--mono);font-size:var(--fs-md);color:var(--blue);line-height:1.3}.faq details[open] summary:after{content:"–"}.faq details p{color:var(--muted);max-width:60ch;margin-top:10px}.contact{border-top:1px solid var(--line);padding-block:128px 96px}.contact h2{font-size:var(--fs-2xl);letter-spacing:-.035em;font-weight:800;line-height:1.1}.contact-actions{flex-wrap:wrap;align-items:center;gap:24px;margin:40px 0 18px;display:flex}.contact-mail{font-size:var(--fs-md);border-bottom:2px solid var(--line);align-items:center;gap:6px;padding-bottom:2px;font-weight:600;transition:color .2s,border-color .2s;display:inline-flex}.contact-mail:hover{color:var(--blue);border-color:var(--blue)}.footer{border-top:1px solid var(--line);font-size:var(--fs-xs);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-block:28px 40px;display:flex}.footer .brand{color:var(--text)}.footer-links{gap:20px;display:flex}.footer-links a:hover{color:var(--blue)}@media (width<=1200px){.hero{gap:32px}}@media (hover:none),(width<=899px){.work-preview{display:none}.work-thumb-inline{grid-column:1/-1;display:block}.work-thumb-inline .thumb{border-radius:14px;height:200px}}@media (width<=899px){.hero{grid-template-columns:1fr;gap:48px;min-height:0;padding-block:104px 56px}.hero-caps{margin-top:32px}.devices{aspect-ratio:16/10}.dev-monitor{width:80%;left:0}.dev-monitor-panel{border-radius:9px}.dev-laptop{display:none}.dev-phone{width:30%}.float-nav nav,.fn-cta-label{display:none}.float-nav .btn-sm{padding:9px 11px}.float-nav{gap:12px}.split{grid-template-columns:1fr;gap:24px;padding-block:72px}.split-aside{position:static}.svc{flex-direction:column;gap:6px}.svc-price{padding-top:0}.works-section{padding-block:72px}.work-row{grid-template-columns:32px minmax(0,1fr) auto;gap:14px}.work-row:hover{padding-left:0}.work-cat{display:none}.contact{padding-block:88px 64px}.sheet{border-radius:18px 18px 0 0;max-height:calc(100svh - 24px);padding:24px 18px 32px}.sheet-intro{grid-template-columns:1fr;gap:20px}.sheet-screens{margin-inline:-18px;padding-inline:18px;scroll-padding-inline:18px}.sheet-screens figure{flex-basis:160px}.sheet-screens.desktop img{height:190px}.workshop{padding-block:72px}.workshop-intro{grid-template-columns:1fr;gap:20px}.masonry{--cols:2;--gap:10px}.tile{border-radius:10px}.tile-cap{padding:3px 8px;bottom:6px;left:6px}.lightbox{padding:56px 12px 84px}.lb-prev,.lb-next{top:auto;bottom:20px;translate:none}.lb-prev{left:calc(50% - 56px)}.lb-next{right:calc(50% - 56px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.work-row:target{animation:none}}
