:root{--gr-ease:cubic-bezier(.16,1,.3,1)}.gr-home{position:relative}.gl-cream{position:relative;background:#fbf7ee9e;-webkit-backdrop-filter:blur(8px) saturate(1.3);backdrop-filter:blur(8px) saturate(1.3);border:none;border-radius:999px;box-shadow:inset 0 1px 1px #ffffffd9,0 10px 26px -14px #16151359}.gl-cream:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(180deg,#1615136b,#1615131a 35% 65%,#16151357);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.gr-spine{position:absolute;top:0;left:0;pointer-events:none;z-index:4;overflow:visible}.gr-spine .gr-path{fill:none;stroke:url(#grFade);stroke-width:1.4;stroke-linecap:round}.gr-spine .gr-tendril{fill:none;stroke:var(--accent);stroke-width:1;opacity:.5;stroke-linecap:round}.gr-spine .gr-node{fill:var(--cream);stroke:var(--accent);stroke-width:1.4;transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .8s var(--gr-ease),fill .6s}.gr-spine .gr-node.on{transform:scale(1);fill:var(--accent)}.gr-spine .gr-tip{fill:var(--accent)}.gr-spine .gr-tip-glow{fill:var(--accent);opacity:.2}.gr-spine .gr-tip-g{transition:opacity .4s}@media(max-width:720px){.gr-spine{display:none}}.gr-hero .bt-w{display:inline-block;opacity:0;filter:blur(10px);transform:translateY(30px)}.is-loaded .gr-hero .bt-w{animation:grBlurIn 1s var(--d,0ms) var(--gr-ease) forwards}@keyframes grBlurIn{to{opacity:1;filter:blur(0);transform:none}}.gr-hero .hero-sub{opacity:0}.is-loaded .gr-hero .hero-sub{animation:grFadeUp .7s .3s var(--gr-ease) forwards}@keyframes grFadeUp{0%{opacity:0;filter:blur(6px);transform:translateY(20px)}to{opacity:1;filter:blur(0);transform:none}}.gr-hero .hero-viz{opacity:0}.is-loaded .gr-hero .hero-viz.float{animation:grVizIn 1.8s var(--vd,.5s) var(--gr-ease) forwards,float-y 6s ease-in-out infinite}.is-loaded .gr-hero .hero-viz.drift{animation:grVizIn 1.8s var(--vd,.5s) var(--gr-ease) forwards,drift 9s ease-in-out infinite}.gr-hero .hero-viz-tl{--vd:.5s}.gr-hero .hero-viz-tr{--vd:.65s}.gr-hero .hero-viz-bl{--vd:.8s}.gr-hero .hero-viz-br{--vd:.95s}.gr-hero .hero-viz-chip{--vd:1.1s}@keyframes grVizIn{0%{opacity:0;filter:blur(12px)}to{opacity:1;filter:blur(0)}}.gr-seed{position:relative;width:44px;height:44px;margin:0 auto;display:grid;place-items:center;opacity:0;filter:blur(12px);transform:scale(.92)}.is-loaded .gr-seed{animation:grSeedIn 2.2s 1s var(--gr-ease) forwards}@keyframes grSeedIn{to{opacity:1;filter:blur(0);transform:scale(1)}}.gr-seed-core{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #ff5a1f24,0 0 20px 3px #ff5a1f52}.gr-seed:after{content:"";position:absolute;inset:9px;border-radius:50%;border:1px solid rgba(255,90,31,.4);animation:grBreath 5.5s ease-in-out infinite}@keyframes grBreath{0%,to{transform:scale(.85);opacity:.25}50%{transform:scale(1.15);opacity:.6}}.gr-seed-ring{position:absolute;inset:4px;border-radius:50%;border:1.4px solid var(--accent);opacity:0;animation:grRing 1.6s var(--gr-ease) 1}@keyframes grRing{0%{opacity:.7;transform:scale(.3)}to{opacity:0;transform:scale(1.9)}}.gr-intro-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center}.gr-net{position:relative;width:100%;max-width:520px;aspect-ratio:520/440;justify-self:end}.gr-net svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.gr-net .l-main{fill:none;stroke:var(--ink);stroke-width:1.2;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.5s cubic-bezier(.65,0,.35,1) var(--d),opacity .35s,stroke .35s}.gr-net.on .l-main{stroke-dashoffset:0}.gr-net .l-ring{fill:none;stroke:var(--ink);stroke-width:1;stroke-dasharray:2 5;opacity:0;transition:opacity 1.4s var(--d)}.gr-net.on .l-ring{opacity:.4}.gr-net.has-hi .l-main{opacity:.22}.gr-net .l-main.hi{opacity:1;stroke:var(--accent);stroke-width:1.6}.gr-net-core{position:absolute;left:50%;top:50%;width:66px;height:66px;border-radius:50%;background:var(--paper);border:1.5px solid var(--ink);display:grid;place-items:center;opacity:0;transform:translate(-50%,-50%) scale(.6);filter:blur(8px);transition:opacity 1.2s var(--gr-ease),transform 1.4s var(--gr-ease),filter 1.2s;box-shadow:4px 4px 0 var(--accent)}.gr-net.on .gr-net-core{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}.gr-net-lbl{position:absolute;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:8px;padding:9px 14px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:500;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);white-space:nowrap;opacity:0;filter:blur(8px);transition:opacity .9s var(--gr-ease) var(--d),filter .9s var(--gr-ease) var(--d),transform .3s var(--gr-ease),background .3s}.gr-net.on .gr-net-lbl{opacity:1;filter:blur(0)}.gr-net-lbl:hover,.gr-net-lbl:focus-visible{transform:translate(-50%,-50%) scale(1.05);background:#fbf7eee6;outline:none}.gr-net-dot{width:8px;height:8px;border-radius:50%;background:var(--c);border:1px solid var(--ink);flex-shrink:0}@media(max-width:1024px){.gr-intro-head{grid-template-columns:1fr;gap:32px}.gr-net{justify-self:center;max-width:480px}}@media(max-width:560px){.gr-net{margin:0 auto;width:92%}.gr-net-lbl{font-size:9px;padding:7px 10px;gap:6px;letter-spacing:.1em}.gr-net-core{width:50px;height:50px}}.svc-node{display:none}.gr-home .svc{position:relative;transition:padding-left .35s cubic-bezier(.2,.7,.2,1),background .35s,opacity .45s}.gr-home .svc-node{display:block;position:absolute;left:-18px;top:58px;width:18px;height:1.4px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .9s var(--gr-ease) .25s,width .4s var(--gr-ease)}.gr-home .svc-node:before{content:"";position:absolute;left:-4px;top:-3.3px;width:8px;height:8px;box-sizing:border-box;border-radius:50%;background:var(--cream-2);border:1.4px solid var(--accent);transition:background .3s,transform .3s var(--gr-ease)}.gr-home .reveal.in .svc-node{transform:scaleX(1)}.gr-home .svc:hover .svc-node{width:42px}.gr-home .svc:hover .svc-node:before{background:var(--accent);transform:scale(1.3)}.gr-home .svc-list:has(.svc:hover) .svc:not(:hover){opacity:.45}@media(max-width:720px){.gr-home .svc-node{display:none}}.gr-roots{position:relative;overflow:hidden;background:#0e0d0b;color:var(--paper);border-top:1px solid var(--ink);border-bottom:none;padding:clamp(120px,13vw,190px) 0}.gr-roots-cv{position:absolute;inset:0;width:100%;height:100%;display:block}.gr-roots-fade{position:absolute;inset:0;pointer-events:none;background:radial-gradient(55% 45% at 82% 100%,rgba(255,90,31,.13),transparent 70%),linear-gradient(90deg,#0e0d0be6,#0e0d0b8c 42%,#0e0d0b00 72%)}.gr-roots-inner{position:relative;z-index:2}.gr-roots .pg-h2{color:var(--paper);font-size:clamp(40px,4.8vw,76px);max-width:16ch}.gr-roots .md-p{color:var(--paper);opacity:.78;max-width:56ch}.gr-roots .btn{background:#ffffff0a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--paper);border-color:transparent;box-shadow:inset 0 1px 1px #fff3,inset 0 0 0 1px #ffffff2e}.gr-roots .btn:hover{background:var(--accent);color:var(--paper);border-color:var(--accent);box-shadow:4px 4px 0 var(--paper)}.gr-home .work-grid>.reveal{transform:translate3d(var(--gx,0),48px,0) scale(.96);filter:blur(8px);transition:opacity .9s var(--gr-ease),transform 1.1s var(--gr-ease),filter .9s var(--gr-ease)}.gr-home .work-grid>.reveal:nth-child(odd){--gx:-18px}.gr-home .work-grid>.reveal:nth-child(2n){--gx:18px}.gr-home .work-grid>.reveal.in{transform:none;filter:blur(0)}.gr-home .work-thumb>div:not(.grain){transition:transform 1.2s var(--gr-ease)}.gr-home .work:hover .work-thumb>div:not(.grain){transform:scale(1.035) translateY(-4px)}.gr-home .work-name{transition:transform .45s var(--gr-ease),color .35s}.gr-home .work:hover .work-name{transform:translate(6px);color:var(--accent-deep)}@media(pointer:fine){.gr-home .work{cursor:none!important}}.gr-case-cursor{position:fixed;left:0;top:0;z-index:9998;pointer-events:none;display:flex;gap:8px;align-items:center;margin:16px 0 0 16px;padding:10px 16px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);opacity:0;scale:.85;transition:opacity .25s,scale .35s var(--gr-ease)}.gr-case-cursor.on{opacity:1;scale:1}.gr-meter{position:relative;height:14px;margin-bottom:18px;background:linear-gradient(var(--ink),var(--ink)) left bottom/100% 1px no-repeat,repeating-linear-gradient(90deg,var(--ink) 0 1px,transparent 1px 2.5%) left bottom/100% 5px no-repeat,repeating-linear-gradient(90deg,var(--ink) 0 1.5px,transparent 1.5px 25%) left bottom/100% 13px no-repeat;opacity:.9}.gr-meter-fill{position:absolute;left:0;bottom:-1px;height:3px;width:100%;background:var(--accent);transform:scaleX(var(--p,0));transform-origin:left;transition:transform .15s linear}.gr-proc .process-step .num{opacity:.25;transform:translateY(10px);transition:opacity .7s var(--gr-ease),transform .7s var(--gr-ease)}.gr-proc .process-step .step-tag{transition:color .5s,opacity .5s}.gr-proc .process-step.is-on .num{opacity:1;transform:none}.gr-proc .process-step.is-on .step-tag{color:var(--accent);opacity:1}@media(max-width:900px){.gr-meter{display:none}}.gr-home .faq-item{position:relative;transition:background .35s}.gr-home .faq-item:after{content:"";position:absolute;left:0;bottom:-1px;height:1.5px;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--gr-ease)}.gr-home .faq-item.open:after{transform:scaleX(1)}.gr-home .faq-q .plus{font-size:0;position:relative;transition:background .3s,color .3s}.gr-home .faq-q .plus:before,.gr-home .faq-q .plus:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.6px;border-radius:2px;background:currentColor;transform:translate(-50%,-50%);transition:transform .35s var(--gr-ease)}.gr-home .faq-q .plus:after{transform:translate(-50%,-50%) rotate(90deg)}.gr-home .faq-item.open .plus{transform:none}.gr-home .faq-item.open .plus:after{transform:translate(-50%,-50%) rotate(0)}.gr-home .faq-a p{transition:transform .45s var(--gr-ease)}.gr-home .faq-item:not(.open) .faq-a p{transform:translateY(-6px)}.gr-eco{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;z-index:0}.gr-flow{position:relative;background:var(--cream);isolation:isolate;overflow-x:clip}.gr-flow-bg{position:sticky;top:0;height:100vh;height:100lvh;margin-bottom:-100vh;margin-bottom:-100lvh;z-index:0;pointer-events:none;overflow:hidden}.gr-flow>.gr-hs,.gr-flow>.gr-flow-gap,.gr-flow>.gr-intake{position:relative;z-index:1}.gr-hs{min-height:calc(100vh - var(--navH,72px));min-height:calc(100svh - var(--navH,72px));display:flex}.gr-hs-sticky{position:relative;flex:1;display:flex}.gr-flow-gap{height:clamp(160px,36vh,420px)}.gr-flow.is-cine .gr-hs{display:block;height:230vh;height:230svh}.gr-flow.is-cine .gr-hs-sticky{position:sticky;display:block;top:var(--navH,72px);height:calc(100vh - var(--navH,72px));height:calc(100svh - var(--navH,72px))}.gr-flow.is-cine .gr-hs-content{height:100%}.gr-flow.is-cine .gr-flow-gap{display:none}.gr-flow.is-cine .gr-intake{margin-top:-32vh;margin-top:-32svh}.gr-hs-scene{position:absolute;inset:0;z-index:1;opacity:0;transition:opacity 1.2s var(--gr-ease)}.gr-hs-scene.ready{opacity:1}.gr-hs-scene canvas{position:absolute;inset:0;width:100%;height:100%;display:block;will-change:opacity}.gr-hs-light{position:absolute;left:0;top:0;width:760px;height:760px;margin:-380px 0 0 -380px;border-radius:50%;background:radial-gradient(circle,#ff5a1f1c,#ff5a1f00 62%);pointer-events:none}.gr-hs-contrast{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(46% 42% at 50% 46%,#f2ebdbe0,#f2ebdb8c 52%,#f2ebdb00 80%)}.gr-hs-fg{position:absolute;inset:0;z-index:1;pointer-events:none}.gr-hs-content{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;justify-content:safe center;padding:40px 32px 24px!important}.gr-hs .hero-chips{margin-bottom:28px!important}.gr-hs .h-display{font-size:clamp(44px,min(7.5vw,12.5vh),130px)!important}.gr-hs-anchor{width:10px;height:10px;margin:-6px auto 0}.gr-intake{padding:0 0 110px}.gr-intake-inner{display:flex;justify-content:center}.gr-intake-inner .hw-wrap{transition:box-shadow .9s var(--gr-ease)}.gr-intake-inner.is-rooted .hw-wrap{box-shadow:10px 10px 0 var(--ink),0 0 0 6px #ff5a1f17,0 18px 70px #ff5a1f33}@media(max-width:1023px){.gr-flow-gap{height:14vh}.gr-hs-contrast{background:radial-gradient(70% 46% at 50% 44%,#f2ebdbf0,#f2ebdbb8 55%,#f2ebdb00 88%)}}@media(max-width:720px){.gr-flow-gap{height:56px}.gr-hs-content{padding:28px 20px 16px!important}.gr-intake{padding-bottom:80px}}@media(prefers-reduced-motion:reduce){.gr-hero .bt-w,.gr-hero .hero-sub,.gr-seed{opacity:1!important;filter:none!important;transform:none!important;animation:none!important}.gr-hero .hero-viz{opacity:1!important;animation:none!important}.gr-seed:after{animation:none}.gr-home .work-grid>.reveal{filter:none!important;transform:none!important}.gr-net *{transition:none!important}}.motion-off .gr-hero .bt-w,.motion-off .gr-hero .hero-sub,.motion-off .gr-seed{opacity:1!important;filter:none!important;transform:none!important;animation:none!important}.motion-off .gr-hero .hero-viz{opacity:1!important}.motion-off .gr-home .work-grid>.reveal{filter:none!important;transform:none!important}
