.shape-grid{width:100%;height:100%;position:relative;overflow:hidden}.shape-grid-canvas{transform-origin:0 0;display:block;position:absolute;top:0;left:0}.tech-text{touch-action:pan-y;user-select:none;width:100%;height:100%;position:relative}.tech-text-canvas{width:100%;height:100%;display:block}.original-tech-heading{font-size:var(--text-display);min-width:0;font-weight:600}.hero-tech-line{width:100%;height:clamp(64px,6.1vw,88px)}.service-focus{margin-bottom:40px;margin-inline:-12px;padding:14px 12px;overflow:clip}.service-focus .focus-container{justify-content:flex-start;gap:1.5rem}.service-focus .focus-word{font-size:clamp(1.25rem,2.7vw,2rem);font-weight:500}.sticker-frame{flex-shrink:0;width:220px;height:220px;position:relative;overflow:clip}.sticker-frame:before{content:"";filter:blur(14px);opacity:0;pointer-events:none;background:radial-gradient(#8798ff66,#7185ff00 70%);border-radius:35%;transition:opacity .4s,scale .6s;position:absolute;inset:40px;scale:.85}.sticker-frame.is-peeling:before{opacity:.5;scale:1}.sticker-frame.is-settling:before{animation:.7s ease-out both sticker-settle}@keyframes sticker-settle{0%{opacity:.5;scale:1}to{opacity:0;scale:.85}}.magnetic-link{display:inline-block}.process-arc{width:100%;min-width:0}.arc-page-stage{--arc-top:72px;top:var(--arc-top);height:calc(100svh - var(--arc-top))}@media (width<=767px){.arc-page-stage{--arc-top:64px}}.process-arc h3{overflow-wrap:anywhere}@media (prefers-reduced-motion:reduce){.sticker-frame:before{transition:none}.sticker-frame.is-settling:before{animation:none}}@media (width<=639px){.hero-tech-line{height:58px}.magnetic-link,.magnetic-link>div,.magnetic-link a{width:100%}}.text-type{white-space:pre-wrap;display:inline-block;position:relative}.text-type__sr{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-type__char{position:relative}.text-type__char--selected{background-color:color-mix(in srgb, currentColor 25%, transparent)}.text-type__caret{width:0;display:inline-block}.text-type__cursor{white-space:pre;pointer-events:none;will-change:transform;transition:opacity .2s;position:absolute;top:0;left:0}.text-type__cursor--hidden{opacity:0}.text-type__blink{display:inline-block}.text-type__cursor--character .text-type__blink{margin-left:.25rem}.text-type__shape{background-color:currentColor;margin-left:.06em;display:inline-block}.text-type__cursor--bar .text-type__shape{vertical-align:-.2em;border-radius:1px;width:max(2px,.07em);height:1.1em}.text-type__cursor--block .text-type__shape{vertical-align:-.2em;border-radius:.06em;width:.56em;height:1.1em}.text-type__cursor--underscore .text-type__shape{vertical-align:-.12em;border-radius:1px;width:.56em;height:max(2px,.075em)}.shiny-text{-webkit-text-fill-color:transparent;background-repeat:no-repeat;background-size:100% 100%;-webkit-background-clip:text;background-clip:text;display:inline-block;position:relative}.shiny-text__glow{filter:blur(.14em);pointer-events:none;user-select:none;background-repeat:no-repeat;background-size:100% 100%;-webkit-background-clip:text;background-clip:text;position:absolute;inset:0}.focus-container{user-select:none;outline:none;flex-wrap:wrap;justify-content:center;align-items:center;gap:1em;display:flex;position:relative}.focus-word{cursor:pointer;user-select:none;outline:none;font-size:3rem;font-weight:900;transition:filter .3s,color .3s;position:relative}.focus-word.active{filter:blur()}.focus-frame{pointer-events:none;position:absolute;top:0;left:0}.focus-highlight{background-color:var(--highlight-color);pointer-events:none;border-radius:6px;position:absolute;top:0;left:0}.focus-box{box-sizing:border-box;border:var(--border-width,3px) solid var(--border-color,currentColor);filter:drop-shadow(0 0 4px var(--glow-color,transparent));border-radius:6px;position:absolute;top:0;left:0}.focus-underline{border-radius:calc(var(--border-width,3px) / 2);background-color:var(--border-color,currentColor);filter:drop-shadow(0 0 4px var(--glow-color,transparent));position:absolute;top:0;left:0}.corner{box-sizing:border-box;width:var(--corner-size,1rem);height:var(--corner-size,1rem);border:var(--border-width,3px) solid var(--border-color,currentColor);filter:drop-shadow(0 0 4px var(--glow-color,transparent));border-radius:3px;position:absolute;top:0;left:0}.top-left{border-bottom:none;border-right:none}.top-right{border-bottom:none;border-left:none}.bottom-left{border-top:none;border-right:none}.bottom-right{border-top:none;border-left:none}.sticker-peel{pointer-events:none;will-change:transform;position:absolute;top:0;left:0}.sticker-peel-canvas{pointer-events:none;width:100%;height:100%;display:block}.sticker-peel-hit{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;position:absolute;top:50%;left:50%}.hero-shell[data-astro-cid-ge2uvauf]{isolation:isolate;position:relative;overflow:clip}.hero-grid[data-astro-cid-ge2uvauf]{z-index:0;pointer-events:none;background:var(--color-canvas);position:absolute;inset:0;mask-image:linear-gradient(#000 0% 68%,#0000 100%)}.hero-grid[data-astro-cid-ge2uvauf]>astro-island[data-astro-cid-ge2uvauf]{width:100%;height:100%;display:block}.hero-content[data-astro-cid-ge2uvauf]{z-index:1;position:relative}.status-dot[data-astro-cid-ge2uvauf]{background-color:var(--color-accent-soft);border-radius:9999px;width:.5rem;height:.5rem;box-shadow:0 0 0 4px #5f75ff33}.section-title[data-astro-cid-pb4nux2a]{width:fit-content;max-width:100%}.work-transition[data-astro-cid-gzied6pw]{background:linear-gradient(#0000,#191c1f66 220px);position:relative}.plan-promise[data-astro-cid-4v555h6s]{letter-spacing:-.04em;font-size:clamp(1.5rem,3vw,2.6rem);font-weight:500;line-height:1.2}.guarantee[data-astro-cid-4v555h6s]{transition:translate .25s,border-color .25s}.guarantee[data-astro-cid-4v555h6s]:hover{border-color:var(--color-accent-soft);translate:0 -4px}@media (prefers-reduced-motion:reduce){.guarantee[data-astro-cid-4v555h6s]{transition:none}}summary[data-astro-cid-hemr5th4]::-webkit-details-marker{display:none}.profile-card{--pc-light-x:50%;--pc-light-y:50%;--pc-pointer-x:50%;--pc-pointer-y:50%;--pc-band-x:50%;--pc-band-y:50%;--pc-reach:0;--pc-rotate-x:0deg;--pc-rotate-y:0deg;--pc-shift-x:0px;--pc-shift-y:0px;--pc-tilt:0;--pc-active:0;perspective:1000px;touch-action:pan-y;-webkit-tap-highlight-color:transparent;width:340px;max-width:100%;position:relative}.profile-card__body{border-radius:calc(var(--pc-radius) + 10px);background:var(--pc-frame);box-shadow:var(--pc-frame-shadow);backdrop-filter:blur(20px)saturate(1.6);transform:rotateX(var(--pc-rotate-x)) rotateY(var(--pc-rotate-y));will-change:transform;flex-direction:column;gap:10px;padding:10px;display:flex;position:relative}.profile-card__tile{aspect-ratio:4/5;border-radius:var(--pc-radius);background:var(--pc-backdrop);box-shadow:var(--pc-tile-shadow);isolation:isolate;position:relative;overflow:hidden}.profile-card__sheen,.profile-card__holo,.profile-card__scrim,.profile-card__tile-rim,.profile-card__glare,.profile-card__shade,.profile-card__rim{border-radius:inherit;pointer-events:none;position:absolute;inset:0}.profile-card__sheen{background:radial-gradient(farthest-corner circle at calc(var(--pc-light-x) - 10px) calc(var(--pc-light-y) - 10px), var(--pc-sheen) 0%, transparent 55%);opacity:calc(var(--pc-holo) * var(--pc-active))}.profile-card__holo{--pc-spectrum:repeating-linear-gradient(0deg, #ff7a75 5%, #ffed61 10%, #a8ff61 15%, #85fff7 20%, #7a95ff 25%, #ad85ff 30%, #ff7a75 35%);--pc-bars:repeating-linear-gradient(-45deg, #0e152e 0%, #8fa3a3 3.8%, #8fc1c1 4.5%, #8fa3a3 5.2%, #0e152e 10%, #0e152e 12%);--pc-falloff:radial-gradient(farthest-corner circle at var(--pc-pointer-x) var(--pc-pointer-y), #0000001a 12%, #00000026 20%, #00000040 120%);background-image:var(--pc-spectrum), var(--pc-bars), var(--pc-falloff);background-position:0 var(--pc-band-y), var(--pc-band-x) var(--pc-band-y), center;background-blend-mode:color, hard-light;mix-blend-mode:var(--pc-blend);filter:brightness(calc(.66 + .19 * var(--pc-active))) contrast(calc(1.33 + .17 * var(--pc-active))) saturate(calc(.33 + .17 * var(--pc-active))) var(--pc-holo-filter);opacity:calc(var(--pc-holo) * var(--pc-holo-gain) * (.5 + .5 * var(--pc-active)));-webkit-mask-image:var(--pc-pattern);-webkit-mask-size:var(--pc-pattern-size);-webkit-mask-position:calc(50% - var(--pc-shift-x) * 1.5) calc(65% - var(--pc-shift-y) * 1.5);-webkit-mask-repeat:repeat;mask-image:var(--pc-pattern);mask-size:var(--pc-pattern-size);mask-position:calc(50% - var(--pc-shift-x) * 1.5) calc(65% - var(--pc-shift-y) * 1.5);background-size:500% 500%,300% 300%,200% 200%;mask-repeat:repeat}.profile-card__holo-glow,.profile-card__holo-shift{opacity:calc(var(--pc-active) * var(--pc-holo-detail));position:absolute;inset:0}.profile-card__holo-glow{background-image:linear-gradient(45deg, #85fff7, #7a95ff, #ad85ff, #ff7a75, #ffed61, #a8ff61), radial-gradient(circle at var(--pc-pointer-x) var(--pc-pointer-y), #b3b3b3 0%, #4d4d4d33 90%), var(--pc-grain);background-size:250% 250%,100% 100%,220px 220px;background-position:var(--pc-pointer-x) var(--pc-pointer-y), center, 0 0;background-blend-mode:color-dodge;filter:brightness(calc(2 - var(--pc-reach))) contrast(calc(var(--pc-reach) + 2)) saturate(calc(.5 + var(--pc-reach)));mix-blend-mode:luminosity}.profile-card__holo-shift{background-image:var(--pc-spectrum), var(--pc-bars), var(--pc-falloff);background-position:0 var(--pc-band-y), calc(var(--pc-band-x) * .4) calc(var(--pc-band-y) * .5), center;background-blend-mode:color, hard-light;mix-blend-mode:difference;filter:brightness(.8)contrast(1.5);background-size:200% 300%,700% 700%,100% 100%}.profile-card__photo{inset:calc(var(--pc-parallax) * -1);width:calc(100% + var(--pc-parallax) * 2);height:calc(100% + var(--pc-parallax) * 2);object-fit:cover;object-position:center bottom;transform:translate3d(var(--pc-shift-x), var(--pc-shift-y), 0);pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute}.profile-card__scrim{background:linear-gradient(#0000 48%,#00000005 54%,#00000012 60%,#00000029 67%,#00000047 74%,#0006 81%,#00000080 88%,#00000091 94%,#0009 100%)}.profile-card__info{color:#fff;position:absolute;bottom:18px;left:20px;right:20px}.profile-card__name{letter-spacing:-.01em;color:inherit;margin:0;font-size:20px;font-weight:600;line-height:1.25}.profile-card__title{color:#ffffffc7;margin:4px 0 0;font-size:14px;line-height:1.45}.profile-card__tile-rim{box-shadow:inset 0 0 0 1px var(--pc-tile-edge), inset 0 1px 0 var(--pc-tile-highlight)}.profile-card__footer{align-items:center;gap:12px;min-width:0;padding:6px 20px 8px;display:flex}.profile-card__avatar{background:var(--pc-tile);border-radius:50%;flex:none;width:36px;height:36px;position:relative;overflow:hidden}.profile-card__avatar:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 1px var(--pc-tile-edge);position:absolute;inset:0}.profile-card__avatar img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.profile-card__meta{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.profile-card__handle{color:var(--pc-ink);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;line-height:1.25;overflow:hidden}.profile-card__status{color:var(--pc-muted);white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;line-height:1.25;display:flex}.profile-card__status:before{content:"";background:var(--pc-status);border-radius:50%;flex:none;width:6px;height:6px}.profile-card__contact{border-radius:calc(var(--pc-radius) * .75);background:var(--pc-tile);height:36px;box-shadow:inset 0 0 0 1px var(--pc-tile-edge), inset 0 1px 0 var(--pc-tile-highlight), var(--pc-tile-shadow);color:var(--pc-ink);cursor:pointer;border:none;flex:none;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:600;transition:filter .2s,transform .2s;display:flex}.profile-card__contact:active{filter:var(--pc-press);transition-duration:0s;transform:scale(.96)}.profile-card__contact:focus-visible{outline:2px solid var(--pc-ink);outline-offset:2px}.profile-card__glare{background:radial-gradient(farthest-corner circle at var(--pc-light-x) var(--pc-light-y), #fffc 0%, #ffffff5c 20%, #fff0 60%);mix-blend-mode:overlay;opacity:calc(var(--pc-glare) * var(--pc-active))}.profile-card__shade{background:radial-gradient(farthest-corner circle at var(--pc-light-x) var(--pc-light-y), transparent 30%, var(--pc-shade) 100%);opacity:calc(var(--pc-glare) * var(--pc-tilt))}.profile-card__rim{box-shadow:inset 0 0 0 1px var(--pc-frame-edge), inset 0 1px 0 var(--pc-frame-highlight)}@media (hover:hover){.profile-card__contact:hover{filter:var(--pc-hover)}.profile-card__contact:hover:active{filter:var(--pc-press)}}.board-piece{transform:translate(var(--piece-x,0px),var(--piece-y,0px)) scale(var(--piece-scale,1));transform-origin:0 0;position:relative}[data-board-selected]{z-index:12}.board-frame-active{outline-offset:5px;outline:1px dashed #7185ff55}[data-board-preview]{outline-offset:3px;outline:1px solid #7185ff55}.selection-layer{pointer-events:none;z-index:48;position:fixed;inset:0}.selection-box{will-change:left,top,width,height;background:#7185ff18;border:1px solid #8799ff88;position:absolute}.selection-box.has-selection{pointer-events:auto;touch-action:none;cursor:move;background:0 0;transition:left .14s cubic-bezier(.2,.7,.2,1),top .14s cubic-bezier(.2,.7,.2,1),width .14s cubic-bezier(.2,.7,.2,1),height .14s cubic-bezier(.2,.7,.2,1)}.board-gesturing .selection-box{transition:none}.selection-box:not(.has-selection) .selection-handle{display:none}.selection-handle{touch-action:none;background:0 0;width:28px;height:28px;padding:0;position:absolute}.selection-handle:after{content:"";background:var(--color-canvas);border:1px solid #9aaaff;position:absolute;inset:10px}.selection-handle.tl{cursor:nwse-resize;top:-14px;left:-14px}.selection-handle.tr{cursor:nesw-resize;top:-14px;right:-14px}.selection-handle.bl{cursor:nesw-resize;bottom:-14px;left:-14px}.selection-handle.br{cursor:nwse-resize;bottom:-14px;right:-14px}.selection-size{color:#fff;font:10px var(--font-mono);white-space:nowrap;background:#5f75ff;padding:4px 8px;position:absolute}.board-gesturing,.board-gesturing *{user-select:none!important}.board-intro{z-index:60;border:1px solid var(--color-line-strong);backdrop-filter:blur(16px);background:#191c1ff5;width:min(360px,100vw - 48px);padding:20px 42px 20px 20px;animation:.4s both intro-in;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 40px #0005}.board-intro .label-tool{color:var(--color-accent-soft)}.board-intro p{color:var(--color-muted);margin-top:8px;font-size:13px;line-height:1.6}.board-intro button{width:36px;height:36px;color:var(--color-muted);font-size:20px;position:absolute;top:4px;right:4px}@keyframes intro-in{0%{opacity:0;translate:0 12px}to{opacity:1;translate:0}}@media (width<=1023px),(pointer:coarse){.board-intro{display:none}}@media (pointer:coarse){.selection-handle{width:44px;height:44px}.selection-handle:after{inset:17px}.selection-handle.tl{top:-22px;left:-22px}.selection-handle.tr{top:-22px;right:-22px}.selection-handle.bl{bottom:-22px;left:-22px}.selection-handle.br{bottom:-22px;right:-22px}}@media (prefers-reduced-motion:reduce){.selection-box.has-selection{transition:none}.board-intro{animation:none}}@media (pointer:fine){html,body{cursor:url(/cursors/arrow.svg) 5 3,default}a,button,summary,[data-cube-control]{cursor:url(/cursors/hand.svg) 14 12,pointer}main p,main h1,main h2,main h3,input,textarea{cursor:url(/cursors/text.svg) 14 16,text}[data-cube-control] *{cursor:inherit}}
