.v4,.v4-nav{--bg:#0b0d0c;--ink-rgb:240, 244, 241;--bg-rgb:11, 13, 12;--lift:0;--on-acc:#06251a;--bg2:#111512;--ink:#f0f4f1;--muted:#88928b;--acc:#2ee6a8;--acc-deep:#0fa77a;--amb:#ffb347;--line:rgba(var(--ink-rgb), .08);--line-strong:rgba(var(--ink-rgb), .16);--card:#f2f5f2;--card-ink:#101412;--card-muted:#69736c;--font-d:var(--font-bricolage), system-ui, sans-serif;--font-b:var(--font-inter), system-ui, sans-serif;--font-m:var(--font-plex-mono), ui-monospace, monospace;--font-s:var(--font-caveat), cursive;--pad:clamp(20px, 4.5vw, 56px);--green-light:#2ee6a8;--green-accent:#0fa77a}@property --sig{syntax:"<color>";inherits:true;initial-value:#2ee6a8}@property --draw{syntax:"<number>";inherits:true;initial-value:0}.v4{--sig:#2ee6a8;transition:--sig .9s cubic-bezier(.16,1,.3,1)}.v4[data-zone=process],.v4[data-zone=projects],.v4[data-zone=services],.v4[data-zone=lab]{--sig:#35d6e6}.v4[data-zone=contact]{--sig:#ffb347}.v4[data-sent]{--sig:#f4fffa;transition:--sig .16s linear}.v4 [data-skew]{will-change:transform}.v4{font-family:var(--font-b);color:var(--ink);font-size:16px;line-height:1.6}.v4 .wrap{max-width:1320px;padding-inline:var(--pad);margin-inline:auto}.v4 .mono,.v4-nav .mono{font-family:var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px}.v4 .mono .tick,.v4-nav .mono .tick{color:var(--amb)}.v4-dots{z-index:1;pointer-events:none;background-image:radial-gradient(rgba(var(--ink-rgb), .05) 1px, transparent 1px);background-size:28px 28px;position:fixed;inset:0}.v4-nav{z-index:120;border-bottom:1px solid var(--line);background:rgba(var(--bg-rgb), .72);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:fixed;top:0;left:0;right:0}.v4-nav .nav-in{max-width:1320px;padding-inline:var(--pad);align-items:center;gap:22px;height:64px;margin-inline:auto;display:flex}.v4-nav .brand{color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;border:none;align-items:baseline;gap:4px;padding:0;line-height:1;display:flex;position:relative}.v4-nav .brand .vf{pointer-events:none;transition:inset .46s cubic-bezier(.22,.8,.28,1),opacity .3s;position:absolute;inset:-7px -10px -9px}.v4-nav .brand .vf i{border:1.5px solid var(--acc);opacity:.85;width:7px;height:7px;transition:transform .5s cubic-bezier(.22,1.28,.46,1),opacity .3s;position:absolute}.v4-nav .brand .vf .c-tl{border-bottom:none;border-right:none;top:0;left:0}.v4-nav .brand .vf .c-tr{border-bottom:none;border-left:none;top:0;right:0}.v4-nav .brand .vf .c-bl{border-top:none;border-right:none;bottom:0;left:0}.v4-nav .brand .vf .c-br{border-top:none;border-left:none;bottom:0;right:0}.v4-nav .brand:hover .vf i,.v4-nav .brand:focus-visible .vf i{opacity:1;animation:.55s cubic-bezier(.22,1,.36,1) kn-lock}.v4-nav .brand:hover .vf .c-tl,.v4-nav .brand:focus-visible .vf .c-tl{--lx:3px;--ly:3px}.v4-nav .brand:hover .vf .c-tr,.v4-nav .brand:focus-visible .vf .c-tr{--lx:-3px;--ly:3px}.v4-nav .brand:hover .vf .c-bl,.v4-nav .brand:focus-visible .vf .c-bl{--lx:3px;--ly:-3px}.v4-nav .brand:hover .vf .c-br,.v4-nav .brand:focus-visible .vf .c-br{--lx:-3px;--ly:-3px}@keyframes kn-lock{40%{transform:translate(var(--lx,0), var(--ly,0))}to{transform:none}}.v4-nav .brand:active .vf{transition-duration:.6s;inset:-3px -5px -5px}.v4-nav .brand.scrolled .vf{opacity:0;inset:-14px -18px -16px}.v4-nav .brand .name{font-family:var(--font-s);letter-spacing:0;white-space:nowrap;align-items:baseline;font-size:26px;font-weight:600;display:inline-flex;position:relative}.v4-nav .brand .grow{grid-template-columns:0fr;transition:grid-template-columns .46s cubic-bezier(.22,.8,.28,1);display:inline-grid}.v4-nav .brand .grow>span{min-width:0;padding-right:.09em;overflow:hidden}.v4-nav .brand:hover .grow,.v4-nav .brand:focus-visible .grow,.v4-nav .brand.scrolled .grow{grid-template-columns:1fr}.v4-nav .brand .name .ul{opacity:0;width:100%;height:7px;transition:opacity .2s;position:absolute;bottom:-5px;left:0;overflow:visible}.v4-nav .brand .name .ul path{fill:none;stroke:var(--acc);stroke-width:1.7px;stroke-linecap:round;stroke-dasharray:132;stroke-dashoffset:132px;transition:stroke-dashoffset .5s .22s}.v4-nav .brand:hover .name .ul,.v4-nav .brand:focus-visible .name .ul,.v4-nav .brand.scrolled .name .ul{opacity:1}.v4-nav .brand:hover .name .ul path,.v4-nav .brand:focus-visible .name .ul path,.v4-nav .brand.scrolled .name .ul path{stroke-dashoffset:0}.v4-nav .nav-links{gap:26px;margin-left:auto;display:flex}.v4-nav .era-nav{color:var(--muted);opacity:.55;cursor:pointer;background:0 0;border:none;align-items:center;padding:6px 0;transition:opacity .3s,color .3s;display:inline-flex}.v4-nav .era-nav svg{width:22px;height:8px;overflow:visible}.v4-nav .era-nav svg line{stroke:currentColor;stroke-width:1px;vector-effect:non-scaling-stroke}.v4-nav .era-nav:hover,.v4-nav .era-nav:focus-visible{opacity:1;color:var(--acc)}@media (max-width:767px){.v4-nav .era-nav{display:none}}.v4-nav .nav-toggle{color:var(--muted);cursor:pointer;background:0 0;border:none;margin-left:auto;display:none}@media (max-width:767px){.v4-nav .nav-links,.v4-nav .nav-status{display:none}.v4-nav .nav-toggle{align-items:center;display:flex}}@media (min-width:768px){.v4-nav .nav-mobile-wrap{display:none}}.v4-nav .nav-links button{font-family:var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.25rem 0;font-size:11px;transition:color .25s}.v4-nav .nav-links button:hover,.v4-nav .nav-links button.on{color:var(--ink)}.v4-nav .nav-links button b{color:var(--amb);margin-right:4px;font-weight:400}.v4-nav .nav-status{font-family:var(--font-b);letter-spacing:.01em;text-transform:none;color:var(--muted);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;border-left:1px solid var(--line);align-items:center;gap:7px;padding-left:18px;font-size:11px;display:flex}.v4-nav .nav-status .loc{opacity:.75}.v4-nav .nav-status .clock{font-family:var(--font-m);color:var(--ink);opacity:.85;font-variant-numeric:tabular-nums;font-size:10.5px}.v4-nav .nav-status .colon{color:var(--amb);font-style:normal}.v4-nav .nav-status .sep{color:var(--amb);opacity:.55}.v4-nav .nav-status .sign{--neon:var(--acc);font-family:var(--font-m);text-transform:uppercase;align-items:baseline;gap:6px;display:inline-flex}.v4-nav .nav-status .sign .lit{letter-spacing:.22em;color:#eafff7;font-size:11px;font-style:normal;font-weight:600;animation:3.6s ease-in-out infinite v4-sign}.v4-nav .nav-status .sign b{letter-spacing:.14em;color:var(--muted);opacity:.8;font-size:8.5px;font-weight:400}@keyframes v4-sign{0%,to{text-shadow:0 0 4px color-mix(in srgb, var(--neon) 80%, transparent), 0 0 11px color-mix(in srgb, var(--neon) 55%, transparent), 0 0 21px color-mix(in srgb, var(--neon) 30%, transparent)}50%{text-shadow:0 0 6px color-mix(in srgb, var(--neon) 95%, transparent), 0 0 17px color-mix(in srgb, var(--neon) 72%, transparent), 0 0 33px color-mix(in srgb, var(--neon) 45%, transparent)}}.v4-nav .nav-mobile{padding:1.25rem var(--pad) 1.5rem;background:rgba(var(--bg-rgb), .92);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex-direction:column;gap:1.1rem;display:flex}.v4-nav .nav-mobile button{font-family:var(--font-m);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:none;font-size:12px}.v4-nav .nav-mobile button.on{color:var(--ink)}.v4-nav .nav-mobile button b{color:var(--amb);margin-right:6px;font-weight:400}.v4 .kn-boot{z-index:200;position:fixed;inset:0}.v4 .kn-boot-plate{background:var(--bg);clip-path:inset(0%);will-change:clip-path;position:absolute;inset:0}.v4 .kn-boot-sig{width:min(90%,720px);height:124px;margin-inline:auto;position:absolute;bottom:50%;left:0;right:0}.v4 .kn-boot-sig text{font-family:var(--font-rock-salt), cursive;fill:#0000;stroke:var(--ink);stroke-width:1px;stroke-dasharray:1400;stroke-dashoffset:1400px;font-size:64px}.v4 .kn-boot-meta{justify-content:center;position:absolute;top:calc(50% + 36px);left:0;right:0}.v4 .kn-boot-axis{pointer-events:none;height:120px;margin-top:-60px;position:absolute;top:50%;left:0;right:0}.v4 .kn-boot-axis svg{width:100%;height:120px;display:block;overflow:visible}.v4 .kn-boot-axis path{fill:none;stroke:var(--acc);stroke-width:1px;stroke-linejoin:round;filter:drop-shadow(0 0 7px #2ee6a8b3)}.v4 .kn-boot-head,.v4 .kn-boot-spark{opacity:0;will-change:transform;background:#eafff7;border-radius:50%;position:absolute;top:60px;left:5%}.v4 .kn-boot-head{width:6px;height:6px;margin:-3px 0 0 -3px;box-shadow:0 0 12px 3px #2ee6a8d9,0 0 30px 10px #2ee6a847}.v4 .kn-boot-spark{width:10px;height:10px;margin:-5px 0 0 -5px;box-shadow:0 0 22px 7px #2ee6a8e6,0 0 64px 22px #2ee6a852}.v4 .kn-mark{width:0;position:absolute;top:50%}.v4 .kn-mark .hit{pointer-events:auto;cursor:pointer;width:52px;height:92px;position:absolute;top:-16px;left:-26px}.v4 .kn-mark .tk{background:rgba(var(--ink-rgb), .14);width:1px;height:8px;transition:background-color .35s,height .35s,top .35s,box-shadow .35s;position:absolute;top:-4px;left:-.5px}.v4 .kn-mark.on .tk{background:var(--acc);height:14px;top:-7px;box-shadow:0 0 8px #2ee6a88c}.v4 .kn-mark.now .tk{background:#eafff7;height:21px;top:-10.5px;box-shadow:0 0 13px 2px #2ee6a8d9}.v4 .kn-mark .box{white-space:nowrap;flex-direction:column;align-items:center;gap:1px;display:flex;position:absolute;top:13px;left:0;transform:translate(-50%)}.v4 .kn-mark[data-row="1"] .box{top:36px}.v4 .kn-mark[data-row="2"] .box{top:59px}.v4 .kn-mark[data-row="1"]:after,.v4 .kn-mark[data-row="2"]:after{content:"";background:rgba(var(--ink-rgb), .07);width:1px;position:absolute;top:5px;left:-.5px}.v4 .kn-mark[data-row="1"]:after{height:29px}.v4 .kn-mark[data-row="2"]:after{height:52px}.v4 .kn-mark .yr,.v4 .kn-mark .nm{font-family:var(--font-m);font-style:normal;font-weight:400;transition:color .35s}.v4 .kn-mark .yr{letter-spacing:.1em;color:rgba(var(--ink-rgb), calc(.34 + var(--lift)));font-variant-numeric:tabular-nums;font-size:9.5px}.v4 .kn-mark .nm{letter-spacing:.09em;text-transform:uppercase;color:rgba(var(--ink-rgb), .2);font-size:8.5px}.v4 .kn-mark.on .yr{color:rgba(var(--ink-rgb), calc(.7 + var(--lift)))}.v4 .kn-mark.on .nm{color:rgba(var(--ink-rgb), calc(.46 + var(--lift)))}.v4 .kn-mark.now .yr{color:var(--ink)}.v4 .kn-mark.now .nm{color:var(--acc)}.v4 .kn-mark.peek .tk{background:#eafff7;height:21px;top:-10.5px;box-shadow:0 0 13px 2px #2ee6a8d9}.v4 .kn-mark.peek .yr{color:var(--ink)}.v4 .kn-mark.peek .nm{color:var(--acc)}.v4 .kn-mark.future .tk{background:rgba(var(--ink-rgb), .1)}.v4 .kn-mark.future .yr,.v4 .kn-mark.future .nm{color:rgba(var(--ink-rgb), .16)}.v4 .kn-mark.future.peek .tk{background:var(--amb);box-shadow:0 0 10px #ffb34799}.v4 .kn-mark.future.peek .yr,.v4 .kn-mark.future.peek .nm{color:var(--amb)}.v4 .kn-future-seg{stroke:rgba(var(--ink-rgb), .14);stroke-width:1px;stroke-dasharray:2 5}.v4 .kn-detail{border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:min(340px,78vw);box-shadow:0 24px 60px #0000008c, 0 1px 0 rgba(var(--ink-rgb), .06) inset;opacity:0;pointer-events:none;text-align:left;will-change:transform, opacity;background:#0f141294;border-radius:12px;padding:15px 17px 16px;position:absolute;bottom:calc(50% + 34px)}.v4 .kn-detail .stem{left:calc(-1 * var(--pull,-50%));background:linear-gradient(to bottom, var(--line-strong), transparent);width:1px;height:18px;margin-left:-.5px;position:absolute;bottom:-18px}.v4 .kn-detail .dy{font-family:var(--font-m);letter-spacing:.04em;color:var(--acc);font-variant-numeric:tabular-nums;font-size:19px;font-weight:500;line-height:1;display:block}.v4 .kn-detail .dl{font-family:var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:rgba(var(--ink-rgb), calc(.62 + var(--lift)));margin-top:7px;font-size:10px;font-weight:400;display:block}.v4 .kn-detail .dn{border-top:1px solid var(--line);font-family:var(--font-b);color:rgba(var(--ink-rgb), calc(.84 + var(--lift)));text-transform:none;letter-spacing:0;margin-top:11px;padding-top:11px;font-size:12.5px;line-height:1.55;display:block}@media (max-width:680px){.v4 .kn-detail{width:min(320px,86vw);transform:translate(-50%);left:50%!important}.v4 .kn-detail .stem{display:none}}@media (max-width:900px){.v4 .kn-mark .box{display:none}.v4 .kn-mark[data-mob="1"] .box{display:flex;top:13px}.v4 .kn-mark[data-row="1"]:after,.v4 .kn-mark[data-row="2"]:after{display:none}}.v4 .kn-boot-skip{text-align:center;opacity:0;text-transform:lowercase;letter-spacing:.2em;color:var(--muted);margin:0;font-size:9.5px;position:absolute;bottom:clamp(22px,6vh,54px);left:0;right:0}.v4 .loader-meta{font-family:var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);align-items:baseline;gap:18px;font-size:11px;display:flex}.v4 .loader-meta b{font-family:var(--font-m);color:var(--ink);text-align:right;min-width:4ch;font-size:13px;font-weight:500}@media (pointer:fine){.v4 .v4-cursor{z-index:9999;pointer-events:none;opacity:0;position:fixed;inset:0}.v4 .v4-cursor>*{will-change:transform;position:absolute;top:0;left:0}.v4 .cur-dot{background:var(--sig);border-radius:50%;width:6px;height:6px}.v4 .cur-ring{width:34px;height:34px}.v4 .cur-core{border:1px solid color-mix(in srgb, var(--sig) 55%, transparent);will-change:transform;border-radius:50%;width:100%;height:100%;transition:background-color .3s,border-color .3s,border-width .3s,border-style .3s;display:block}.v4 .v4-cursor[data-state=grow] .cur-core,.v4 .v4-cursor[data-state=scroll] .cur-core{background:color-mix(in srgb, var(--sig) 12%, transparent);border-color:color-mix(in srgb, var(--sig) 90%, transparent)}.v4 .v4-cursor[data-state=preview] .cur-core,.v4 .v4-cursor[data-state=write] .cur-core,.v4 .v4-cursor[data-state=send] .cur-core{background:var(--sig);border-color:var(--sig)}.v4 .v4-cursor[data-state=filter] .cur-core{border-color:var(--amb);border-width:1.5px}.v4 .v4-cursor[data-state=visit] .cur-core,.v4 .v4-cursor[data-state=github] .cur-core,.v4 .v4-cursor[data-state=top] .cur-core{border-style:dashed;border-width:1.5px;border-color:var(--sig)}.v4 .cur-tag{font-family:var(--font-m);letter-spacing:.08em;background:var(--sig);color:var(--on-acc);white-space:nowrap;text-shadow:none;border-radius:3px 10px 10px;padding:3px 8px;font-size:10px;transition:background-color .3s}}@media (pointer:coarse),(prefers-reduced-motion:reduce){.v4 .v4-cursor{display:none}}.v4 .kn-rail{z-index:95;pointer-events:none;opacity:0;width:13px;position:fixed;top:18vh;bottom:18vh;right:clamp(10px,1.6vw,22px)}.v4 .kn-rail-track,.v4 .kn-rail-fill{width:1px;position:absolute;top:0;bottom:0;left:6px}.v4 .kn-rail-track{background:var(--line-strong)}.v4 .kn-rail-fill{background:var(--sig);box-shadow:0 0 10px color-mix(in srgb, var(--sig) 50%, transparent)}.v4 .kn-rail-cap{width:1px;height:1px;position:absolute;top:0;left:6px}.v4 .kn-rail-cap:before{content:"";background:var(--sig);width:9px;height:1px;position:absolute;left:-4px}.v4 .kn-rail-cap i{font-family:var(--font-m);letter-spacing:.12em;color:var(--sig);text-shadow:none;font-size:9px;font-style:normal;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.v4 .hero{isolation:isolate;align-items:center;min-height:100svh;display:flex;position:relative;overflow:clip}.v4 .hero:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(to bottom, transparent, rgba(var(--bg-rgb), .85));height:30%;position:absolute;bottom:0;left:0;right:0}.v4 .hero-scrim{z-index:-1;pointer-events:none;background:radial-gradient(ellipse 60% 50% at 42% 48%, rgba(var(--bg-rgb), .6) 0%, rgba(var(--bg-rgb), .26) 55%, transparent 80%);position:absolute;inset:0}@media (max-width:680px){.v4 .hero-scrim{background:radial-gradient(ellipse 90% 64% at 50% 46%, rgba(var(--bg-rgb), .72) 0%, rgba(var(--bg-rgb), .4) 60%, transparent 88%)}}.v4 .hero-in{width:100%;padding-top:120px;padding-bottom:150px;position:relative}.v4 .hero-eyebrow{align-items:center;gap:14px;margin-bottom:54px;display:flex}.v4 .hero-eyebrow .rule{background:var(--amb);width:44px;height:1px}.v4 .h1-wrap{padding:.1em .12em;display:inline-block;position:relative}.v4 h1{font-family:var(--font-d);letter-spacing:-.03em;color:var(--ink);font-weight:800;line-height:.96;font-size:clamp(58px,12vw,152px)!important}.v4 .h1-mask{margin-top:-.18em;margin-bottom:-.07em;padding-top:.18em;padding-bottom:.07em;display:block;overflow:hidden}.v4 .h1-line{will-change:transform;display:block}.v4 .fillword{text-shadow:none;display:inline-block;position:relative}.v4 .fillword .w-stroke{color:#0000;-webkit-text-stroke:1px rgba(var(--ink-rgb), .5);display:inline-block}.v4 .fillword .w-fill{color:var(--ink);-webkit-text-stroke:0;white-space:nowrap;display:inline-block;position:absolute;top:0;left:0}@supports not (-webkit-text-stroke:1px black){.v4 .fillword .w-stroke{color:var(--ink)}}.v4 .h1-flash{z-index:2;pointer-events:none;opacity:0;mix-blend-mode:screen;background:radial-gradient(58% 68% at 50% 52%, rgba(var(--ink-rgb), .45), transparent 72%);position:absolute;inset:-6% -3%}.v4 .det{border:1px solid color-mix(in srgb, var(--sig) 85%, transparent);pointer-events:none;text-shadow:none;position:absolute;inset:0}.v4 .det .c{border:2px solid var(--sig);width:16px;height:16px;position:absolute}.v4 .det-scan{opacity:0;pointer-events:none;background:linear-gradient(90deg, transparent, var(--sig), transparent);height:2px;box-shadow:0 0 14px 2px color-mix(in srgb, var(--sig) 40%, transparent);position:absolute;top:0;left:0;right:0}.v4 .det .c.tl{border-bottom:none;border-right:none;top:-2px;left:-2px}.v4 .det .c.tr{border-bottom:none;border-left:none;top:-2px;right:-2px}.v4 .det .c.bl{border-top:none;border-right:none;bottom:-2px;left:-2px}.v4 .det .c.br{border-top:none;border-left:none;bottom:-2px;right:-2px}.v4 .det-tag{font-family:var(--font-m);letter-spacing:.08em;background:var(--sig);color:var(--on-acc);white-space:nowrap;border-radius:3px;padding:3px 9px;font-size:10px;position:absolute;top:-30px;left:-2px}.v4 .det-conf{font-family:var(--font-m);letter-spacing:.08em;background:var(--amb);color:#3a2300;white-space:nowrap;border-radius:3px;padding:3px 9px;font-size:10px;position:absolute;top:-30px;right:-2px}.v4 .det-dims{font-family:var(--font-m);letter-spacing:.08em;border:1px solid color-mix(in srgb, var(--sig) 40%, transparent);color:var(--sig);background:var(--bg);white-space:nowrap;border-radius:3px;padding:3px 9px;font-size:10px;position:absolute;bottom:-32px;left:50%;transform:translate(-50%)}.v4 .hero-foot{flex-wrap:wrap;align-items:flex-end;gap:40px;margin-top:64px;display:flex}.v4 .hero-sub{max-width:46ch;color:rgba(var(--ink-rgb), calc(.78 + var(--lift)));font-size:clamp(15px,1.4vw,18px)}.v4 .hero-sub strong{color:var(--ink);font-weight:500}.v4 .hero-ctas{flex-wrap:wrap;gap:14px;margin-left:auto;display:flex}.v4 .btn{font-family:var(--font-m);letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--line-strong);color:var(--ink);background:rgba(var(--bg-rgb), .6);isolation:isolate;cursor:pointer;border-radius:999px;align-items:center;gap:10px;padding:16px 26px;font-size:11px;transition:color .35s,border-color .35s;display:inline-flex;position:relative;overflow:hidden}.v4 .btn:before{content:"";z-index:-1;background:var(--acc);border-radius:inherit;transition:transform .45s cubic-bezier(.65,0,.35,1);position:absolute;inset:0;transform:translateY(102%)}.v4 .btn:hover:before,.v4 .btn:focus-visible:before{transform:translateY(0)}.v4 .btn:hover,.v4 .btn:focus-visible{color:var(--on-acc);border-color:var(--acc);text-shadow:none}.v4 .btn.solid{background:var(--ink);color:var(--bg);border-color:var(--ink);text-shadow:none}.v4 .btn .arr{transition:transform .35s}.v4 .btn:hover .arr{transform:translate(4px)}.v4 .hero-meta{border-top:1px solid var(--line);will-change:clip-path;position:absolute;bottom:0;left:0;right:0}.v4 .hero-meta-in{flex-wrap:wrap;gap:12px 36px;padding-block:16px;display:flex}.v4 .hero-meta-in span{font-family:var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:10px}.v4 .hero-meta-in .spacer{margin-left:auto}.v4 .measure{pointer-events:none;justify-content:center;align-items:center;display:flex;position:relative}.v4 .measure.m1{height:160px}.v4 .measure.m2{height:128px}.v4 .measure .stem{background:var(--amb);transform-origin:top;width:1px;position:absolute;top:0;bottom:0;left:50%}.v4 .measure .cap{background:var(--amb);width:13px;height:1px;position:absolute;left:50%;transform:translate(-50%)}.v4 .measure .cap.t{top:0}.v4 .measure .cap.b{bottom:0}.v4 .measure .lbl{font-family:var(--font-m);letter-spacing:.08em;color:var(--amb);background:var(--bg);text-transform:lowercase;border:1px solid #ffb34759;border-radius:3px;padding:3px 10px;font-size:10px;position:relative}.v4 .marquee{border-block:1px solid var(--line);padding-block:18px;overflow:hidden}.v4 .marquee-track{will-change:transform;width:max-content;display:flex}.v4 .marquee-track ul{flex:none;align-items:center;margin:0;padding:0;list-style:none;display:flex}.v4 .marquee-track li{font-family:var(--font-d);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);align-items:center;font-size:clamp(15px,1.8vw,21px);font-weight:600;display:flex}.v4 .marquee-track li:after{content:"+";color:var(--amb);font-family:var(--font-m);margin-inline:clamp(18px,3vw,40px);font-size:14px}.v4 section{position:relative}.v4 section:not(.hero){scroll-margin-top:88px}.v4 .sec-eyebrow{margin-bottom:14px;display:block}.v4 .sec-head{align-items:baseline;gap:20px;margin-bottom:clamp(34px,5vw,60px);display:flex}.v4 .sec-head h2{font-family:var(--font-d);letter-spacing:-.02em;color:var(--ink);font-size:clamp(32px,5vw,58px);font-weight:700;line-height:1.05}.v4 .sec-head h2 em{color:var(--acc);font-style:normal;display:inline-block}.v4 .sec-head .count{margin-left:auto}.v4 .reg{font-family:var(--font-m);color:var(--amb);opacity:.7;pointer-events:none;font-size:12px;position:absolute}.v4 .reg.tl{top:10px;left:10px}.v4 .reg.tr{top:10px;right:10px}.v4 .reg.bl{bottom:10px;left:10px}.v4 .reg.br{bottom:10px;right:10px}.v4 .about{padding-block:clamp(56px,8vw,96px) 0}.v4 .about-scrim{pointer-events:none;background:linear-gradient(90deg, rgba(var(--bg-rgb), .55) 0%, rgba(var(--bg-rgb), .25) 45%, transparent 72%);position:absolute;inset:0}.v4 .about-grid{grid-template-columns:1.15fr .85fr;align-items:start;gap:clamp(36px,5vw,80px);display:grid}.v4 .lede{font-family:var(--font-d);letter-spacing:-.01em;max-width:26em;color:var(--ink);font-size:clamp(20px,2.4vw,30px);font-weight:500;line-height:1.45}.v4 .lede.lede-2{color:rgba(var(--ink-rgb), calc(.72 + var(--lift)));margin-top:22px;font-size:clamp(17px,1.9vw,23px)}.v4 .lede .rl{color:var(--ink);white-space:nowrap;position:relative}.v4 .lede .rl:after{content:"";border-bottom:1px dashed var(--amb);transform:scaleX(var(--draw));transform-origin:0;position:absolute;bottom:-2px;left:0;right:0}.v4 .lede .rl sup{font-family:var(--font-m);color:var(--amb);margin-left:2px;font-size:.45em}.v4 .rl-notes{gap:8px;margin-top:26px;display:grid}.v4 .rl-notes p{font-family:var(--font-m);letter-spacing:.06em;color:var(--amb);max-width:48ch;font-size:10.5px}.v4 .rl-notes p b{opacity:.65;margin-right:6px;font-weight:500}.v4 .portrait-card{position:relative}.v4 .portrait{aspect-ratio:4/5;border:1px solid var(--line-strong);background:radial-gradient(120% 90% at 70% 10%, #2ee6a824, transparent 55%), radial-gradient(90% 90% at 20% 90%, #ffb34714, transparent 60%), var(--bg2);will-change:clip-path;border-radius:16px;place-items:center;max-width:380px;display:grid;overflow:hidden}.v4 .portrait img{object-fit:cover;width:100%;height:100%;display:block}.v4 .portrait-cap{margin-top:14px}.v4 .skills{margin-top:clamp(44px,6vw,72px)}.v4 .tabs{flex-wrap:wrap;gap:10px;margin-bottom:22px;display:flex}.v4 .tab{isolation:isolate;font-family:var(--font-m);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:rgba(var(--bg-rgb), .5);border:1px solid var(--line-strong);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:10px;transition:color .25s,border-color .25s;position:relative}.v4 .tab:hover{color:var(--ink);border-color:var(--ink)}.v4 .tab-pill{z-index:-1;background:var(--acc);border-radius:999px;position:absolute;inset:-1px}.v4 .tab-label{position:relative}.v4 .tab.on{border-color:var(--acc);color:var(--on-acc);text-shadow:none}.v4 .chips{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.v4 .chip{font-family:var(--font-m);letter-spacing:.06em;color:var(--ink);background:rgba(var(--bg-rgb), .55);border-radius:999px;align-items:center;gap:8px;padding:8px 13px;font-size:11px;transition:color .25s,background .25s,transform .25s;display:inline-flex}.v4 .chip:hover{color:var(--acc);background:rgba(var(--bg-rgb), .72);transform:translateY(-2px)}.v4 .chip .ico{opacity:.92;flex:none;font-size:15px;transition:opacity .25s,transform .25s}.v4 .chip:hover .ico{opacity:1;transform:scale(1.12)}.v4 .chip i{opacity:.85;border-radius:50%;flex:none;width:6px;height:6px}.v4 .spec{background:rgba(var(--bg-rgb), .65);border-radius:12px;margin-top:clamp(44px,6vw,72px);padding:clamp(20px,2.6vw,30px)}.v4 .spec-head{border-bottom:1px solid var(--line);color:rgba(var(--ink-rgb), calc(.62 + var(--lift)));justify-content:space-between;align-items:baseline;padding:0 0 14px;display:flex}.v4 .spec dl{grid-template-columns:repeat(4,1fr);gap:clamp(26px,3.4vw,52px);margin:0;padding-top:clamp(26px,3vw,36px);display:grid}.v4 .spec .cell{padding:0}.v4 .spec dt{font-family:var(--font-m);letter-spacing:.16em;text-transform:uppercase;color:rgba(var(--ink-rgb), calc(.72 + var(--lift)));margin-bottom:10px;padding-top:13px;font-size:10.5px;font-weight:500;position:relative}.v4 .spec dt:before{content:"";background:var(--acc);opacity:.65;width:18px;height:1px;position:absolute;top:0;left:0}.v4 .spec dd{color:rgba(var(--ink-rgb), calc(.85 + var(--lift)));margin:0;font-size:14.5px;line-height:1.55}.v4 .spec dd em{color:var(--acc);font-style:normal}.v4 .work-scrim{pointer-events:none;background:linear-gradient(90deg, rgba(var(--bg-rgb), .66) 0%, rgba(var(--bg-rgb), .44) 46%, rgba(var(--bg-rgb), .14) 100%);position:absolute;inset:0}.v4 .cases{border-top:1px solid var(--line);perspective:1100px;margin:0;padding:0;list-style:none}.v4 .case{isolation:isolate;transform-style:preserve-3d;will-change:transform;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border-left:none;border-right:none;grid-template-columns:110px 1fr auto 56px;align-items:center;gap:24px;padding-block:clamp(20px,3vw,34px);transition:background .3s,padding-left .35s,padding-right .35s;display:grid;position:relative}.v4 .case:before{content:"";z-index:-1;background:rgba(var(--bg-rgb), .9);transform-origin:0;transition:transform .55s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:scaleX(0)}.v4 .case:hover:before,.v4 .case:focus-visible:before{transform:scaleX(1)}.v4 .case:hover,.v4 .case:focus-visible{padding-left:18px;padding-right:6px}.v4 .case .yr{font-family:var(--font-m);letter-spacing:.12em;color:var(--muted);font-size:11px}.v4 .case .ttl{font-family:var(--font-d);letter-spacing:-.02em;color:var(--ink);font-size:clamp(26px,4vw,48px);font-weight:700;line-height:1.05;transition:color .3s}.v4 .case:hover .ttl{color:var(--sig)}.v4 .roll{margin-bottom:-.14em;padding-bottom:.14em;display:block;position:relative;overflow:hidden}.v4 .roll-a,.v4 .roll-b{display:block}.v4 .roll-b{width:100%;position:absolute;top:0;left:0}.v4 .case .desc{font-family:var(--font-b);color:var(--muted);letter-spacing:0;margin-top:6px;font-size:14px;font-weight:400;display:block}.v4 .case .tags{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.v4 .case .tags span{font-family:var(--font-m);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line-strong);white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:10px}.v4 .case .go{border:1px solid var(--line-strong);width:44px;height:44px;color:var(--muted);border-radius:50%;justify-self:end;place-items:center;transition:background .35s,color .35s,border-color .35s;display:grid}.v4 .case:hover .go{background:var(--sig);border-color:var(--sig);color:var(--on-acc);text-shadow:none}.v4 .case-note{text-align:right;padding-block:18px}.v4 .preview{z-index:90;pointer-events:none;opacity:0;clip-path:inset(0% 0% 0% 100%);will-change:transform, clip-path;width:380px;height:300px;position:fixed;top:0;left:0}.v4 .preview .shot{opacity:0;transition:opacity .3s,transform .3s;position:absolute;inset:0;transform:scale(.94)}.v4 .preview .shot.on{opacity:1;transform:scale(1)}.v4 .art,.v4 .art *{text-shadow:none}.v4 .art{background:var(--card);color:var(--card-ink);border-radius:12px;flex-direction:column;height:100%;display:flex;overflow:hidden;box-shadow:0 30px 80px #0000008c,inset 0 2px #ffffff0f}.v4 .art-bar{font-family:var(--font-m);letter-spacing:.1em;text-transform:uppercase;color:var(--card-muted);border-bottom:1px solid #10141214;flex:none;justify-content:space-between;align-items:center;gap:8px;padding:9px 14px;font-size:9px;display:flex}.v4 .art-bar em{align-items:center;gap:6px;font-style:normal;display:flex}.v4 .art-bar i{background:var(--acc-deep);border-radius:50%;flex:none;width:7px;height:7px}.v4 .art-img{object-fit:cover;object-position:top;flex:1;width:100%;height:100%;min-height:0;display:block}.v4 .case .art-inline{display:none}.v4 .lab{padding-block:clamp(72px,9vw,130px) 0}.v4 .lab-grid{perspective:1400px;grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.v4 .lab-card{border:1px solid var(--line-strong);background:rgba(var(--bg-rgb), .85);transform-style:preserve-3d;will-change:transform;color:inherit;border-radius:14px;flex-direction:column;text-decoration:none;transition:border-color .3s;display:flex;overflow:hidden}.v4 .lab-card:hover{border-color:color-mix(in srgb, var(--sig) 50%, transparent)}.v4 .lab-demo{background:#070908;height:210px;position:relative}.v4 .lab-demo canvas{width:100%;height:100%;display:block}.v4 .lab-meta{padding:16px 18px}.v4 .lab-meta h3{font-family:var(--font-d);letter-spacing:-.01em;color:var(--ink);margin-bottom:4px;font-size:17px;font-weight:700}.v4 .lab-meta p{color:var(--muted);font-size:13px}.v4 .lab-card.more{text-align:center;justify-content:center;align-items:center;gap:12px;min-height:210px}.v4 .lab-card.more .plus{font-family:var(--font-m);color:var(--amb);font-size:22px}.v4 .contact{text-align:center;padding-block:clamp(90px,12vw,170px) 0}.v4 .contact-scrim{pointer-events:none;background:radial-gradient(ellipse 55% 40% at 50% 52%, rgba(var(--bg-rgb), .55), transparent 75%), linear-gradient(180deg, transparent 0%, rgba(var(--bg-rgb), .55) 32%, rgba(var(--bg-rgb), .6) 100%);position:absolute;inset:0}.v4 .contact h2{font-family:var(--font-d);letter-spacing:-.025em;color:var(--ink);margin:26px 0 24px;font-size:clamp(42px,8.6vw,112px);font-weight:800;line-height:1}.v4 .c-mask{margin-top:-.18em;margin-bottom:-.12em;padding-top:.18em;padding-bottom:.12em;display:block;overflow:hidden}.v4 .c-lead{display:block}.v4 .fillword.warm .w-stroke{-webkit-text-stroke:1.5px color-mix(in srgb, var(--sig) 75%, transparent)}.v4 .fillword.warm .w-fill{color:var(--sig)}@supports not (-webkit-text-stroke:1px black){.v4 .fillword.warm .w-stroke{color:var(--sig)}}.v4 .contact .hint{color:rgba(var(--ink-rgb), calc(.72 + var(--lift)));max-width:46ch;margin:0 auto 40px;font-size:15px}.v4 .mail{font-family:var(--font-d);letter-spacing:-.01em;border:1px solid var(--line-strong);isolation:isolate;color:var(--ink);background:rgba(var(--bg-rgb), .6);border-radius:999px;align-items:center;gap:14px;padding:18px 34px;font-size:clamp(16px,2.2vw,24px);font-weight:600;text-decoration:none;transition:color .35s,border-color .35s;display:inline-flex;position:relative;overflow:hidden}.v4 .mail:before{content:"";z-index:-1;background:var(--acc);transition:transform .5s cubic-bezier(.65,0,.35,1);position:absolute;inset:0;transform:translateY(102%)}.v4 .mail:hover:before,.v4 .mail:focus-visible:before{transform:translateY(0)}.v4 .mail:hover,.v4 .mail:focus-visible{color:var(--on-acc);border-color:var(--acc);text-shadow:none}.v4 .cform{text-align:left;grid-template-columns:1fr 1fr;gap:26px 24px;max-width:620px;margin:54px auto 0;display:grid}.v4 .fld{gap:8px;display:grid}.v4 .fld.full{grid-column:1/-1}.v4 .fld label{font-family:var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:10px}.v4 .fld input,.v4 .fld textarea{border:none;border-bottom:1px solid var(--line-strong);color:var(--ink);font-family:var(--font-b);resize:vertical;background:0 0;border-radius:0;min-height:38px;padding:8px 2px;font-size:15px;transition:border-color .3s}.v4 .fld textarea{min-height:96px}.v4 .fld input:focus,.v4 .fld textarea:focus{border-bottom-color:var(--acc);outline:none}.v4 .cform .send{grid-column:1/-1;justify-self:end}.v4 .form-note{font-family:var(--font-m);letter-spacing:.08em;color:var(--amb);grid-column:1/-1;min-height:14px;margin:0;font-size:10px}.v4 .socials{flex-wrap:wrap;justify-content:center;gap:26px;margin-top:52px;display:flex}.v4 .socials a{font-family:var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px;text-decoration:none;transition:color .25s;display:inline-block}.v4 .socials a:hover,.v4 .socials a:focus-visible{color:var(--ink)}.v4 .socials a .roll-a,.v4 .socials a .roll-b{transition:transform .5s cubic-bezier(.16,1,.3,1)}.v4 .socials a .roll-b{transform:translateY(100%)}.v4 .socials a:hover .roll-a,.v4 .socials a:focus-visible .roll-a{transform:translateY(-100%)}.v4 .socials a:hover .roll-b,.v4 .socials a:focus-visible .roll-b{transform:translateY(0)}.v4 .foot{border-top:1px solid var(--line);margin-top:clamp(70px,9vw,120px)}.v4 .foot-in{flex-wrap:wrap;align-items:center;gap:12px 36px;padding-block:22px;display:flex}.v4 .foot-in span,.v4 .foot-in button{font-family:var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:0 0;border:none;font-size:10px}.v4 .foot-in button{cursor:pointer;transition:color .25s}.v4 .foot-in button:hover{color:var(--ink)}.v4 .foot-in .era-btn{cursor:pointer;color:var(--muted);opacity:.5;align-items:center;padding:6px 2px;transition:opacity .3s,color .3s;display:inline-flex}.v4 .foot-in .era-btn svg{width:22px;height:8px;overflow:visible}.v4 .foot-in .era-btn svg line{stroke:currentColor;stroke-width:1px;vector-effect:non-scaling-stroke}.v4 .foot-in .era-btn:hover,.v4 .foot-in .era-btn:focus-visible{opacity:1;color:var(--sig)}.v4.kn-chrono{z-index:300;background:rgba(var(--bg-rgb), .93);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--ink);position:fixed;inset:0}.v4 .kn-chrono-head{padding:22px var(--pad);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;display:flex;position:absolute;top:0;left:0;right:0}.v4 .kn-chrono-head button{font-family:var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:baseline;gap:8px;font-size:10px;transition:color .25s;display:inline-flex}.v4 .kn-chrono-head button:hover{color:var(--ink)}.v4 .kn-chrono-head button span{opacity:.6;border:1px solid var(--line-strong);border-radius:3px;padding:2px 4px;font-size:8.5px}.v4 .kn-chrono-line{stroke:var(--acc);stroke-width:1px;filter:drop-shadow(0 0 7px #2ee6a88c)}.v4 .kn-chrono-hint{text-align:center;text-transform:lowercase;letter-spacing:.2em;color:var(--muted);opacity:.7;margin:0;font-size:9.5px;position:absolute;bottom:clamp(22px,6vh,54px);left:0;right:0}.v4 .foot-in .to-top .arr{transition:transform .65s cubic-bezier(.16,1,.3,1);display:inline-block}.v4 .foot-in .to-top:hover .arr,.v4 .foot-in .to-top:focus-visible .arr{transform:rotate(360deg)translateY(-2px)}.v4 .foot-in .grow{margin-left:auto}@media (max-width:980px){.v4 .preview{display:none}.v4 .case{grid-template-columns:1fr auto;grid-template-areas:"meta meta""ttl go""art art";row-gap:14px}.v4 .case .yr{grid-area:meta}.v4 .case .ttl{grid-area:ttl}.v4 .case .tags{display:none}.v4 .case .go{grid-area:go}.v4 .case .art-inline{grid-area:art;max-width:420px;height:280px;display:block}.v4 .about-grid{grid-template-columns:1fr}.v4 .portrait{max-width:320px}.v4 .lab-grid{grid-template-columns:1fr 1fr}.v4 .lab-card.more{grid-column:1/-1;min-height:140px}.v4 .spec dl{grid-template-columns:1fr 1fr}}@media (max-width:680px){.v4 .measure.m1{height:120px}.v4 .measure.m2{height:96px}.v4 .hero-in{padding-top:104px}.v4 .hero-foot{margin-top:48px}.v4 .hero-ctas{width:100%;margin-left:0}.v4 .btn{flex:1;justify-content:center}.v4 .det-tag{font-size:9px;top:-26px}.v4 .det-conf{display:none}.v4 .det-dims{font-size:9px;bottom:-28px}.v4 .hide-s{display:none}.v4 .case .art-inline{max-width:100%}.v4 .lab-grid,.v4 .spec dl{grid-template-columns:1fr}.v4 .case-note{text-align:left}.v4 .cform{grid-template-columns:1fr}.v4-nav .nav-status{margin-left:auto}.v4 .kn-rail{display:none}}@media (prefers-reduced-motion:reduce){.v4 .marquee-track{flex-wrap:wrap;width:auto;animation:none}.v4{transition:none}.v4 .kn-rail{display:none}.v4 .lede .rl:after{transform:scaleX(1)}.v4 .roll-b{display:none}.v4 .preview{clip-path:inset(0%)}.v4 [data-skew]{will-change:auto}.v4-nav .nav-status .sign{animation:none}.v4-nav .brand .grow,.v4-nav .brand .name .ul,.v4-nav .brand .name .ul path{transition:none}}
.v4 .process{padding-top:clamp(80px,10vw,140px)}.v4 .process:before{content:"";pointer-events:none;background:linear-gradient(180deg, transparent, rgba(var(--bg-rgb), .55) 18%, rgba(var(--bg-rgb), .62) 82%, transparent);position:absolute;inset:0}.v4 .tenets{grid-template-columns:repeat(4,1fr);gap:clamp(22px,3vw,40px);margin:0;padding:0;list-style:none;display:grid}.v4 .tenet{--rule:1;padding-top:20px;position:relative}.v4 .tenet:before{content:"";background:var(--line-strong);height:1px;transform:scaleX(var(--rule));transform-origin:0;position:absolute;top:0;left:0;right:0}.v4 .tenet:after{content:"";background:var(--sig);width:100%;height:1px;box-shadow:0 0 10px var(--sig);transform-origin:0;transition:transform .6s cubic-bezier(.16,1,.3,1);position:absolute;top:0;left:0;transform:scaleX(0)}.v4 .tenet:hover:after{transform:scaleX(1)}.v4 .tenet .tn{color:var(--amb);margin-bottom:14px;transition:color .3s;display:block}.v4 .tenet:hover .tn{color:var(--sig)}.v4 .tenet h3{font-family:var(--font-d);letter-spacing:-.01em;color:var(--ink);margin-bottom:12px;font-size:clamp(19px,1.6vw,23px);font-weight:700;line-height:1.15}.v4 .tenet p{color:rgba(var(--ink-rgb), calc(.68 + var(--lift)));font-size:14px;line-height:1.6}.v4 .build{background:linear-gradient(180deg, transparent, rgba(var(--bg-rgb), .7) 12%, rgba(var(--bg-rgb), .7) 88%, transparent);align-items:center;height:100svh;margin-top:clamp(60px,8vw,110px);display:flex;position:relative}.v4 .build-in{grid-template-columns:minmax(250px,.8fr) 1.6fr;align-items:center;gap:clamp(30px,5vw,80px);width:100%;padding-top:64px;display:grid}.v4 .build-kicker{margin-bottom:10px}.v4 .build-pct{font-family:var(--font-d);letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums;margin-bottom:26px;font-size:clamp(64px,8vw,116px);font-weight:800;line-height:.9}.v4 .build-pct i{color:var(--sig);vertical-align:.9em;margin-left:4px;font-size:.42em;font-style:normal}.v4 .bsteps{gap:2px;margin:0 0 22px;padding:0;list-style:none;display:grid}.v4 .bstep{color:var(--muted);opacity:.45;grid-template-columns:28px auto 1fr;align-items:baseline;gap:10px;padding:5px 0;transition:opacity .35s,color .35s,transform .45s cubic-bezier(.16,1,.3,1);display:grid}.v4 .bstep b{color:inherit;font-weight:400}.v4 .bstep .bn{font-family:var(--font-d);font-size:15px;font-weight:600}.v4 .bstep .bs{opacity:0;font-size:12px;transition:opacity .35s,transform .45s cubic-bezier(.16,1,.3,1);transform:translate(-6px)}.v4 .bstep.done{opacity:.8}.v4 .bstep.done b{color:var(--sig)}.v4 .bstep.on{opacity:1;color:var(--ink);transform:translate(8px)}.v4 .bstep.on b{color:var(--amb)}.v4 .bstep.on .bs{opacity:.7;transform:none}.v4 .build-skip{border:1px solid var(--line-strong);cursor:pointer;color:var(--muted);background:0 0;border-radius:999px;padding:9px 16px;transition:color .3s,border-color .3s,opacity .4s}.v4 .build-skip:hover,.v4 .build-skip:focus-visible{color:var(--ink);border-color:var(--sig)}.v4 .build-skip[data-hidden]{opacity:0;pointer-events:none}.v4 .build-main{gap:18px;display:grid}.v4 .stage{perspective:1400px;height:min(510px,58svh);text-shadow:none;position:relative}.v4 .stage-flash{opacity:0;pointer-events:none;z-index:5;background:radial-gradient(circle,#f4fffa80,#0000 60%);position:absolute;inset:-10%}.v4 .stack{--rx:56;--rz:-38;width:0;height:0;transform-style:preserve-3d;transform:rotateX(calc(var(--rx) * 1deg)) rotateZ(calc(var(--rz) * 1deg));position:absolute;top:50%;left:50%}.v4 .pl{--z:0;--w:320px;--h:210px;left:calc(var(--w) / -2);top:calc(var(--h) / -2);width:var(--w);height:var(--h);transform:translateZ(calc(var(--z) * 1px));transform-style:preserve-3d;border-radius:10px;position:absolute}.v4 .pl .code{font-family:var(--font-m);color:#f0f4f1cc;white-space:pre;margin:0;padding:18px 20px;font-size:11px;line-height:1.75}.v4 .pl .code .row{display:block}.v4 .pl .code b{color:var(--amb);font-weight:500}.v4 .pl .code i{color:var(--sig);font-style:normal}.v4 .pl .code em{color:#8ff0c7;margin-left:8px;font-style:normal}.v4 .pl-0{--edge:1;background:#101512e0}.v4 .pl-0:before{content:"";border-radius:inherit;border:1px solid color-mix(in srgb, var(--sig) 60%, transparent);clip-path:inset(0 calc((1 - var(--edge)) * 100%) calc((1 - var(--edge)) * 100%) 0);position:absolute;inset:0}.v4 .pl-1{background:#141c19e6;border:1px solid #35d6e666}.v4 .pl-2{background:var(--card);box-shadow:0 30px 60px -30px #000c}.v4 .pl-ai{background:color-mix(in srgb, var(--sig) 7%, transparent);border:1px solid color-mix(in srgb, var(--sig) 55%, transparent);box-shadow:0 0 34px -8px color-mix(in srgb, var(--sig) 50%, transparent)}.v4 .build[data-live="1"] .pl-ai{box-shadow:none;background:0 0;border-color:#0000;transition:all .4s}.v4 .pl-tag{letter-spacing:.16em;color:var(--muted);white-space:nowrap;font-size:9px;position:absolute;bottom:-22px;left:0}.v4 .ok-badge{width:20px;height:20px;color:var(--on-acc);background:var(--sig);box-shadow:0 0 14px var(--sig);border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid;position:absolute;top:-9px;right:-9px}.v4 .spec-line{background:var(--sig);width:320px;height:1px;box-shadow:0 0 8px var(--sig);position:absolute;top:-105px;left:-160px}.v4 .spec-cap{text-transform:none;letter-spacing:.02em;width:320px;color:var(--ink);font-size:12px;position:absolute;top:-130px;left:-160px}.v4 .pl-2{border-radius:6px}.v4 .slip{--ink-ai:#0b8f68;border-radius:inherit;color:var(--card-ink);background:linear-gradient(#1014120b 1px,#0000 1px) 0 0/10px 10px,linear-gradient(90deg,#1014120b 1px,#0000 1px) 0 0/10px 10px,#f3f5f1;position:absolute;inset:0;overflow:hidden}.v4 .slip>*{position:absolute}.v4 .slip .skel{background:#dfe5e1;border-radius:3px}.v4 .slip .k1{width:80px;height:7px;top:14px;left:18px}.v4 .slip .k2{width:96px;height:36px;top:46px;left:18px}.v4 .slip .k3{width:74px;height:18px;top:112px;left:18px}.v4 .slip .k4{width:140px;height:100px;top:44px;left:162px}.v4 .slip .k5{width:150px;height:7px;top:186px;left:18px}.v4 .slip-head{letter-spacing:.16em;color:var(--card-muted);border-bottom:1px solid #10141224;justify-content:space-between;padding-bottom:8px;font-size:8.5px;display:flex;top:10px;left:18px;right:18px}.v4 .slip-head span:first-child{color:var(--card-ink)}.v4 .slip-tk{font-family:var(--font-d);letter-spacing:-.045em;font-size:46px;font-weight:800;line-height:1;top:40px;left:16px}.v4 .slip-nm{letter-spacing:.14em;color:var(--card-muted);font-size:7.5px;top:92px;left:18px}.v4 .slip-px{gap:3px;display:grid;top:110px;left:18px}.v4 .slip-px b{font-family:var(--font-m);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:20px;font-weight:500}.v4 .slip-px i{letter-spacing:.08em;color:#138a5e;font-size:8.5px;font-style:normal}.v4 .slip-chart,.v4 .ai-chart{width:140px;height:100px;position:absolute;top:44px;left:162px;overflow:visible}.v4 .slip-chart .gl{stroke:#1014121f;stroke-width:.6px;stroke-dasharray:2 2}.v4 .slip-chart .cdl line{stroke-width:.9px}.v4 .slip-chart .cdl.up line{stroke:#138a5e}.v4 .slip-chart .cdl.up rect{fill:#138a5e}.v4 .slip-chart .cdl.dn line{stroke:#c2410c}.v4 .slip-chart .cdl.dn rect{fill:#f3f5f1;stroke:#c2410c;stroke-width:.9px}.v4 .slip-chart .now{stroke:#10141259;stroke-width:.6px;stroke-dasharray:1 2}.v4 .slip-foot{letter-spacing:.14em;color:var(--card-muted);border-top:1px solid #10141224;padding-top:8px;font-size:7.5px;bottom:10px;left:18px;right:18px}.v4 .slip-stamp{color:#c2410c;mix-blend-mode:multiply;background:#f3f5f199;border:2px solid #c2410c;border-radius:4px;justify-items:center;gap:1px;padding:5px 10px 4px;display:grid;top:46px;left:146px;transform:rotate(-8deg);-webkit-mask-image:radial-gradient(circle at 30% 40%,#000 55%,#000000b8 100%);mask-image:radial-gradient(circle at 30% 40%,#000 55%,#000000b8 100%)}.v4 .slip-stamp b{font-family:var(--font-d);letter-spacing:.12em;text-transform:uppercase;font-size:13px;font-weight:800;line-height:1}.v4 .slip-stamp i{letter-spacing:.12em;font-size:7px;font-style:normal}.v4 .build[data-live="1"] .stack,.v4 .build[data-live="1"] .pl{transform-style:flat;transform:none}.v4 .ai-cone{fill:#0b8f6824;stroke:#0b8f6873;stroke-width:.6px}.v4 .ai-proj{fill:none;stroke:#0b8f68;stroke-width:1.2px;stroke-dasharray:3 2}.v4 .ai-dot{fill:#0b8f68}.v4 .ai-actual{fill:none;stroke:#c2410c;stroke-width:1.4px}.v4 .ai-note{font-family:var(--font-s);color:#0b8f68;white-space:nowrap;font-size:15px;font-weight:600;line-height:1;position:absolute;top:147px;left:176px;transform:rotate(-3deg)}.v4 .ai-arrow{width:30px;height:22px;position:absolute;top:128px;left:270px;overflow:visible}.v4 .ai-arrow path{fill:none;stroke:#0b8f68;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.v4 .ai-conf{letter-spacing:.14em;color:#0b8f68;align-items:center;gap:6px;font-size:7.5px;display:inline-flex;position:absolute;bottom:9px;right:18px}.v4 .ai-conf .ticks{gap:2px;display:inline-flex}.v4 .ai-conf .ticks i{background:#0b8f6840;width:3px;height:8px}.v4 .ai-conf .ticks i.on{background:#0b8f68}.v4 .pl-ai{border-radius:6px}.v4 .chrome{--live:0;background:#0c0f0d;border:1px solid #ffffff14;border-radius:12px;width:344px;height:262px;margin-top:-145px;margin-left:-172px;position:absolute;top:50%;left:50%;box-shadow:0 40px 80px -30px #000000e6,0 0 0 1px #0006}.v4 .chrome-bar{align-items:center;gap:6px;height:34px;padding:0 12px;display:flex}.v4 .chrome-bar>i{background:var(--line-strong);border-radius:50%;width:7px;height:7px}.v4 .chrome-bar .url{text-transform:none;letter-spacing:.04em;color:#8b958d;background:#ffffff0f;border-radius:999px;margin-left:10px;padding:3px 10px;font-size:9.5px}.v4 .chrome-bar .live{opacity:var(--live);color:var(--sig);align-items:center;gap:6px;margin-left:auto;font-size:9px;display:inline-flex}.v4 .chrome-bar .live em{background:var(--sig);width:6px;height:6px;box-shadow:0 0 8px var(--sig);border-radius:50%}.v4 .build[data-live="1"] .chrome-bar .live em{animation:1.6s ease-in-out infinite kn-live}@keyframes kn-live{50%{opacity:.25}}.v4 .blog{text-transform:none;letter-spacing:.02em;height:132px;padding:12px 0;font-size:11.5px;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0,#000 22px);mask-image:linear-gradient(#0000 0,#000 22px)}.v4 .blog-line{white-space:nowrap;text-overflow:ellipsis;height:22px;color:rgba(var(--ink-rgb), calc(.75 + var(--lift)));line-height:22px;overflow:hidden}.v4 .blog-line b{min-width:52px;color:var(--amb);font-weight:400;display:inline-block}.v4 .blog-line em{color:var(--sig);font-style:normal}@media (max-width:1100px){.v4 .tenets{grid-template-columns:1fr 1fr}}@media (max-width:860px){.v4 .build-in{grid-template-columns:1fr;align-content:center;gap:14px}.v4 .build-pct{margin-bottom:10px;font-size:56px}.v4 .bsteps{grid-template-columns:none;grid-auto-flow:column;justify-content:start;gap:4px;margin-bottom:0}.v4 .bstep{grid-template-columns:auto;gap:6px;padding:0;transform:none}.v4 .bstep.on{transform:none}.v4 .bstep .bn,.v4 .bstep .bs{display:none}.v4 .bstep.on .bn{font-size:13px;display:inline}.v4 .bstep.on{grid-auto-flow:column}.v4 .build-kicker{display:none}.v4 .build-skip{justify-self:start;padding:6px 12px;font-size:10px}.v4 .stage{height:44svh}.v4 .blog{height:92px;font-size:10.5px}}@media (max-width:600px){.v4 .tenets{grid-template-columns:1fr}}.v4 .stage{--fit:1}.v4 .rig{scale:var(--fit);position:absolute;inset:0}.v4 .sysmap{--mx:0;--mz:0;--ms:1;width:0;height:0;transform:scale(calc(var(--fit) * var(--ms))) rotateX(calc(var(--mx) * 1deg)) rotateZ(calc(var(--mz) * 1deg));transform-style:preserve-3d;position:absolute;top:50%;left:50%}.v4 .sm-edges{position:absolute;top:-150px;left:-360px;overflow:visible}.v4 .sm-e path{fill:none;stroke-linecap:round}.v4 .sm-e .base{stroke:rgba(var(--ink-rgb), .2);stroke-width:1px;stroke-dasharray:1}.v4 .sm-e .flow{stroke:var(--sig);stroke-width:1.6px;stroke-dasharray:.03 .11;animation:2.6s linear infinite kn-flow}.v4 .sm-e.c3 .flow{animation-duration:2.2s}.v4 .sm-e.c4 .flow{animation-duration:1.8s}.v4 .sm-e.feed .base{stroke-dasharray:.01 .012}.v4 .sm-e.loop .flow,.v4 .sm-e.feed .flow{stroke:var(--amb);animation-duration:3.4s}@keyframes kn-flow{to{stroke-dashoffset:-.14px}}.v4 .sm-n{text-align:center;text-shadow:none;justify-items:center;gap:2px;padding:5px 6px;line-height:1.15;display:grid;position:absolute}.v4 .sm-n b{font-family:var(--font-m);letter-spacing:.02em;color:var(--ink);font-size:10.5px;font-weight:600}.v4 .sm-n i{font-family:var(--font-m);letter-spacing:.04em;color:var(--muted);white-space:nowrap;font-size:8.5px;font-style:normal}.v4 .sm-n.src{text-align:right;justify-items:end;padding-right:10px}.v4 .sm-n.src:after{content:"";background:rgba(var(--ink-rgb), .55);border-radius:50%;width:6px;height:6px;margin-top:-3px;position:absolute;top:50%;right:-3px}.v4 .sm-n.proc:before,.v4 .sm-n.proc:after{content:"";background:rgba(var(--ink-rgb), .45);width:6px;height:1px;position:absolute;top:50%}.v4 .sm-n.proc:before{left:-2px}.v4 .sm-n.proc:after{right:-2px}.v4 .sm-n.db .cyl{width:40px;height:30px;margin-bottom:3px;overflow:visible}.v4 .sm-n.db .cyl ellipse,.v4 .sm-n.db .cyl path{fill:rgba(var(--ink-rgb), .06);stroke:var(--sig);stroke-width:1.2px}.v4 .sm-n.db .cyl .mid{fill:none;opacity:.5}.v4 .sm-n.ai{background:color-mix(in srgb, var(--sig) 14%, transparent);box-shadow:0 0 22px -6px color-mix(in srgb, var(--sig) 60%, transparent);border-radius:999px}.v4 .sm-n.ai b{color:var(--sig)}.v4 .sm-n.serve{background:rgba(var(--ink-rgb), .07);border-radius:6px}.v4 .sm-cap{white-space:nowrap;position:absolute;top:-168px;left:-360px}.v4 .sm-lbl{letter-spacing:.12em;color:var(--amb);white-space:nowrap;font-size:8px;position:absolute}.v4 .sm-lbl.loop{top:70px;left:52px}.v4 .sm-lbl.feed{top:136px;left:-6px}.v4 .ws{--d-ink:#dfe4df;--d-dim:#7c867e;--d-faint:#4c554e;--d-rule:#ffffff14;--d-amb:#ffb347;--d-up:#3ccf95;--d-dn:#ef7a5a;width:0;height:0;color:var(--d-ink);font-family:var(--font-m);font-variant-numeric:tabular-nums;text-shadow:none;position:absolute;top:50%;left:50%}.v4 .ws>div{position:absolute}.v4 .ws-k{border-bottom:1px solid var(--d-rule);letter-spacing:.16em;text-transform:uppercase;color:var(--d-dim);justify-content:space-between;margin-bottom:5px;padding-bottom:4px;font-size:8px;display:flex}.v4 .ws-k em{letter-spacing:.06em;color:var(--d-faint);font-style:normal}.v4 .ws-fn{letter-spacing:.06em;border-bottom:1px solid var(--d-rule);align-items:stretch;width:714px;height:24px;font-size:9px;display:flex;top:-147px;left:-394px}.v4 .ws-fn .mark{letter-spacing:.16em;text-transform:uppercase;color:var(--d-amb);align-items:center;margin-right:4px;padding-right:14px;font-weight:600;display:flex}.v4 .ws-fn .fk{color:var(--d-dim);align-items:center;gap:5px;padding:0 10px;display:flex}.v4 .ws-fn .fk i{color:var(--d-faint);font-size:7.5px;font-style:normal}.v4 .ws-fn .fk.on{color:#0c0f0d;background:var(--d-ink)}.v4 .ws-fn .fk.on i{color:#0c0f0d;opacity:.55}.v4 .ws-fn .meta{color:var(--d-faint);align-items:center;margin-left:auto;display:flex}.v4 .ws-heat{width:222px;height:220px;top:-113px;left:-394px}.v4 .heat{background:var(--d-rule);border:1px solid var(--d-rule);grid-template-columns:repeat(4,1fr);grid-auto-rows:22.5px;gap:1px;display:grid}.v4 .heat i{background:#0c0f0d;justify-content:space-between;align-items:center;padding:0 5px 3px;font-size:7.5px;font-style:normal;display:flex;position:relative}.v4 .heat i b{color:var(--d-ink);font-weight:600}.v4 .heat i span.up{color:var(--d-up)}.v4 .heat i span.dn{color:var(--d-dn)}.v4 .heat i:before{content:"";background:var(--d-faint);width:1px;height:4px;position:absolute;bottom:2px;left:50%}.v4 .heat .bar{height:2px;position:absolute;bottom:3px}.v4 .heat .bar.up{background:var(--d-up);transform-origin:0;left:50%}.v4 .heat .bar.dn{background:var(--d-dn);transform-origin:100%;right:50%}.v4 .heat i.sel{box-shadow:inset 0 0 0 1px var(--d-amb);background:#ffb34714}.v4 .heat i.sel b{color:var(--d-amb)}.v4 .ws-cons{width:148px;top:-113px;left:172px}.v4 .cb{padding-top:12px;position:relative}.v4 .cb-row{height:15px;color:var(--d-dim);grid-template-columns:34px 1fr 30px;align-items:center;font-size:7.5px;display:grid}.v4 .cb-row .vl{text-align:right;color:var(--d-ink)}.v4 .cb-row .vl.ok{color:var(--d-up);font-size:7px}.v4 .cb-trk{height:100%;position:relative}.v4 .cb-row:not(.axis) .cb-trk:before{content:"";background:var(--d-rule);height:1px;position:absolute;top:50%;left:0;right:0}.v4 .cb .rng{border-inline:1px solid var(--d-dim);background:#dfe4df24;height:5px;margin-top:-2.5px;position:absolute;top:50%}.v4 .cb .pt{background:var(--d-ink);border-radius:50%;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;position:absolute;top:50%}.v4 .cb .brk{border:1px solid var(--d-up);border-top:none;height:4px;margin-top:-2px;position:absolute;top:50%}.v4 .cb-row.call .nm,.v4 .cb-row.call .vl{color:var(--d-amb)}.v4 .cb .dia{background:var(--d-amb);width:7px;height:7px;margin:-3.5px 0 0 -3.5px;position:absolute;top:50%;rotate:45deg}.v4 .cb-row.axis{height:16px}.v4 .cb .tk{background:var(--d-faint);width:1px;height:3px;position:absolute;top:0}.v4 .cb .tk.maj{background:var(--d-dim);height:5px}.v4 .cb .tk b{color:var(--d-faint);font-size:6.5px;font-weight:400;position:absolute;top:5px;left:50%;translate:-50%}.v4 .cb-act{background:var(--d-dn);transform-origin:50% 0;width:1px;height:62px;position:absolute;top:10px}.v4 .cb-act em{white-space:nowrap;color:#0c0f0d;background:var(--d-dn);padding:1px 3px;font-size:6.5px;font-style:normal;position:absolute;bottom:100%;left:50%;translate:-50%}.v4 .ws-ledger{width:148px;top:16px;left:172px}.v4 .ws-ledger .lr{height:16px;color:var(--d-dim);grid-template-columns:26px 30px 1fr 1fr 10px;align-items:center;font-size:8.5px;display:grid}.v4 .ws-ledger .lr .id{color:var(--d-faint)}.v4 .ws-ledger .lr b{color:var(--d-ink);font-weight:600}.v4 .ws-ledger .lr .res,.v4 .ws-ledger .lr .mk{text-align:right;position:relative}.v4 .ws-ledger .lr i{font-style:normal}.v4 .ws-ledger .lr .wait{color:var(--d-faint);position:absolute;right:0}.v4 .ws-ledger .mk.hit{color:var(--d-up)}.v4 .ws-ledger .mk.miss{color:var(--d-dn)}.v4 .ws-ledger .lr.now{color:var(--d-ink);box-shadow:inset 2px 0 0 var(--d-amb);margin-left:-5px;padding-left:5px}.v4 .ws-tape{border-top:1px solid var(--d-rule);letter-spacing:.04em;align-items:center;gap:10px;width:714px;height:18px;font-size:8px;display:flex;top:119px;left:-394px}.v4 .tape-lbl{letter-spacing:.16em;text-transform:uppercase;color:#0c0f0d;background:var(--d-amb);padding:2px 6px;font-size:7.5px}.v4 .tape-win{flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000);mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000)}.v4 .tape-run{width:max-content;animation:38s linear infinite kn-tape;display:flex}.v4 .tape-set{gap:28px;padding-right:28px;display:flex}.v4 .tape-set em{white-space:nowrap;color:var(--d-dim);font-style:normal}.v4 .tape-set em.fresh{color:var(--d-up)}@keyframes kn-tape{to{transform:translate(-50%)}}.v4 .tape-ver{color:var(--d-faint)}.v4 .build[data-live="1"] .pl-2,.v4 .build[data-live="1"] .pl-ai{transition:rotate .6s cubic-bezier(.22,1.28,.46,1);rotate:-1.2deg}.v4 .slip-tape{opacity:0;background:#ece2c48c;width:64px;height:18px;margin-left:-32px;transition:opacity .3s .2s;position:absolute;top:-9px;left:50%;rotate:2deg;box-shadow:0 1px 2px #00000040}.v4 .build[data-live="1"] .slip-tape{opacity:1}.v4 .build[data-live="1"] .pl-2{box-shadow:0 14px 26px -16px #000000e6}.v4 .chrome-bar .feed{letter-spacing:.12em;color:#6f7a72;align-items:center;gap:7px;margin-left:auto;font-size:8.5px;display:inline-flex}.v4 .chrome-bar .feed svg{width:48px;height:12px;overflow:hidden}.v4 .chrome-bar .feed path{fill:none;stroke:#ffb347;stroke-width:1.1px;stroke-linejoin:round;opacity:calc(.35 + var(--live) * .65)}.v4 .build[data-live="1"] .chrome-bar .feed path{animation:1.4s linear infinite kn-scope}@keyframes kn-scope{to{transform:translate(-48px)}}.v4 .chrome-bar .feed b{color:#dfe4df;opacity:calc(.4 + var(--live) * .6);font-weight:500}.v4 .ws-tape{top:211px}.v4 .ws-band{border-top:1px solid var(--d-rule);grid-template-columns:230px 230px 226px;justify-content:space-between;width:714px;height:84px;padding-top:7px;display:grid;top:121px;left:-394px}.v4 .ws-band .ws-k{border-bottom:none;margin-bottom:3px;padding-bottom:0}.v4 .ws-band .ws-k em.amb{color:var(--d-amb)}.v4 .ws-band .keys{letter-spacing:.06em;color:var(--d-faint);gap:12px;font-size:7px;display:flex}.v4 .bd-flow svg{width:230px;height:46px;display:block}.v4 .bd-flow .stream path{fill:none;stroke-linecap:round}.v4 .bd-flow .stream .base{stroke-width:1px;opacity:.25}.v4 .bd-flow .stream .run{stroke-width:1.5px;stroke-dasharray:.05 .07;animation:3s linear infinite kn-flow}.v4 .bd-flow .s2 .run{animation-duration:2.2s}.v4 .bd-flow .s3 .run{animation-duration:4s}.v4 .bd-flow .s1 path{stroke:#5aa7ff}.v4 .bd-flow .s2 path{stroke:#ffb347}.v4 .bd-flow .s3 path{stroke:#3ccf95}.v4 .bd-flow .keys .s1{color:#5aa7ff}.v4 .bd-flow .keys .s2{color:#ffb347}.v4 .bd-flow .keys .s3{color:#3ccf95}.v4 .bd-eval .ev{height:12px;color:var(--d-dim);grid-template-columns:62px 1fr 58px;align-items:center;gap:8px;font-size:7.5px;display:grid}.v4 .bd-eval .trk{--p:var(--c);height:8px;position:relative}.v4 .bd-eval .trk .ln{top:50%;left:calc(min(var(--b), var(--p)) * 100%);width:calc(max(var(--b) - var(--p), var(--p) - var(--b)) * 100%);background:var(--d-faint);height:1px;position:absolute}.v4 .bd-eval .trk .b,.v4 .bd-eval .trk .c{border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px;position:absolute;top:50%}.v4 .bd-eval .trk .b{left:calc(var(--b) * 100%);border:1px solid var(--d-dim)}.v4 .bd-eval .trk .c{left:calc(var(--p) * 100%);background:var(--d-amb)}.v4 .bd-eval .dl{text-align:right;color:var(--d-up)}.v4 .bd-eval .ev.bad .trk .c{border:1.5px solid var(--d-dn);background:0 0;box-shadow:0 0 0 2px #ef7a5a2e}.v4 .bd-eval .ev.bad .dl{color:var(--d-dn);text-transform:uppercase;letter-spacing:.1em}.v4 .bd-pareto svg{width:226px;height:50px;display:block;overflow:visible}.v4 .bd-pareto .bar{fill:#5aa7ff8c}.v4 .bd-pareto .cum{fill:none;stroke:#dfe4df;stroke-width:1px;stroke-dasharray:1}.v4 .bd-pareto .pt{fill:#0c0f0d;stroke:#dfe4df;stroke-width:1px}.v4 .bd-pareto .pct{fill:var(--d-dim);text-anchor:end;font-size:7px}.v4 .bd-pareto .keys{justify-content:space-between;gap:0;width:170px}.v4 .sm-lead{pointer-events:none;position:absolute;top:-150px;left:-360px;overflow:visible}.v4 .sm-lead path{fill:none;stroke:var(--amb);stroke-width:1px;stroke-dasharray:1}.v4 .sm-lead circle{fill:var(--amb)}.v4 .sm-call{border:1px solid var(--amb);background:rgba(var(--bg-rgb), .9);letter-spacing:.06em;white-space:nowrap;color:var(--ink);padding:5px 8px;font-size:8px;line-height:1.45;position:absolute;top:92px;left:224px}.v4 .sm-call b{color:var(--amb);letter-spacing:.14em;text-transform:uppercase;font-weight:600}.v4 .sm-call span{color:var(--muted);display:block}.v4 .cb .brk,.v4 .cb .dia,.v4 .cb-row .vl,.v4 .cb-row .nm{transition:border-color .35s,background .35s,color .35s,box-shadow .35s}.v4 .cb[data-hold="1"] .brk{border-color:var(--d-dn)}.v4 .cb[data-hold="1"] .cb-row.gap .vl{color:var(--d-dn)}.v4 .cb[data-hold="1"] .cb-row.call .nm,.v4 .cb[data-hold="1"] .cb-row.call .vl{color:var(--d-dim);text-transform:uppercase;letter-spacing:.1em}.v4 .cb[data-hold="1"] .dia{box-shadow:inset 0 0 0 1.5px var(--d-dim);background:0 0}.v4 .heat i.ping{animation:.9s ease-out kn-cell-ping}@keyframes kn-cell-ping{0%{background:#ffb34738}to{background:#0c0f0d}}
.v4-nav .nav-tools{align-items:center;gap:4px;display:inline-flex}.v4-nav .nav-tools.snd-slot{margin-left:-4px}@media (max-width:767px){.v4-nav .nav-tools:not(.snd-slot){display:none}}.v4-nav .tool{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;transition:color .25s,border-color .25s,background .25s;display:inline-grid}.v4-nav .tool:hover,.v4-nav .tool:focus-visible{color:var(--ink);border-color:var(--line-strong)}.v4-nav .tool:active{transform:scale(.9)}.v4-nav .tool.inspect{font-family:var(--font-m);letter-spacing:-.04em;font-size:10.5px}.v4-nav .tool.inspect.on{color:var(--on-acc);background:var(--acc);border-color:var(--acc);box-shadow:0 0 14px color-mix(in srgb, var(--acc) 50%, transparent)}.v4-nav .snd .bars{align-items:center;gap:2px;height:12px;display:inline-flex}.v4-nav .snd .bars i{background:currentColor;border-radius:1px;width:2px;height:2px;transition:height .3s cubic-bezier(.16,1,.3,1)}.v4-nav .snd.on{color:var(--acc)}.v4-nav .snd.on .bars i{transform-origin:50%;height:12px;animation:1.1s ease-in-out infinite kn-eq}.v4-nav .snd.on .bars i:nth-child(2){animation-duration:.9s;animation-delay:-.35s}.v4-nav .snd.on .bars i:nth-child(3){animation-duration:1.3s;animation-delay:-.7s}.v4-nav .snd.on .bars i:nth-child(4){animation-duration:1s;animation-delay:-.2s}@keyframes kn-eq{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.v4-nav .nav-status .sign{cursor:pointer;font:inherit;font-family:var(--font-m);text-transform:uppercase;color:inherit;background:0 0;border:none;padding:4px 0}.v4-nav .nav-status .sign .lit:after{content:"→";vertical-align:bottom;width:0;color:var(--amb);text-shadow:none;transition:width .3s cubic-bezier(.16,1,.3,1);display:inline-block;overflow:hidden}.v4-nav .nav-status .sign:hover .lit:after,.v4-nav .nav-status .sign:focus-visible .lit:after{width:1.4em}.v4-nav .nav-status .thm{margin-left:4px}.v4 .brief{grid-column:1/-1;gap:18px;padding-bottom:8px;display:grid}.v4 .brief-head{color:var(--sig);justify-content:space-between;align-items:center;display:flex}.v4 .brief-prog{gap:4px;display:inline-flex}.v4 .brief-prog i{background:var(--line-strong);border-radius:1px;width:18px;height:2px;transition:background .35s,box-shadow .35s}.v4 .brief-prog i.on{background:var(--sig);box-shadow:0 0 8px var(--sig)}.v4 .brief-q{border:none;min-width:0;margin:0;padding:0}.v4 .brief-q legend{font-family:var(--font-m);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;padding:0;font-size:10px}.v4 .brief-q legend small{font-size:inherit;opacity:.6;text-transform:none;letter-spacing:.04em}.v4 .chips-row{flex-wrap:wrap;gap:8px;display:flex}.v4 .bchip{border:1px solid var(--line-strong);background:rgba(var(--bg-rgb), .55);color:rgba(var(--ink-rgb), calc(.8 + var(--lift)));font-family:var(--font-b);cursor:pointer;border-radius:999px;align-items:center;gap:0;padding:8px 14px;font-size:13px;transition:color .25s,border-color .25s,background .25s,gap .35s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.22,1.28,.46,1);display:inline-flex}.v4 .bchip:hover,.v4 .bchip:focus-visible{border-color:color-mix(in srgb, var(--sig) 60%, transparent);color:var(--ink)}.v4 .bchip:active{transform:scale(.94)}.v4 .bchip .ck{width:0;transition:width .35s cubic-bezier(.16,1,.3,1);display:inline-grid;overflow:hidden}.v4 .bchip .ck svg{width:12px;height:12px}.v4 .bchip .ck path{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:12;stroke-dashoffset:12px;transition:stroke-dashoffset .35s ease-out .1s}.v4 .bchip.on{color:var(--on-acc);background:var(--sig);border-color:var(--sig);text-shadow:none;box-shadow:0 0 18px -4px var(--sig);gap:7px;transform:scale(1.03)}.v4 .bchip.on .ck{width:12px}.v4 .bchip.on .ck path{stroke-dashoffset:0}.v4 .brief-sum{text-transform:none;letter-spacing:.03em;color:rgba(var(--ink-rgb), calc(.75 + var(--lift)));background:rgba(var(--ink-rgb), .04);border-radius:8px;min-height:40px;padding:10px 14px;font-size:11.5px}.v4 .brief-sum b{color:var(--amb);margin-right:8px;font-weight:400}.v4[data-inspect] .v4-dots{background-image:linear-gradient(#2ee6a812 1px,#0000 1px),linear-gradient(90deg,#2ee6a812 1px,#0000 1px);background-size:28px 28px}.v4[data-inspect] .v3-grain{opacity:0}.v4[data-inspect] [data-comp]{outline-offset:-1px;outline:1px dashed #2ee6a82e}.ki-root{z-index:150;pointer-events:none;text-shadow:none;position:fixed;inset:0}.ki-root .ki-box{will-change:transform;background:#2ee6a806;border:1px solid #2ee6a88c;position:absolute;top:0;left:0}.ki-root .ki-name,.ki-root .ki-dims{font-family:var(--font-m);letter-spacing:.02em;white-space:nowrap;padding:4px 6px;font-size:10px;line-height:1;position:absolute}.ki-root .ki-name{color:var(--on-acc);background:#2ee6a8;top:-1px;left:-1px}.ki-root .ki-dims{color:#2ee6a8;background:rgba(var(--bg-rgb), .85);font-variant-numeric:tabular-nums;border:1px solid #2ee6a866;bottom:-1px;right:-1px}.ki-root .ki-scan{opacity:0;background:#2ee6a8;height:2px;position:absolute;top:-2%;left:0;right:0;box-shadow:0 0 24px 6px #2ee6a873}.ki-root .ki-xh{position:absolute;top:0;left:0}.ki-root .ki-xh .h,.ki-root .ki-xh .v{background:#ffb34773;position:absolute}.ki-root .ki-xh .h{width:200vw;height:1px;left:-100vw}.ki-root .ki-xh .v{width:1px;height:200vh;top:-100vh}.ki-root .ki-xh span{font-family:var(--font-m);color:#ffb347;background:rgba(var(--bg-rgb), .85);white-space:pre;padding:3px 6px;font-size:10px;position:absolute;top:10px;left:12px}.ki-root .ki-hud{background:rgba(var(--bg-rgb), .9);white-space:nowrap;border:1px solid #2ee6a866;border-radius:999px;padding:8px 14px;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.ki-root .ki-hud b{color:#2ee6a8;font-weight:500}@media (pointer:coarse){.ki-root .ki-xh{display:none}}@media (prefers-reduced-motion:reduce){.v4-nav .snd.on .bars i{animation:none}}
.v4{--red:var(--amb);--red-ink:#2a1a04}.v4 .guides{pointer-events:none;position:absolute;inset:0;overflow:hidden}.v4 .guides-in{max-width:1320px;height:100%;padding-inline:var(--pad);gap:clamp(12px,2vw,24px);margin-inline:auto;display:grid}.v4 .guides i{border-inline:1px solid rgba(var(--ink-rgb), .028);background:linear-gradient(180deg, rgba(var(--ink-rgb), .012), transparent 70%);height:100%;display:block}@media (max-width:760px){.v4 .guides i:nth-child(n+5){display:none}.v4 .guides-in{grid-template-columns:repeat(4,1fr)!important}}.v4 .spec-w{position:relative}.v4 .sp-ov{pointer-events:none;opacity:0;z-index:2;text-shadow:none;transition:opacity .45s;position:absolute;inset:0}.v4 .spec-w[data-drawn] .sp-ov{opacity:.5}.v4 .spec-w[data-drawn]:hover .sp-ov,.v4 .spec-w[data-drawn]:focus-within .sp-ov{opacity:1}.v4 .spec-w[data-drawn] .sp-note{opacity:0;transition:opacity .35s}.v4 .spec-w[data-drawn]:hover .sp-note{opacity:1}.v4 .sp-hd{background:var(--red);width:5px;height:5px;position:absolute}.v4 .sp-hd.tl{top:-3px;left:-3px}.v4 .sp-hd.tr{top:-3px;right:-3px}.v4 .sp-hd.bl{bottom:-3px;left:-3px}.v4 .sp-hd.br{bottom:-3px;right:-3px}.v4 .sp-ov:before{content:"";border:1px solid color-mix(in srgb, var(--red) 55%, transparent);opacity:0;transition:opacity .3s;position:absolute;inset:0}.v4 .spec-w:hover .sp-ov:before{opacity:1}.v4 .sp-chip{font-family:var(--font-m);letter-spacing:.04em;white-space:nowrap;color:var(--red-ink);background:var(--red);gap:8px;padding:3px 7px;font-size:10px;line-height:1.2;display:inline-flex;position:absolute;bottom:calc(100% + 6px);left:-3px}.v4 .sp-chip b{font-weight:600}.v4 .sp-chip em{font-variant-numeric:tabular-nums;opacity:.8;font-style:normal}.v4 .sp-note{border-left:1px solid var(--red);width:max-content;max-width:200px;font-family:var(--font-m);letter-spacing:.02em;color:rgba(var(--ink-rgb), calc(.75 + var(--lift)));padding-left:9px;font-size:10px;line-height:1.5;position:absolute;top:0;left:calc(100% + 18px)}.v4 .sp-dim{place-items:center;display:grid;position:absolute}.v4 .sp-dim i{background:var(--red);position:absolute}.v4 .sp-dim i:before,.v4 .sp-dim i:after{content:"";background:var(--red);position:absolute}.v4 .sp-dim em{font-family:var(--font-m);font-variant-numeric:tabular-nums;color:var(--red);background:var(--bg);padding:0 5px;font-size:10px;font-style:normal;position:relative}.v4 .sp-w{height:12px;top:calc(100% + 12px);left:0;right:0}.v4 .sp-w i{transform-origin:0;height:1px;top:50%;left:0;right:0}.v4 .sp-w i:before,.v4 .sp-w i:after{width:1px;height:9px;top:-4px}.v4 .sp-w i:before{left:0}.v4 .sp-w i:after{right:0}.v4 .sp-h{width:12px;top:0;bottom:0;left:calc(100% + 12px)}.v4 .sp-h i{transform-origin:50% 0;width:1px;top:0;bottom:0;left:50%}.v4 .sp-h i:before,.v4 .sp-h i:after{width:9px;height:1px;left:-4px}.v4 .sp-h i:before{top:0}.v4 .sp-h i:after{bottom:0}.v4 .sp-h em{writing-mode:vertical-rl;padding:5px 0}.v4 .sp-base{opacity:0;background:repeating-linear-gradient(180deg, transparent 0, transparent calc(var(--lh,32px) - 1px), color-mix(in srgb, var(--red) 35%, transparent) calc(var(--lh,32px) - 1px), color-mix(in srgb, var(--red) 35%, transparent) var(--lh,32px));transition:opacity .4s;position:absolute;inset:0}.v4 .spec-w.is-type:hover .sp-base{opacity:1}.v4 .sp-xh{--x:50%;--y:50%;opacity:0;position:absolute;inset:0;overflow:hidden}.v4 .sp-xh .v,.v4 .sp-xh .h{background:color-mix(in srgb, var(--red) 70%, transparent);position:absolute}.v4 .sp-xh .v{width:1px;top:0;bottom:0;left:var(--x)}.v4 .sp-xh .h{height:1px;left:0;right:0;top:var(--y)}.v4 .sp-xh em{left:calc(var(--x) + 8px);top:calc(var(--y) + 8px);font-family:var(--font-m);color:var(--red-ink);background:var(--red);white-space:nowrap;padding:2px 5px;font-size:10px;font-style:normal;position:absolute}.v4 .h-spec{display:inline-block}.v4 .h-spec .sp-note{top:6px}.v4 .h-spec .sp-chip{left:auto;right:-3px}.v4 .portrait-spec{max-width:380px}.v4 .portrait-spec+.portrait-cap{margin-top:40px}.v4 .portrait-spec .sp-note{border-left:none;border-right:1px solid var(--red);text-align:right;max-width:190px;padding:0 9px 0 0;inset:auto 0 calc(100% + 6px) auto}.v4 .about-grid>div:first-child>.spec-w .sp-note{border-left:none;border-right:1px solid var(--red);text-align:right;padding:0 9px 0 0;inset:auto 0 calc(100% + 6px) auto}.v4 .about-grid{padding-top:26px}.v4 .build .pl-tag{color:var(--red-ink);background:var(--red);letter-spacing:.1em;padding:3px 7px;bottom:-26px}.v4 .bd-red{pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.v4 .bd-hd{background:var(--red);width:5px;height:5px;position:absolute}.v4 .bd-hd.tl{top:-186px;left:-405px}.v4 .bd-hd.tr{top:-186px;left:325px}.v4 .bd-hd.bl{top:232px;left:-405px}.v4 .bd-hd.br{top:232px;left:325px}.v4 .bd-chip{letter-spacing:.04em;text-transform:none;white-space:nowrap;color:var(--red-ink);background:var(--red);gap:8px;padding:3px 7px;font-size:10px;display:inline-flex;position:absolute;top:-224px;left:-405px}.v4 .bd-chip b{font-weight:600}.v4 .bd-chip em{opacity:.8;font-style:normal}.v4 .bd-note{border-left:1px solid var(--red);letter-spacing:.02em;text-transform:none;white-space:nowrap;color:rgba(var(--ink-rgb), calc(.75 + var(--lift)));padding-left:9px;font-size:10px;position:absolute;top:-202px;left:-405px}.v4 .bd-dim{place-items:center;display:grid;position:absolute}.v4 .bd-dim i{background:var(--red);position:absolute}.v4 .bd-dim i:before,.v4 .bd-dim i:after{content:"";background:var(--red);position:absolute}.v4 .bd-dim em{letter-spacing:.04em;color:var(--red);background:var(--bg);padding:0 5px;font-size:10px;font-style:normal;position:relative}.v4 .bd-dim.w{width:730px;height:12px;top:248px;left:-402px}.v4 .bd-dim.w i{transform-origin:0;height:1px;top:50%;left:0;right:0}.v4 .bd-dim.w i:before,.v4 .bd-dim.w i:after{width:1px;height:9px;top:-4px}.v4 .bd-dim.w i:before{left:0}.v4 .bd-dim.w i:after{right:0}.v4 .bd-dim.h{width:12px;height:418px;top:-183px;left:342px}.v4 .bd-dim.h i{transform-origin:50% 0;width:1px;top:0;bottom:0;left:50%}.v4 .bd-dim.h i:before,.v4 .bd-dim.h i:after{width:9px;height:1px;left:-4px}.v4 .bd-dim.h i:before{top:0}.v4 .bd-dim.h i:after{bottom:0}.v4 .bd-dim.h em{writing-mode:vertical-rl;padding:5px 0}@media (max-width:860px){.v4 .bd-note{display:none}}.v4 .services{padding-block:clamp(90px,11vw,150px) clamp(60px,8vw,110px)}.v4 .services:before{content:"";pointer-events:none;background:linear-gradient(180deg, transparent, rgba(var(--bg-rgb), .6) 12%, rgba(var(--bg-rgb), .66) 88%, transparent);position:absolute;inset:0}.v4 .svcs{margin:0 0 clamp(70px,9vw,120px);padding:0;list-style:none}.v4 .svc{--plot:1;isolation:isolate;grid-template-columns:44px 76px minmax(0,1.2fr) minmax(0,1fr) auto;align-items:center;gap:clamp(14px,2.2vw,30px);padding:26px 0;display:grid;position:relative}.v4 .svc:before{content:"";background:var(--line-strong);height:1px;transform:scaleX(var(--plot));transform-origin:0;position:absolute;top:0;left:0;right:0}.v4 .svc:last-child:after{content:"";background:var(--line-strong);height:1px;transform:scaleX(var(--plot));transform-origin:0;position:absolute;bottom:0;left:0;right:0}.v4 .svc-body:before{content:"";z-index:-1;background:linear-gradient(90deg, color-mix(in srgb, var(--sig) 7%, transparent), transparent 70%);transform-origin:0;transition:transform .6s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:scaleX(0)}.v4 .svc:hover .svc-body:before{transform:scaleX(1)}.v4 .svc-n{color:var(--amb)}.v4 .svc-g{width:64px;height:48px;overflow:visible}.v4 .svc-g path{fill:none;stroke:rgba(var(--ink-rgb), .5);stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;vector-effect:non-scaling-stroke;transition:stroke .3s}.v4 .svc:hover .svc-g path{stroke:var(--sig)}.v4 .svc-g path.lens{fill:var(--bg)}.v4 .svc-t{font-family:var(--font-d);letter-spacing:-.015em;color:var(--ink);font-size:clamp(20px,2vw,27px);font-weight:700;line-height:1.1;transition:translate .5s cubic-bezier(.16,1,.3,1)}.v4 .svc:hover .svc-t{translate:8px}.v4 .svc-d{color:rgba(var(--ink-rgb), calc(.66 + var(--lift)));max-width:46ch;margin-top:6px;font-size:14px;line-height:1.55}.v4 .svc-tags{flex-wrap:wrap;gap:6px;display:flex}.v4 .svc-tags i{font-style:normal;font-family:var(--font-m);letter-spacing:.08em;background:rgba(var(--ink-rgb), .05);color:var(--muted);padding:4px 8px;font-size:10px}.v4 .svc-go{white-space:nowrap;border:1px solid var(--line-strong);background:rgba(var(--bg-rgb), .5);color:var(--ink);cursor:pointer;border-radius:999px;padding:10px 16px;transition:color .3s,border-color .3s,background .3s}.v4 .svc-go span{color:var(--amb);transition:transform .4s cubic-bezier(.22,1.28,.46,1);display:inline-block}.v4 .svc-go:hover,.v4 .svc-go:focus-visible{border-color:var(--sig);background:var(--sig);color:var(--on-acc);text-shadow:none}.v4 .svc-go:hover span{color:inherit;transform:translate(4px)}.v4 .cta-spec{margin-top:30px}.v4 .cta-spec .sp-note{border-left:none;border-right:1px solid var(--red);padding:0 9px 0 0;inset:auto 0 calc(100% + 6px) auto}.v4 .cta-band{background:linear-gradient(rgba(var(--ink-rgb), .025) 1px, transparent 1px) 0 0 / 24px 24px, linear-gradient(90deg, rgba(var(--ink-rgb), .025) 1px, transparent 1px) 0 0 / 24px 24px, rgba(var(--bg-rgb), .78);grid-template-columns:1fr auto;grid-template-areas:"k k""h b""p b";align-items:end;column-gap:40px;padding:clamp(40px,6vw,80px) clamp(24px,5vw,70px);display:grid;position:relative}.v4 .cta-k{grid-area:k;margin-bottom:16px}.v4 .cta-band h3{font-family:var(--font-d);letter-spacing:-.03em;color:var(--ink);grid-area:h;font-size:clamp(34px,5.4vw,72px);font-weight:800;line-height:1}.v4 .cta-band h3 em{color:var(--sig);font-style:normal}.v4 .cta-p{max-width:54ch;color:rgba(var(--ink-rgb), calc(.7 + var(--lift)));grid-area:p;margin-top:18px;font-size:15px}.v4 .cta-btn{grid-area:b}.v4 .brief[data-ping]{animation:1.2s cubic-bezier(.16,1,.3,1) kn-ping}@keyframes kn-ping{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--sig) 60%, transparent)}to{box-shadow:0 0 0 26px #0000}}.v4 .brief{border-radius:10px}.v4 .draft-hud{z-index:90;letter-spacing:.1em;text-transform:none;color:var(--muted);opacity:0;pointer-events:none;font-variant-numeric:tabular-nums;text-shadow:0 0 6px rgba(var(--bg-rgb), .95), 0 0 14px rgba(var(--bg-rgb), .8);gap:16px;padding:7px 0;font-size:9.5px;display:flex;position:fixed;bottom:16px;right:clamp(40px,4vw,60px)}.v4 .draft-hud b{color:var(--ink);min-width:2.6em;font-weight:500;display:inline-block}.v4 .hud-skip{font:inherit;letter-spacing:.08em;color:var(--ink);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:none;padding:4px 2px;font-size:11px;position:absolute;bottom:calc(100% + 10px);right:4px}.v4 .hud-skip[data-on="1"]{pointer-events:auto}.v4 .hud-skip span{color:var(--sig);transition:transform .4s cubic-bezier(.22,1.28,.46,1);display:inline-block}.v4 .hud-skip:hover span{transform:translateY(3px)}@media (min-width:1024px) and (pointer:fine){.v4 .build-skip{display:none}}.v4 .draft-hud[data-off]{visibility:hidden}@media (max-width:1023px),(pointer:coarse){.v4 .draft-hud{display:none}}@media (max-width:1100px){.v4 .svc{grid-template-columns:36px 64px minmax(0,1fr) auto}.v4 .svc-tags{display:none}}@media (max-width:700px){.v4 .svc{grid-template-columns:30px minmax(0,1fr);grid-template-areas:"n body""n go";align-items:start;row-gap:14px}.v4 .svc-n{grid-area:n;padding-top:4px}.v4 .svc-g{display:none}.v4 .svc-body{grid-area:body}.v4 .svc-go{grid-area:go;justify-self:start}.v4 .cta-band{grid-template-columns:1fr;grid-template-areas:"k""h""p""b"}.v4 .cta-btn{justify-self:start;margin-top:26px}.v4 .sp-note,.v4 .sp-h{display:none}}@media (prefers-reduced-motion:reduce){.v4 .spec-w .sp-ov{opacity:.5}}
html[data-theme=light]{--background:#f1f0ea;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=light] body{background:#f1f0ea}[data-theme=light] .v4,[data-theme=light] .v4-nav{--bg:#f1f0ea;--bg2:#e7e6de;--ink:#141714;--muted:#454d47;--lift:.2;--acc:#0b8f68;--acc-deep:#08694c;--amb:#b45309;--line:#1417141a;--line-strong:#14171433;--ink-rgb:20, 23, 20;--bg-rgb:241, 240, 234;--on-acc:#fff;--red-ink:#fff}[data-theme=light] .v4{--sig:#0b8f68}[data-theme=light] .v4[data-zone=process],[data-theme=light] .v4[data-zone=projects],[data-theme=light] .v4[data-zone=services],[data-theme=light] .v4[data-zone=lab]{--sig:#0e7490}[data-theme=light] .v4[data-zone=contact]{--sig:#b45309}[data-theme=light] .v4[data-sent]{--sig:#141714}[data-theme=light] .kn-scene{filter:invert()hue-rotate(180deg)saturate(.85);opacity:.5}[data-theme=light] .v4-content{text-shadow:0 0 2px #f1f0eaf2,0 0 7px #f1f0eabf!important}[data-theme=light] .v4 .svc-tags i,[data-theme=light] .v4 .bchip,[data-theme=light] .v4 .sp-chip,[data-theme=light] .v4 .bd-chip{text-shadow:none}[data-theme=light] .v3-grain{opacity:.35;mix-blend-mode:multiply}[data-theme=light] .v4-nav .nav-status .sign .lit{color:var(--acc);text-shadow:none;animation:none}[data-theme=light] .v4-nav{background:#f1f0eacc}[data-theme=light] .kn-boot,[data-theme=light] .kn-chrono{--bg:#0b0d0c;--bg2:#111512;--ink:#f0f4f1;--muted:#88928b;--acc:#2ee6a8;--amb:#ffb347;--sig:#2ee6a8;--line:#f0f4f114;--line-strong:#f0f4f129;--ink-rgb:240, 244, 241;--bg-rgb:11, 13, 12;--on-acc:#06251a;--lift:0;color:var(--ink)}[data-theme=light] .v4 .pl-0,[data-theme=light] .v4 .pl-1{box-shadow:0 20px 40px -24px #00000073}[data-theme=light] .v4 .build .pl-tag{color:#fff}[data-theme=light] .v4 .bstep.on{color:var(--ink)}.v4-nav .tool.thm .disc{border:1.5px solid;border-radius:50%;width:13px;height:13px;transition:transform .7s cubic-bezier(.22,1.28,.46,1);position:relative;overflow:hidden}.v4-nav .tool.thm .disc:after{content:"";background:currentColor;position:absolute;inset:0 0 0 50%}[data-theme=light] .v4-nav .tool.thm .disc{transform:rotate(180deg)}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}
