:root{--green-400: #2CD892;--green-500: #19B173;--green-600: #139660;--green-900: #053D26;--projects: #304FFE;--tech: var(--green-500);--education: #7C4DFF;--projects-text: #556EFE;--tech-text: var(--tech);--education-text: #885DFF;--bg: #080A0B;--ink: #FFFFFF;--muted: #9BA3A0;--faint: #747B78;--line: #1C2124;--line-2: #161A1C;--line-strong: #2A3033;--card: #0C0F10;--card-line: var(--line);--card-line-hover: var(--line-strong);--media-bg: #000000;--pill-bg: #111517;--lang-text: #7A817E;--button-hover-bg: #0F1315;--action: #0D774C;--action-hover: #095838;--action-active: var(--green-900);--on-action: #FFFFFF;--action-line: var(--green-500);--bg-glass: rgba(8, 10, 11, .86);--nav-text-shadow: 0 1px 2px rgba(0, 0, 0, .35);--hero-dim: rgba(255, 255, 255, .46);--hero-sub: #C9CFCC;--hero-rule: rgba(255, 255, 255, .14);--tag-live-bg: var(--green-900);--tag-live-text: #75E6B8;--tag-beta-bg: #141F33;--tag-beta-text: #9CC2FF;--tag-soon-bg: #14181A;--tag-soon-text: #7C8280;--danger-line: rgba(224, 113, 90, .42);--danger-bg: rgba(224, 113, 90, .1);--danger-text: #FFB8A8;--scrim-header: linear-gradient(180deg, rgba(5, 7, 8, .86) 0%, rgba(5, 7, 8, .55) 45%, rgba(5, 7, 8, 0) 100%);--veil-building: linear-gradient(180deg, rgba(6, 8, 9, .5) 0%, transparent 20%, transparent 62%, rgba(6, 8, 9, .72) 86%, #080A0B 100%), linear-gradient(90deg, rgba(6, 8, 9, .8) 0%, rgba(6, 8, 9, .4) 46%, transparent 76%);--veil-building-narrow: linear-gradient(180deg, rgba(6, 8, 9, .5) 0%, rgba(6, 8, 9, .1) 14%, rgba(6, 8, 9, .58) 40%, rgba(6, 8, 9, .66) 78%, #080A0B 100%);--xray-bg: rgba(5, 8, 11, .86);--xray-line: rgba(255, 255, 255, .82);--xray-dim: rgba(255, 255, 255, .5);--scrim-copy: linear-gradient(90deg, rgba(8, 11, 13, .94), rgba(8, 11, 13, .8) 30%, rgba(8, 11, 13, 0) 56%);--glass-line: rgba(255, 255, 255, .1);--chip: rgba(255, 255, 255, .045);--chip-line: rgba(255, 255, 255, .08);--quad: rgba(44, 216, 146, .14);--glass: rgba(8, 10, 11, .4);--glass-hover: rgba(8, 10, 11, .58);--scrim-end: linear-gradient(90deg, rgba(5, 8, 11, .88), rgba(5, 8, 11, .55) 22%, rgba(5, 8, 11, 0) 36%, rgba(5, 8, 11, 0) 68%, rgba(5, 8, 11, .5) 80%, rgba(5, 8, 11, .82));--scrim-end-tall: linear-gradient(180deg, rgba(5, 8, 11, .2), rgba(5, 8, 11, .1) 26%, rgba(5, 8, 11, .9) 52%, rgba(5, 8, 11, .96));--veil-band: linear-gradient(180deg, rgba(8, 10, 11, .6), transparent 32%, rgba(8, 10, 11, .92));--glow-cta: radial-gradient(38% 46% at 50% 62%, rgba(25, 177, 115, .14), transparent 70%);color-scheme:dark;--font-display: "Saira", ui-sans-serif, system-ui, sans-serif;--font-body: "Inter", "Inter Fallback", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, Menlo, monospace;--u: clamp(1px, min(100vw / 1440, 100vh / 900), 1.5px);--shell: calc(1200 * var(--u));--header-h: calc(62 * var(--u));--band-h: clamp(300px, 46vh, 520px);--ease: cubic-bezier(.2, .8, .3, 1)}.light{--bg: #F5F5F3;--ink: #0C0E0D;--muted: #5C625F;--green-400: #0D774C;--green-600: #0D774C;--card: #FFFFFF;--card-line: #E4E3DE;--card-line-hover: #CFCEC8;--projects-text: var(--projects);--tech-text: #138757;--education-text: var(--education);--action-line: transparent;color-scheme:light}:root{--page-dark: var(--bg);--veil-chapter: linear-gradient(180deg, var(--page-dark) 0%, color-mix(in oklab, var(--page-dark), transparent 4.3%) 12.5%, color-mix(in oklab, var(--page-dark), transparent 15.6%) 25%, color-mix(in oklab, var(--page-dark), transparent 31.6%) 37.5%, color-mix(in oklab, var(--page-dark), transparent 50%) 50%, color-mix(in oklab, var(--page-dark), transparent 68.4%) 62.5%, color-mix(in oklab, var(--page-dark), transparent 84.4%) 75%, color-mix(in oklab, var(--page-dark), transparent 95.7%) 87.5%, transparent 100%)}.light{--fade-in: linear-gradient(180deg, var(--page-dark) 0%, color-mix(in oklab, var(--page-dark), var(--bg) 4.3%) 12.5%, color-mix(in oklab, var(--page-dark), var(--bg) 15.6%) 25%, color-mix(in oklab, var(--page-dark), var(--bg) 31.6%) 37.5%, color-mix(in oklab, var(--page-dark), var(--bg) 50%) 50%, color-mix(in oklab, var(--page-dark), var(--bg) 68.4%) 62.5%, color-mix(in oklab, var(--page-dark), var(--bg) 84.4%) 75%, color-mix(in oklab, var(--page-dark), var(--bg) 95.7%) 87.5%, var(--bg) 100%);--fade-out: linear-gradient(0deg, var(--page-dark) 0%, color-mix(in oklab, var(--page-dark), var(--bg) 4.3%) 12.5%, color-mix(in oklab, var(--page-dark), var(--bg) 15.6%) 25%, color-mix(in oklab, var(--page-dark), var(--bg) 31.6%) 37.5%, color-mix(in oklab, var(--page-dark), var(--bg) 50%) 50%, color-mix(in oklab, var(--page-dark), var(--bg) 68.4%) 62.5%, color-mix(in oklab, var(--page-dark), var(--bg) 84.4%) 75%, color-mix(in oklab, var(--page-dark), var(--bg) 95.7%) 87.5%, var(--bg) 100%)}.ui{--ui-bg: #0f1115;--ui-bg-2: #16181d;--ui-bg-3: #131519;--ui-card: #16181d;--ui-border: #3a3934;--ui-border-2: #262623;--ui-border-strong: #6a6961;--ui-text: #f2f0eb;--ui-text-2: #a8a399;--ui-muted: #8a857c;--ui-accent: #19B173;--ui-accent-fill: #0d774c;--ui-on-accent: #ffffff;--ui-glow: rgba(25, 177, 115, .15);--ui-success: #2bd891;--ui-stop: #ff9c8e;--ui-halo: rgba(43, 216, 145, .05);--ui-folder: #5a8ce8;--ui-folder-bg: rgba(90, 140, 232, .14);--ui-folder-line: rgba(90, 140, 232, .35);--ui-heart: #e06e8c;--ui-face: #0A0A0A;--ui-shadow: 0 30px 80px rgba(0, 0, 0, .5), 0 0 0 1px rgba(255, 255, 255, .06);--ui-platform: #0f1115;--ui-dimmed: #8a857c;--ui-elevated: #16181d;--ui-running: #2BD891;--ui-warning: #f0b441;--ui-wash: #0b2a1e;--ui-selected: rgba(24, 166, 106, .1);--ui-toggle: rgba(24, 166, 106, .12);--ui-personal: rgb(24, 166, 106);--ui-personal-bg: rgba(24, 166, 106, .14);--ui-personal-line: rgba(24, 166, 106, .35);--ui-scrim: rgba(0, 0, 0, .4);--ui-drawer: 0 16px 40px rgba(0, 0, 0, .5);--ui-pill: 0 1px 2px rgba(0, 0, 0, .3);--ui-split: color-mix(in srgb, #ffffff 25%, var(--ui-accent));--ui-mesh: #c9c9c9;--ui-mesh-edge: #4a4a4a;--ui-tone-teal: rgb(45, 178, 178);--ui-tone-amber: rgb(214, 158, 70);--ui-tone-rose: rgb(224, 110, 140);--ui-folder-back: color-mix(in srgb, currentColor 70%, #000000);--ui-menu: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--ui-toast-bg: #000000;--ui-toast-line: #333333;--ui-toast-text: #fcfcfc;--ui-toast-shadow: 0 4px 12px rgba(0, 0, 0, .1);--ui-pointer: #ffffff;--ui-pointer-edge: #000000;--ui-lift: 0 4px 12px rgba(0, 0, 0, .35);--ui-revit-canvas: #282d38;--ui-revit-strip: #2d333e;--ui-revit-tab: #4f5869;--ui-revit-text: #e3e6eb;--ui-revit-text-2: #aab1bd;--ui-revit-bar: #3b3f4a;--ui-revit-icon: #8c93a0;--ui-revit-rule: #363a46}.service{--ink: #FFFFFF;--muted: #C9CFCC;--tone-text: #7B8DFF;--service-ground: #05080B;--service-ground-revit: #282d38;--scrim-top: linear-gradient(180deg, rgba(5, 8, 11, .7) 0%, rgba(5, 8, 11, .44) 8%, rgba(5, 8, 11, .2) 16%, rgba(5, 8, 11, .06) 24%, rgba(5, 8, 11, 0) 32%);--scrim-bottom: linear-gradient(180deg, rgba(5, 8, 11, 0) 34%, rgba(5, 8, 11, .28) 46%, rgba(5, 8, 11, .58) 56%, rgba(5, 8, 11, .8) 68%, rgba(5, 8, 11, .94) 100%);--scrim-up: linear-gradient(180deg, rgba(5, 8, 11, 0) 0, rgba(5, 8, 11, .1) calc(var(--lift) * .25), rgba(5, 8, 11, .32) calc(var(--lift) * .5), rgba(5, 8, 11, .62) calc(var(--lift) * .75), rgba(5, 8, 11, .86) var(--lift), rgba(5, 8, 11, .94) calc(var(--lift) + 48px))}@font-face{font-family:Saira;src:url(/fonts/saira.woff2) format("woff2");font-weight:100 900;font-stretch:75% 125%;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Inter Fallback;src:local("Arial");size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0%}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono.woff2) format("woff2");font-weight:400 500;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;scroll-padding-top:var(--header-h)}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}img,svg,video{display:block;max-width:100%}img,video{height:auto}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--font-display);font-variation-settings:"wdth" 112}.container{width:100%;max-width:var(--shell);margin-inline:auto;padding-inline:calc(32 * var(--u))}.section{padding-block:clamp(80px,9vw,calc(132 * var(--u)))}.section[id]{scroll-margin-top:calc(-1 * var(--header-h))}.light{background:var(--bg);color:var(--ink)}.section-title{margin-top:calc(18 * var(--u));font-size:clamp(28px,4vw,calc(54 * var(--u)));line-height:1.04;font-weight:700;letter-spacing:-.028em;text-transform:uppercase}.sub{max-width:30.3em;margin-top:calc(28 * var(--u));font-size:clamp(15.5px,1.35vw,calc(19 * var(--u)));line-height:1.6;color:var(--hero-sub)}.sub strong{font-weight:600;color:var(--ink)}.cube{flex:none}[data-vertical=projects]{--tone: var(--projects);--tone-text: var(--projects-text)}[data-vertical=tech]{--tone: var(--tech);--tone-text: var(--tech-text)}[data-vertical=education]{--tone: var(--education);--tone-text: var(--education-text)}.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.js .reveal.is-revealed{opacity:1;transform:none}:focus-visible{outline:2px solid var(--green-400);outline-offset:2px}.skip-link{position:absolute;top:8px;left:16px;z-index:200;padding:8px 16px;border-radius:99px;background:var(--action);color:var(--on-action);font-weight:600;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}@media (max-width: 1000px){.container{padding-inline:20px}}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}@media (prefers-reduced-motion: no-preference) and (min-height: 500px){html.js:not(.intro-off){scroll-behavior:auto}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}.fb{position:relative;display:grid;overflow:hidden;border-radius:calc(12 * var(--u));background:var(--media-bg);box-shadow:0 0 0 1px var(--line)}.fb__real{grid-area:1 / 1}.fb__real img{width:100%;object-fit:cover;object-position:50% 62%;transform-origin:62% 60%}.fb__scrim,.fb__art{display:none}.fb__copy{display:grid;justify-items:start;gap:calc(18 * var(--u));padding:calc(24 * var(--u)) calc(20 * var(--u)) calc(28 * var(--u))}.fb__steps{display:flex;gap:calc(14 * var(--u));color:var(--faint);font:500 calc(11.5 * var(--u)) var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.fb__steps>li{padding-top:.7em;border-top:2px solid var(--line-strong)}.fb__steps>:last-child{border-color:var(--tone-text);color:var(--ink)}.fb__tag{grid-area:1 / 1;align-self:end;justify-self:end;margin:calc(12 * var(--u))}.fb__tag>span{color:var(--green-400)}.fb__art{position:relative;grid-area:1 / 2;align-self:stretch;grid-template-rows:minmax(0,1fr) auto;gap:calc(16 * var(--u));padding:calc(36 * var(--u)) calc(42 * var(--u)) calc(36 * var(--u)) 0;opacity:0;transform:scale(.92)}.fb__draw{position:relative;min-height:0}.fb__draw>picture{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.fb__draw img{width:100%;height:100%;object-fit:contain}.fb__params{position:absolute;top:calc(36 * var(--u));right:calc(42 * var(--u));display:grid;gap:.35em;margin:0;font:500 calc(11.5 * var(--u)) / 1.3 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.fb__params>div{display:flex;gap:1em}.fb__params dt{width:8.5em;color:var(--faint)}.fb__params dd{margin:0;color:var(--ink)}.fb__params .fb__flex{color:var(--tone-text)}.fb__flex>span{display:none}.fb__flex>:nth-child(2){display:inline}.fb__more{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(12 * var(--u))}.fb__more>li{display:grid;gap:.5em;padding:.5em .6em .7em;border:1px solid var(--chip-line);border-radius:calc(8 * var(--u));background:var(--chip);color:var(--muted);font:500 calc(11 * var(--u)) / 1.2 var(--font-mono);letter-spacing:.06em;text-align:center;text-transform:uppercase}.fb__more img{width:100%;aspect-ratio:1.5;object-fit:contain}@media (max-width: 999.98px){.fb__art{grid-area:1 / 1;gap:10px;padding:46px 16px 14px}.fb__params{top:16px;right:auto;left:16px;display:flex;gap:1.6em;font-size:10px}.fb__params>:not([data-flex]){display:none}.fb__params>div{gap:.7em}.fb__params dt{width:auto}.fb__more{gap:8px}.fb__more>li{padding:6px}.fb__more span{display:none}.fb__tag{margin:10px;font-size:10px;white-space:nowrap}.fb__steps{flex-wrap:wrap;gap:8px 12px;font-size:9.5px;letter-spacing:0;white-space:nowrap}}@media (max-width: 620px){.fb__real img{aspect-ratio:4 / 3}}@media (min-width: 1000px){.fb{grid-template-columns:minmax(0,40%) minmax(0,1fr);align-items:center;aspect-ratio:2 / 1}.fb__real{position:absolute;top:0;right:0;bottom:0;left:0}.fb__real img{height:100%}.fb__scrim{position:absolute;top:0;right:0;bottom:0;left:0;display:block;background:var(--scrim-copy)}.fb__copy{position:relative;grid-area:1 / 1;align-self:end;padding:0 0 calc(44 * var(--u)) calc(48 * var(--u))}.fb__tag{position:absolute;right:calc(42 * var(--u));bottom:calc(36 * var(--u));margin:0}}.building{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;overflow:hidden;container-type:size;background:var(--media-bg)}.building__box{--fw: 3520;--fh: 1191;--bx: .5882;--bt: .2826;--bb: .7174;--lx0: .5615;--lx1: .6156;--ly0: .3652;--ly1: .65;--lsp: .284;--kb: .72;--a: .238;--h: max(100cqh, 100cqw * var(--fh) / var(--fw));--w: calc(var(--h) * var(--fw) / var(--fh));--left: clamp(100cqw - var(--w), 100cqw - .1427 * max(100cqw, 329.9cqh) - var(--bx) * var(--w), 0px);--top: clamp(100cqh - var(--h), 50cqh - 22 * var(--u) - (var(--bt) + var(--bb)) / 2 * var(--h), 0px);position:absolute;left:var(--left);top:var(--top);width:var(--w);height:var(--h);transform-origin:calc(var(--bx) * 100%) calc((var(--bt) + var(--bb)) / 2 * 100%);transform:scale(1.02);animation:drift 32s ease-in-out infinite alternate}@media (min-width: 1000px) and (min-aspect-ratio: 4/5){.building__box{--span: calc(100cqh - 168 * var(--u));--bH: calc(var(--kb) * min(var(--span), (100cqw - var(--edge)) * .1797 / var(--k)));--h: calc(var(--bH) / (var(--bb) - var(--bt)));--left: calc(var(--edge) + max(var(--a) * (100cqw - var(--edge)), .3872 * var(--bH)) - var(--bx) * var(--w));--top: calc(100cqh - 106 * var(--u) - clamp(6.5cqh, .45 * (var(--span) - var(--bH)), 10cqh) - var(--bb) * var(--h))}}@keyframes drift{to{transform:scale(1.06)}}.building__layer{position:absolute;top:0;right:0;bottom:0;left:0}.building__layer img{width:100%;height:100%}.building__box:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:linear-gradient(var(--media-bg),transparent) top / 100% clamp(0px,8 * var(--top),22%) no-repeat,linear-gradient(90deg,var(--media-bg),transparent) left / clamp(0px,3 * var(--left),15%) 100% no-repeat,linear-gradient(270deg,var(--media-bg) 12%,transparent) right / clamp(0px,3 * (100cqw - var(--left) - var(--w)),7%) 100% no-repeat;pointer-events:none}.building__veil{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--media-bg);opacity:0;pointer-events:none}@keyframes veil{0%{opacity:.7}}@keyframes pull{0%{scale:1.2}}.js .building__veil{animation:veil 1s .1s var(--ease) both paused}.js .building__box{animation:drift 32s ease-in-out infinite alternate,pull 2.6s var(--ease) both paused}.js .building.is-ready .building__veil,.js .building.is-ready .building__box{animation-play-state:running}.building__lit{opacity:0;clip-path:inset(85% 0 0 0)}.building.is-lit .building__lit{opacity:1;clip-path:inset(0);transition:opacity .6s ease-in-out,clip-path 1.7s ease-in-out}.building__lens{--d: clamp(min(190px, 34cqw), 17cqw, 300px);--x0: calc(var(--lx0) * var(--w));--x1: calc(var(--lx1) * var(--w));--y0: max(var(--ly0) * var(--h), var(--header-h) + .3 * var(--d) - var(--top));--room: calc(100cqh - 410px - .2 * var(--d) - var(--top) - var(--y0));--y1: calc(var(--y0) + clamp(0px, var(--room), var(--lsp) * var(--h)));position:absolute;left:0;top:0;width:clamp(0px,999 * var(--room),var(--d));height:clamp(0px,999 * var(--room),var(--d));overflow:hidden;border-radius:50%;opacity:0;-webkit-mask-image:radial-gradient(closest-side,var(--media-bg) 50%,transparent);mask-image:radial-gradient(closest-side,var(--media-bg) 50%,transparent);transition:opacity .8s var(--ease) 2.4s;animation:roam 28s ease-in-out infinite}.building.is-lit .building__lens{opacity:1}.building__sheet{position:absolute;left:0;top:0;width:var(--w);height:var(--h);background:var(--xray-bg);animation:roam-back 28s ease-in-out infinite}@keyframes roam{0%,to{transform:translate(calc(var(--x0) - var(--d) / 2),calc(var(--y0) - var(--d) / 2))}25%{transform:translate(calc(var(--x1) - var(--d) / 2),calc(.6 * var(--y0) + .4 * var(--y1) - var(--d) / 2))}50%{transform:translate(calc(.7 * var(--x0) + .3 * var(--x1) - var(--d) / 2),calc(var(--y1) - var(--d) / 2))}75%{transform:translate(calc(var(--x1) - var(--d) / 2),calc(.25 * var(--y0) + .75 * var(--y1) - var(--d) / 2))}}@keyframes roam-back{0%,to{transform:translate(calc(var(--d) / 2 - var(--x0)),calc(var(--d) / 2 - var(--y0)))}25%{transform:translate(calc(var(--d) / 2 - var(--x1)),calc(var(--d) / 2 - .6 * var(--y0) - .4 * var(--y1)))}50%{transform:translate(calc(var(--d) / 2 - .7 * var(--x0) - .3 * var(--x1)),calc(var(--d) / 2 - var(--y1)))}75%{transform:translate(calc(var(--d) / 2 - var(--x1)),calc(var(--d) / 2 - .25 * var(--y0) - .75 * var(--y1)))}}.building__sheet img,.building__sheet svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.building__sheet svg{fill:none;stroke:var(--xray-line);stroke-width:1.6}.building__sheet text{fill:var(--xray-line);stroke:none;font-family:var(--font-mono);font-size:19px;text-anchor:start;dominant-baseline:central}.building__grid text{font-size:15px;text-anchor:middle}.building__sheet tspan{fill:var(--xray-dim)}@media (min-width: 1000px) and (min-aspect-ratio: 4/5){.building__lens{--d: min(clamp(min(190px, 34cqw), 17cqw, 300px), .58 * var(--bH));--room: 1px;--y1: calc(var(--ly1) * var(--h))}.building.is-led .building__lens{transform:translate(calc(var(--x) * 1px - var(--d) / 2),calc(var(--y) * 1px - var(--d) / 2));animation:none}.building.is-led .building__sheet{transform:translate(calc(var(--d) / 2 - var(--x) * 1px),calc(var(--d) / 2 - var(--y) * 1px));animation:none}}@media not all and (min-width: 1000px) and (min-aspect-ratio: 8/5){.building__level{display:none}}@media (max-aspect-ratio: 3/5){.building__box{--w: max(100cqw, 56.24cqh);--h: calc(var(--w) * 2212 / 1244);--top: calc((100cqh - var(--h)) * .18);left:calc((100cqw - var(--w)) / 2);transform-origin:50% 50%;aspect-ratio:1244 / 2212}.building__lens{--d: clamp(90px, 26cqw, 150px);--lsp: .38;--x0: calc(.5 * var(--w));--x1: calc(.74 * var(--w));--y0: max(.26 * var(--h), var(--header-h) + var(--d) / 2 - var(--top))}.building__sheet svg{display:none}}@supports not (width: 1cqw){.building__box{top:0;right:0;bottom:0;left:0;width:auto;aspect-ratio:auto}.building__layer img{object-fit:cover;object-position:100% 50%}.building__lens{display:none}@media (max-aspect-ratio: 3/5){.building__layer img{object-position:50% 18%}}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:calc(8 * var(--u));height:calc(38 * var(--u));padding:0 calc(18 * var(--u));border:1px solid transparent;border-radius:99px;font:600 calc(13.5 * var(--u)) var(--font-body);transition:all .18s var(--ease)}.btn--lg{height:calc(50 * var(--u));padding:0 calc(26 * var(--u));font-size:calc(15 * var(--u))}.btn--primary{border-color:var(--action-line);background:var(--action);color:var(--on-action)}.btn--primary:hover{background:var(--action-hover)}.btn--primary:active{background:var(--action-active)}.btn--outline{border-color:var(--line-strong);color:var(--ink)}.btn--outline:hover{border-color:var(--muted);background:var(--button-hover-bg)}.cta{position:relative;overflow:hidden;text-align:center}.cta:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--glow-cta)}.cta .container{position:relative}.cta .sub{margin:calc(18 * var(--u)) auto 0}.contact{max-width:calc(680 * var(--u));margin:calc(44 * var(--u)) auto 0;padding:calc(32 * var(--u));border:1px solid var(--line-strong);border-radius:calc(20 * var(--u));background:var(--card);text-align:left}.contact__body{display:grid;gap:calc(18 * var(--u));min-width:0;margin:0;padding:0;border:0;transition:opacity .2s var(--ease)}.contact__row{display:grid;grid-template-columns:1fr 1fr;gap:calc(16 * var(--u))}.contact__field{display:grid;gap:calc(8 * var(--u));min-width:0}.contact__field>span{font-size:calc(12.5 * var(--u));font-weight:500;color:var(--muted)}.contact__field em{font-style:normal;color:var(--faint)}.contact__field input,.contact__field textarea{width:100%;padding:calc(12 * var(--u)) calc(14 * var(--u));border:1px solid var(--line-strong);border-radius:calc(12 * var(--u));background:var(--bg);color:var(--ink);font:calc(15 * var(--u))/1.5 var(--font-body)}.contact__field textarea{display:block;min-height:calc(128 * var(--u));resize:vertical}.contact__field ::placeholder{color:var(--faint)}.contact__field input:focus,.contact__field textarea:focus{border-color:var(--green-500)}.contact__chips{display:flex;flex-wrap:wrap;gap:calc(8 * var(--u))}.contact__chip{position:relative;display:inline-flex}.contact__chip input{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0;cursor:pointer}.contact__chip span{display:inline-flex;align-items:center;height:calc(36 * var(--u));padding:0 calc(14 * var(--u));border:1px solid var(--line-strong);border-radius:calc(99 * var(--u));font-size:calc(13.5 * var(--u));font-weight:500;color:var(--hero-sub);transition:background .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease)}.contact__chip input:checked+span{border-color:var(--green-500);background:var(--tag-live-bg);color:var(--tag-live-text)}.contact__chip input:focus-visible+span{outline:2px solid var(--green-400);outline-offset:2px}.contact__check:empty{display:none}.contact__foot{display:flex;flex-wrap:wrap;align-items:center;gap:calc(14 * var(--u)) calc(18 * var(--u))}.contact .btn{cursor:pointer}.contact__privacy{max-width:36ch;font-size:calc(12.5 * var(--u));line-height:1.5;color:var(--faint)}.contact__privacy a,.contact__error a{text-decoration:underline;text-underline-offset:2px}.contact__error{display:none;padding:calc(12 * var(--u)) calc(14 * var(--u));border:1px solid var(--danger-line);border-radius:calc(12 * var(--u));background:var(--danger-bg);color:var(--danger-text);font-size:calc(14 * var(--u));line-height:1.5}.contact__error a{color:var(--ink)}.contact[data-state=error] .contact__error{display:block}.contact__going,.contact[data-state=sending] .contact__go{display:none}.contact[data-state=sending] .contact__going{display:inline}.contact[data-state=sending] .contact__body{opacity:.6}.contact[data-state=sending] .btn{cursor:progress}.contact__sent{display:none;justify-items:start;gap:calc(10 * var(--u));outline:none}.contact[data-state=sent] .contact__body{display:none}.contact[data-state=sent] .contact__sent{display:grid}.contact__sent svg{width:calc(46 * var(--u));height:calc(46 * var(--u));padding:calc(12 * var(--u));border:1px solid var(--green-500);border-radius:50%;background:var(--tag-live-bg);color:var(--tag-live-text)}.contact__sent p{color:var(--muted)}.contact__sent .contact__sent-title{margin-top:calc(6 * var(--u));font-family:var(--font-display);font-variation-settings:"wdth" 112;font-size:calc(26 * var(--u));font-weight:700;line-height:1.1;text-transform:uppercase;color:var(--ink)}.contact__mail{font-weight:500;color:var(--ink);overflow-wrap:anywhere}.contact__again{padding:0;border:0;background:none;color:var(--green-400);font:500 calc(14 * var(--u)) var(--font-body);text-decoration:underline;text-underline-offset:calc(3 * var(--u));cursor:pointer}@media (max-width: 620px){.contact{margin-top:calc(32 * var(--u));padding:calc(20 * var(--u));border-radius:calc(16 * var(--u))}.contact__row{grid-template-columns:1fr}.contact__foot .btn{width:100%}.contact__privacy{max-width:none}}@supports (color: color-mix(in oklab,red,blue)){#eco{--pad: clamp(80px, 9vw, calc(132 * var(--u)));--fade-h: calc(var(--pad) + 72 * var(--u));position:relative;padding-bottom:calc(var(--pad) + 96 * var(--u));background:var(--fade-out) bottom / 100% var(--fade-h) no-repeat,linear-gradient(var(--bg),var(--bg)) top / 100% calc(100% - var(--fade-h) + 1px) no-repeat,var(--page-dark)}#eco:before{content:"";position:absolute;inset:calc(-1 * var(--pad)) 0 auto;height:calc(2 * var(--pad) - 24 * var(--u));background:var(--fade-in)}@media (prefers-reduced-motion: no-preference) and (min-width: 1000px) and (min-height: 700px){.js:not(.intro-off) #eco:before{content:none}}}.verticals{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(16 * var(--u));margin-top:calc(52 * var(--u))}.vertical{position:relative;overflow:hidden;padding:calc(30 * var(--u)) calc(26 * var(--u)) calc(32 * var(--u));border:1px solid var(--card-line);border-radius:calc(16 * var(--u));background:var(--card)}.vertical:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:var(--tone);opacity:.85}.vertical h3{font-family:var(--font-mono);font-size:calc(10 * var(--u));font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--tone-text)}.vertical__verb{margin:calc(14 * var(--u)) 0 calc(10 * var(--u));font-family:var(--font-display);font-variation-settings:"wdth" 112;font-size:calc(30 * var(--u));font-weight:700;letter-spacing:-.025em}.vertical__text{font-size:calc(14.5 * var(--u));color:var(--muted)}@media (max-width: 1000px){.verticals{grid-template-columns:1fr}}.site-footer{padding:calc(56 * var(--u)) 0 calc(32 * var(--u));border-top:1px solid var(--line-2)}.site-footer__top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:calc(40 * var(--u)) calc(64 * var(--u))}.signature{display:grid;gap:calc(14 * var(--u));align-content:start}.tagline{font-family:var(--font-display);font-variation-settings:"wdth" 110;font-size:calc(14 * var(--u));color:var(--faint)}.site-footer__nav{display:flex;flex-wrap:wrap;gap:calc(32 * var(--u)) calc(64 * var(--u))}.site-footer__nav .kicker{margin-bottom:calc(14 * var(--u))}.site-footer__nav ul{display:grid;gap:calc(10 * var(--u));font-size:calc(13 * var(--u));color:var(--faint)}.site-footer__nav a:hover{color:var(--muted)}.site-footer__legal{margin-top:calc(48 * var(--u));padding-top:calc(24 * var(--u));border-top:1px solid var(--line-2);font-size:calc(12 * var(--u));color:var(--faint)}@media (max-width: 620px){.site-footer__nav{display:grid;grid-template-columns:1fr 1fr;width:100%}.site-footer__contact{grid-column:1 / -1}}.site-header{position:fixed;inset:0 0 auto;z-index:100;display:flex;align-items:center;height:var(--header-h);border-bottom:1px solid transparent;transition:background .3s var(--ease),border-color .3s var(--ease)}.site-header:before{content:"";position:absolute;inset:0 0 auto;z-index:-1;height:190%;background:var(--scrim-header);pointer-events:none;transition:opacity .3s var(--ease)}.site-header.is-scrolled{background:var(--bg-glass);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);border-bottom-color:var(--line)}.site-header.is-scrolled:before{opacity:0}.site-header__inner,.site-header__end{display:flex;align-items:center;gap:calc(22 * var(--u))}.brand{display:flex;align-items:center;gap:calc(9 * var(--u));margin-inline-end:auto}.brand .cube{width:calc(28 * var(--u));height:calc(28 * var(--u));margin:calc(-4.5 * var(--u))}.wordmark{font-family:var(--font-display);font-variation-settings:"wdth" 122;font-size:calc(13 * var(--u));font-weight:700;letter-spacing:.14em;text-transform:uppercase}.site-nav ul{display:flex;gap:calc(22 * var(--u))}.site-nav a{display:block;font-size:calc(13.5 * var(--u));color:var(--muted);text-shadow:var(--nav-text-shadow)}.site-nav a:hover{color:var(--ink)}.site-header .btn{font-weight:400;text-shadow:var(--nav-text-shadow)}.is-scrolled .site-nav a,.is-scrolled .btn{text-shadow:none}.lang ul{display:flex;padding:calc(3 * var(--u));border:1px solid var(--line);border-radius:99px;background:var(--pill-bg)}.lang a{display:block;padding:calc(3 * var(--u)) calc(9 * var(--u));border-radius:99px;font:600 calc(11 * var(--u)) var(--font-body);color:var(--lang-text)}.lang a[aria-current]{background:var(--action);color:var(--on-action)}.menu{display:none}.menu summary{display:grid;place-items:center;width:calc(38 * var(--u));height:calc(38 * var(--u));border:1px solid var(--line);border-radius:50%;background:var(--pill-bg);list-style:none;cursor:pointer}.menu summary::-webkit-details-marker{display:none}.menu svg{width:calc(16 * var(--u));height:calc(16 * var(--u));fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.menu path{transform-box:fill-box;transform-origin:center;transition:transform .25s var(--ease)}.menu[open] path:first-child{transform:translateY(3px) rotate(45deg)}.menu[open] path:last-child{transform:translateY(-3px) rotate(-45deg)}.menu__panel{position:absolute;inset:100% 0 auto;padding:4px calc(32 * var(--u)) 22px;border-bottom:1px solid var(--line);background:var(--bg)}.menu__nav a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:16px}.menu .lang{display:none;margin-top:18px}.menu .lang ul{display:inline-flex}.menu .lang a{padding:6px 14px;font-size:13px}.site-header:has([open]){background:var(--bg);border-bottom-color:var(--line)}@media (max-width: 760px){.site-nav{display:none}.menu{display:block}}@media (max-width: 520px){.site-header__end>.lang{display:none}.menu .lang{display:block}.menu__panel{padding-inline:20px}}@media (max-width: 420px){.site-header__inner,.site-header__end{gap:8px}.site-header .btn{padding:0 12px}.wordmark,.site-header .btn{white-space:nowrap}}@media (max-width: 367.98px){.wordmark{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}.hero{--show: max(.61 * var(--band-h), .11 * 56.25vw + .5 * var(--band-h));--copy: calc(min(100vw, var(--shell)) - 64 * var(--u));--h1: clamp(34px, 3.05vw, calc(46 * var(--u)));position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;min-height:calc(100svh - var(--show));padding-top:calc(96 * var(--u));overflow:hidden;background:var(--media-bg)}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--veil-building)}.hero__copy{position:relative;padding-bottom:calc(42 * var(--u))}.hero h1{font-size:min(var(--copy) / 12.9,var(--h1));line-height:.94;font-weight:700;letter-spacing:-.035em;text-transform:uppercase}.hero__dim{display:block;color:var(--hero-dim)}.hero__actions{display:flex;flex-wrap:wrap;gap:calc(12 * var(--u));margin-top:calc(34 * var(--u))}.vbar{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--hero-rule)}.vbar li{display:grid}.vbar a{position:relative;display:flex;flex-direction:column;gap:calc(4 * var(--u));padding:calc(20 * var(--u)) 0 calc(22 * var(--u))}.vbar li+li a{padding-left:calc(26 * var(--u));border-left:1px solid var(--hero-rule)}.vbar a:before{content:"";position:absolute;top:-1px;left:0;width:0;height:2px;background:var(--tone);transition:width .55s var(--ease)}.vbar a:hover:before{width:100%}.vbar a:focus-visible{outline-offset:-2px}.vbar__name{font-family:var(--font-mono);font-size:calc(10 * var(--u));letter-spacing:.18em;text-transform:uppercase;color:var(--tone-text)}.vbar__verb{font-family:var(--font-display);font-variation-settings:"wdth" 112;font-size:clamp(20px,2vw,calc(27 * var(--u)));font-weight:700;letter-spacing:-.02em}@media (max-width: 620px){.hero{--copy: calc(100vw - 40px) }.vbar li+li a{padding-left:14px}.vbar__verb{font-size:18px}.hero__actions .btn{height:44px;padding:0 18px;font-size:14px}}@media (min-width: 1000px) and (min-aspect-ratio: 4/5){.hero{--edge: calc((100vw - min(100vw, var(--shell))) / 2 + 12.9 * var(--h1) + 72 * var(--u));--k: .2112}.hero:before{background-size:auto,calc(1.6 * var(--edge)) 100%;background-repeat:no-repeat}.hero__copy{max-width:calc(12.9 * var(--h1))}}@media (min-width: 1000px) and (min-aspect-ratio: 8/5){.hero{--k: .292}}@media not all and (min-width: 1000px) and (min-aspect-ratio: 4/5){.hero:before{background:var(--veil-building-narrow)}}.lazy-video{position:relative;height:100%}.lazy-video video{width:100%;height:100%;object-fit:cover}.lazy-video video::-webkit-media-controls{display:none!important}.lib{position:relative;display:flex;flex-direction:column;overflow:hidden;background:var(--ui-bg-3);color:var(--ui-text);font-family:var(--font-body);font-size:calc(13 * var(--u));line-height:calc(20 * var(--u))}.lib>*{flex:none}.lib__icon,.lib__btn{flex:none;display:grid;place-items:center;width:calc(28 * var(--u));height:calc(28 * var(--u));border-radius:calc(4 * var(--u));color:var(--ui-text-2)}.lib__btn{border:1px solid var(--ui-border-2);background:var(--ui-bg-3);color:var(--ui-text)}.lib__head{display:flex;align-items:center;height:calc(48 * var(--u));padding:0 calc(12 * var(--u));border-bottom:1px solid var(--ui-border)}.lib__logo{width:calc(24 * var(--u));height:calc(24 * var(--u))}.lib__title{margin-left:calc(8 * var(--u));font-family:var(--font-display);font-size:calc(15 * var(--u));line-height:calc(22 * var(--u));font-weight:600}.lib__live{width:calc(8 * var(--u));height:calc(8 * var(--u));margin:0 calc(6 * var(--u)) 0 calc(12 * var(--u));border-radius:50%;background:var(--ui-success);animation:lib-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes lib-pulse{50%{opacity:.5}}.lib__status{color:var(--ui-muted);font-size:calc(12 * var(--u));line-height:1;white-space:nowrap}.lib__bar,.lib__path,.lib__actions,.lib__strip{display:flex;align-items:center;border-bottom:1px solid var(--ui-border)}.lib__bar{gap:calc(8 * var(--u));padding:calc(8 * var(--u)) calc(12 * var(--u))}.lib__field{position:relative;flex:1;min-width:0;height:calc(28 * var(--u));overflow:hidden;padding:0 calc(12 * var(--u)) 0 calc(48 * var(--u));border:1px solid var(--ui-border-strong);border-radius:calc(4 * var(--u));background:var(--ui-bg-2);color:var(--ui-muted);line-height:calc(26 * var(--u));white-space:nowrap;text-overflow:ellipsis}.lib__field>.icon{position:absolute;top:calc(5 * var(--u));left:calc(11 * var(--u));color:var(--ui-text-2)}.lib__views{flex:none;display:flex;align-items:center;height:calc(28 * var(--u));padding:calc(4 * var(--u));border-radius:calc(4 * var(--u));background:var(--ui-bg-3);box-shadow:0 0 0 1px var(--ui-border-2);color:var(--ui-text-2)}.lib__views>span{display:grid;place-items:center;width:calc(20 * var(--u));height:calc(20 * var(--u));border:1px solid transparent;border-radius:calc(4 * var(--u))}.lib__views>[data-on]{border-color:var(--ui-border-2);background:var(--ui-bg-2);color:var(--ui-text)}.lib__path{gap:calc(8 * var(--u));height:calc(38.5 * var(--u));padding:0 calc(12 * var(--u));white-space:nowrap}.lib__up{display:grid;place-items:center;width:calc(24 * var(--u));color:var(--ui-muted)}.lib__home{display:flex;align-items:center;gap:calc(4 * var(--u));padding-left:calc(4 * var(--u));font-weight:600;line-height:1}.lib__sep{color:var(--ui-muted);font-size:calc(12 * var(--u))}.lib__scope{display:flex;align-items:center;gap:calc(4 * var(--u));color:var(--ui-muted);font-size:calc(12 * var(--u));font-weight:500}.lib__scope>.icon{margin-left:calc(4 * var(--u))}.lib__dot{width:calc(8 * var(--u));height:calc(8 * var(--u));border-radius:50%;background:var(--ui-success)}.lib__chip{padding:calc(2 * var(--u)) calc(8 * var(--u));border:1px solid var(--ui-folder-line);border-radius:calc(4 * var(--u));background:var(--ui-folder-bg);color:var(--ui-folder);font-weight:600;line-height:calc(19.5 * var(--u))}.lib__actions{gap:calc(8 * var(--u));height:calc(48 * var(--u));padding:0 calc(12 * var(--u))}.lib__add,.lib__sub{display:flex;align-items:center;gap:calc(8 * var(--u));height:calc(28 * var(--u));padding:0 calc(12 * var(--u));border:1px solid var(--ui-border);border-radius:calc(4 * var(--u));font-size:calc(12 * var(--u));line-height:calc(16 * var(--u));font-weight:600;white-space:nowrap}.lib__add{border-color:var(--ui-accent);background:var(--ui-accent-fill);color:var(--ui-on-accent)}.lib__tools{display:flex;gap:calc(8 * var(--u));margin-left:auto}.lib__tools>:last-child{color:var(--ui-stop)}.lib__strip{height:calc(27 * var(--u));padding:0 calc(12 * var(--u))}.lib__check{width:calc(18 * var(--u));height:calc(18 * var(--u));border:1px solid var(--ui-border-strong);border-radius:calc(4 * var(--u));background:var(--ui-bg-2)}.lib__grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:calc(8 * var(--u));overflow:hidden;padding:0 calc(12 * var(--u))}.lib__card{position:relative;padding:calc(4 * var(--u)) calc(4 * var(--u)) calc(9 * var(--u));border:1px solid var(--ui-border-2);border-radius:calc(4 * var(--u));background:var(--ui-bg-2);font-size:calc(12 * var(--u));line-height:calc(16 * var(--u))}.lib__thumb{display:block;overflow:hidden;border-radius:calc(4 * var(--u));background:var(--ui-bg-3)}.lib__thumb img{width:100%;height:auto;aspect-ratio:1}.lib__heart{display:grid;place-items:center;width:calc(28 * var(--u));height:calc(28 * var(--u));border:1px solid var(--ui-border-2);border-radius:50%;background:var(--ui-wash);color:var(--ui-heart)}.lib__heart .icon{fill:currentColor}.lib__card>.lib__heart{position:absolute;top:calc(8 * var(--u));right:calc(8 * var(--u))}.lib__name,.lib__meta{display:block;margin-top:calc(4 * var(--u));overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lib__name{font-weight:600}.lib__meta{color:var(--ui-muted)}.lib__storage{display:flex;align-items:center;justify-content:space-between;height:calc(40 * var(--u));padding:0 calc(12 * var(--u));border-top:1px solid var(--ui-border);color:var(--ui-muted);font-size:calc(11 * var(--u));line-height:1;white-space:nowrap}.lib__meter{display:block;height:calc(4 * var(--u));margin-top:calc(4 * var(--u));border-radius:calc(2 * var(--u));background:linear-gradient(90deg,var(--ui-accent) 24%,var(--ui-bg-2) 24%)}.lib__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--ui-scrim);-webkit-backdrop-filter:blur(calc(2 * var(--u)));backdrop-filter:blur(calc(2 * var(--u)));opacity:0}.lib__detail{position:absolute;top:0;right:0;bottom:0;display:flex;flex-direction:column;width:calc(360 * var(--u));border:1px solid var(--ui-border-2);background:var(--ui-bg-3);box-shadow:var(--ui-drawer);transform:translate(100%);visibility:hidden}.lib__detail>*{flex:none}.lib__detail-head{display:flex;align-items:center;gap:calc(4 * var(--u));height:calc(64 * var(--u));padding:0 calc(12 * var(--u)) calc(6 * var(--u))}.lib__detail-head>.lib__thumb{width:calc(40 * var(--u))}.lib__detail-name{flex:1;min-width:0;padding-left:calc(4 * var(--u));font-weight:600;line-height:calc(17.3 * var(--u))}.lib__detail-name>span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lib__detail-name>:last-child{margin-top:calc(5 * var(--u));color:var(--ui-muted);font-size:calc(11 * var(--u));font-weight:400;line-height:calc(14.7 * var(--u))}.lib__tabs{display:flex;gap:calc(24 * var(--u));height:calc(38 * var(--u));padding:0 calc(12 * var(--u));border-bottom:1px solid var(--ui-border-2);color:var(--ui-text-2)}.lib__tabs>span{padding:calc(8 * var(--u)) 0;border-bottom:2px solid transparent}.lib__tabs>[data-on]{border-bottom-color:var(--ui-accent);color:var(--ui-text);font-weight:600}.lib__overview{flex:1;min-height:0;container-type:size;overflow:hidden;padding:calc(16 * var(--u)) calc(12 * var(--u)) calc(8 * var(--u))}.lib__scroll{display:flex;flex-direction:column}.lib__scroll>*{flex:none}.lib__preview,.lib__select{display:flex;align-items:center;justify-content:center;gap:calc(8 * var(--u));height:calc(28 * var(--u));padding:0 calc(12 * var(--u));border:1px solid var(--ui-border);border-radius:calc(4 * var(--u));font-size:calc(12 * var(--u));font-weight:600}.lib__select{justify-content:space-between;border-color:var(--ui-border-strong);background:var(--ui-bg-2);font-size:calc(13 * var(--u));font-weight:400}.lib__caption{margin:calc(8 * var(--u)) 0 calc(4 * var(--u));color:var(--ui-muted);font-size:calc(12 * var(--u));line-height:calc(16 * var(--u));font-weight:600;letter-spacing:.04em;text-transform:uppercase}.lib__info>p{display:flex;align-items:center;justify-content:flex-end;gap:calc(4 * var(--u));min-height:calc(28 * var(--u));white-space:nowrap}.lib__info>p>:first-child{margin-right:auto;color:var(--ui-muted)}.lib__info>:first-child{margin-top:calc(4 * var(--u))}.lib__folder{display:flex;align-items:center;gap:calc(4 * var(--u));padding:calc(2 * var(--u)) calc(4 * var(--u));border:1px solid var(--ui-folder-line);border-radius:calc(4 * var(--u));background:var(--ui-folder-bg);color:var(--ui-folder);font-size:calc(10 * var(--u))}.lib__hint{margin-bottom:calc(4 * var(--u));color:var(--ui-muted);font-size:calc(10 * var(--u))}.lib__related{display:flex;align-items:center;gap:calc(8 * var(--u));height:calc(50 * var(--u));margin-bottom:calc(4 * var(--u));padding:0 calc(6 * var(--u));border:1px solid var(--ui-border);border-radius:calc(4 * var(--u));font-size:calc(11 * var(--u))}.lib__related>.lib__thumb{flex:none;width:calc(28 * var(--u))}.lib__related span>span{display:block}.lib__related span>:last-child{color:var(--ui-muted);font-size:calc(10 * var(--u))}.lib__load{display:none;margin-top:calc(8 * var(--u));padding:calc(8 * var(--u)) calc(10 * var(--u));border:1px solid var(--ui-border);border-radius:calc(4 * var(--u));font-size:calc(12 * var(--u));line-height:calc(16 * var(--u))}.lib__stages{display:flex;align-items:center;gap:calc(6 * var(--u));font-weight:600}.lib__stages>.icon{color:var(--ui-accent)}.lib__stages>span{display:grid}.lib__stage{grid-area:1 / 1;opacity:0}.lib__track{display:block;height:calc(4 * var(--u));margin-top:calc(8 * var(--u));overflow:hidden;border-radius:calc(2 * var(--u));background:var(--ui-bg-2)}.lib__fill{display:block;height:100%;border-radius:inherit;background:var(--ui-accent);transform-origin:0 50%}.lib__load-text{margin-top:calc(4 * var(--u));color:var(--ui-muted);font-size:calc(11 * var(--u))}.lib__foot{display:flex;gap:calc(4 * var(--u));padding:calc(8 * var(--u)) calc(12 * var(--u));border-top:1px solid var(--ui-border)}.lib__place{flex:1;display:grid;height:calc(28 * var(--u));border:1px solid var(--ui-accent);border-radius:calc(4 * var(--u)) 0 0 calc(4 * var(--u));background:var(--ui-accent-fill);color:var(--ui-on-accent);font-size:calc(12 * var(--u));line-height:calc(16 * var(--u));font-weight:600}.lib__place--menu{flex:none;place-items:center;width:calc(28 * var(--u));margin-left:calc(-4 * var(--u));border-left:0;border-radius:0 calc(4 * var(--u)) calc(4 * var(--u)) 0}.lib__act{grid-area:1 / 1;display:flex;align-items:center;justify-content:center;gap:calc(8 * var(--u))}.lib__act--busy,.lib__act--place{visibility:hidden}@container (max-width: 52em){.lib__title,.lib__home>span,.lib__scope,.lib__add>span,.lib__sub>span{display:none}.lib__live{margin-left:calc(12 * var(--u))}.lib__add,.lib__sub{padding:0 calc(11 * var(--u))}.lib__tools{gap:calc(4 * var(--u))}.lib__field{padding-left:calc(40 * var(--u))}.lib__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lib__detail{width:100%}}@container (max-height: 63em){.lib__storage{display:none}}.ui .icon{flex:none;width:calc(var(--s) * var(--u));height:calc(var(--s) * var(--u))}.panebar{flex:none;display:flex;align-items:center;justify-content:space-between;height:calc(26 * var(--u));padding:0 calc(10 * var(--u));background:var(--ui-revit-strip);color:var(--ui-revit-text);font-size:calc(11 * var(--u));line-height:1}.panebar__x{opacity:.7}.rail{flex:none;display:flex;flex-direction:column;align-items:center;gap:calc(8 * var(--u));width:calc(48 * var(--u));padding:calc(8 * var(--u)) 0 calc(10 * var(--u));border-right:1px solid var(--ui-border);background:var(--ui-bg-2);color:var(--ui-text-2)}.rail__item{position:relative;display:grid;place-items:center;width:calc(32 * var(--u));height:calc(32 * var(--u));border-radius:calc(4 * var(--u))}.rail__item[data-on]{background:var(--ui-wash);color:var(--ui-text)}.rail__dot{position:absolute;top:calc(-4 * var(--u));right:calc(-4 * var(--u));width:calc(8 * var(--u));height:calc(8 * var(--u));border-radius:50%;background:var(--ui-running);box-shadow:0 0 0 calc(5 * var(--u)) var(--ui-halo);opacity:0}.rail__end{display:flex;flex-direction:column;align-items:center;gap:calc(8 * var(--u));margin-top:auto}.rail__avatar{display:grid;place-items:center;width:calc(28 * var(--u));height:calc(28 * var(--u));margin-top:calc(2 * var(--u));border:1px solid var(--ui-accent);border-radius:50%;background:var(--ui-accent-fill);color:var(--ui-on-accent);font-size:calc(12 * var(--u));line-height:calc(16 * var(--u));font-weight:600}.panel{display:flex;flex-direction:column;overflow:hidden;background:var(--ui-bg);color:var(--ui-text);font-family:var(--font-body);font-size:calc(14 * var(--u));line-height:calc(20 * var(--u));text-align:left}.panel__head{flex:none;display:flex;align-items:center;gap:calc(8 * var(--u));height:calc(48 * var(--u));padding:0 calc(12 * var(--u))}.panel__icon{flex:none;display:flex;align-items:center;justify-content:center;width:calc(28 * var(--u));height:calc(28 * var(--u));border-radius:calc(4 * var(--u));color:var(--ui-text-2)}.panel__title{flex:1;min-width:0;display:grid;font-family:var(--font-display);font-variation-settings:"wdth" 120;font-size:calc(17 * var(--u));line-height:calc(24 * var(--u));font-weight:600}.panel__title>span{grid-area:1 / 1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.panel__title>:not(:last-child){opacity:0}.panel__badge{flex:none;display:inline-flex;align-items:center;gap:calc(8 * var(--u));font-size:calc(12 * var(--u));line-height:calc(16 * var(--u));font-weight:600;white-space:nowrap}.panel__badge:before{content:"";width:calc(8 * var(--u));height:calc(8 * var(--u));border-radius:50%;background:var(--ui-success)}.panel__list{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;justify-content:flex-end;gap:calc(12 * var(--u));overflow:hidden;padding:calc(16 * var(--u)) calc(12 * var(--u)) calc(16 * var(--u)) calc(16 * var(--u))}.panel__foot{flex:none;padding:calc(12 * var(--u))}.panel__bubble{align-self:flex-end;max-width:85%;padding:calc(8 * var(--u)) calc(12 * var(--u));border-radius:calc(12 * var(--u));background:var(--ui-bg-3);overflow-wrap:break-word}.panel__activity{display:flex;align-items:center;gap:calc(8 * var(--u));padding:calc(4 * var(--u)) 0 calc(4 * var(--u)) calc(4 * var(--u))}.panel__word{position:relative;font-size:calc(12 * var(--u));line-height:calc(16 * var(--u));color:var(--ui-muted);white-space:nowrap}.panel__word:before{content:attr(data-text);position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 40%,var(--ui-text) 50%,transparent 60%) 100% 0 / 400% 100% no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent;animation:panel-shimmer 2s linear infinite}@keyframes panel-shimmer{to{background-position:0 0}}.panel__answer{margin-top:.65em;font-size:calc(15 * var(--u));line-height:1.65}.panel__bold{font-weight:600}.panel__composer{position:relative;display:flex;flex-direction:column;gap:calc(8 * var(--u));padding:calc(8 * var(--u));border:1px solid var(--ui-border-strong);border-radius:calc(4 * var(--u));background:var(--ui-card)}.panel__composer:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--ui-accent);border-radius:calc(4 * var(--u));box-shadow:0 0 0 calc(3 * var(--u)) var(--ui-glow);opacity:0;pointer-events:none}.panel__field{display:grid;font-size:calc(14 * var(--u));line-height:calc(22 * var(--u))}.panel__field>*{grid-area:1 / 1}.panel__placeholder{height:calc(22 * var(--u));overflow:hidden;color:var(--ui-muted);white-space:nowrap;text-overflow:ellipsis}.panel__typed{white-space:pre-wrap;overflow-wrap:anywhere}.panel__typed{display:none}.panel__queue{opacity:0}.panel__tools{display:flex;align-items:center;gap:calc(4 * var(--u))}.panel__stop{margin-left:auto;color:var(--ui-stop);opacity:0}.panel__send{border:1px solid var(--ui-accent);background:var(--ui-accent-fill);color:var(--ui-on-accent);opacity:.45}.panel__support{flex:none;display:flex;align-items:center;justify-content:space-between;gap:calc(4 * var(--u));padding:calc(6 * var(--u)) calc(16 * var(--u));border-top:1px solid var(--ui-border);color:var(--ui-muted);font-size:calc(11 * var(--u));line-height:1.5}.panel__support span{color:var(--ui-text-2);white-space:nowrap}.mascot{display:block;flex:none;width:calc(40 * var(--u));height:calc(40 * var(--u))}.mascot__body{fill:var(--ui-accent)}.mascot__face{fill:var(--ui-face);transform-box:view-box;transform-origin:500px 496px}.mascot__face path{transform-box:fill-box;transform-origin:center}.mascot [data-face]:not(:last-child){opacity:0}.mascot [data-part^=dot]{animation:mascot-wave 1.2s ease-in-out infinite}.mascot [data-part=dot-2]{animation-delay:.15s}.mascot [data-part=dot-3]{animation-delay:.3s}@keyframes mascot-wave{0%,60%,to{transform:none}28%{transform:translateY(-46px)}}@keyframes mascot-swap{50%{transform:scaleY(.06)}}@keyframes ui-on{0%,to{opacity:1}}@keyframes ui-off{0%,to{opacity:0}}@keyframes ui-in{0%{opacity:0}}@keyframes ui-out{0%{opacity:1}to{opacity:0}}@keyframes ui-rise{0%{opacity:0;transform:translateY(calc(8 * var(--u)))}to{opacity:1;transform:none}}@keyframes ui-word{0%{opacity:0;filter:blur(1px)}to{opacity:1;filter:none}}.tech .kicker{color:var(--tone-text)}.tech__block{margin-top:calc(72 * var(--u))}.tech__card,.end__card{display:block;padding:calc(14 * var(--u)) calc(18 * var(--u)) calc(15 * var(--u));border:1px solid var(--card-line);border-radius:calc(10 * var(--u));background:var(--card);transition:border-color .2s var(--ease),background-color .2s var(--ease)}.tech__card{max-width:calc(420 * var(--u));margin-bottom:calc(20 * var(--u))}.tech__card:hover{border-color:var(--card-line-hover)}.end__card{border-color:var(--glass-line);background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.end__card:hover{border-color:var(--tone-text);background:var(--glass-hover)}.tech__top{display:flex;align-items:center;gap:calc(10 * var(--u))}.tech :is(h3,.tech__top strong){font-family:var(--font-display);font-size:calc(21 * var(--u));font-weight:700;letter-spacing:-.02em;line-height:1.2}.tech__top svg{width:calc(16 * var(--u));height:calc(16 * var(--u));margin-left:auto;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s var(--ease),stroke .2s var(--ease)}:is(.tech__card,.end__card):hover svg{stroke:var(--tone-text);transform:translate(2px,-2px)}:is(.tech__card,.end__card) p{margin-top:calc(6 * var(--u));color:var(--muted);font-size:calc(15 * var(--u));line-height:1.5}.tech__card .tech__about{margin-top:calc(8 * var(--u));color:var(--hero-sub);font-size:calc(14 * var(--u));line-height:1.45}.tech__link{display:flex;align-items:center;gap:calc(6 * var(--u));margin-left:auto;color:var(--tone-text);font-size:calc(13.5 * var(--u));font-weight:600;line-height:1.4;white-space:nowrap}.tech__link svg{width:calc(14 * var(--u));height:calc(14 * var(--u));margin-left:0;stroke:currentColor;stroke-width:2.2}.rvt__shot{position:absolute;top:0;right:0;bottom:0;left:0}.rvt__shot img{width:100%;height:100%}.rvt__shot:is([data-shot=axon-base],[data-shot=axon-wall]),.tech__block--library .rvt__shot:not([data-shot=axon-full]),.tech__cursor{display:none}.tech__block[data-step] .rvt__shot{display:block}.tech__block[data-step] .fb__art{display:grid}.rvt__fit{position:relative;aspect-ratio:16 / 10}.rvt__ring{position:absolute;width:calc(56 * var(--u));height:calc(56 * var(--u));margin:calc(-28 * var(--u)) 0 0 calc(-28 * var(--u));border:2px solid var(--ui-accent);border-radius:50%;opacity:0}.tech__cursor{position:relative}.cursor__leg{position:absolute;top:0;right:0;bottom:0;left:0}.cursor{position:absolute;opacity:0}.cursor>svg{max-width:none}.cursor__arrow{position:absolute;top:calc(-1 * var(--u));left:calc(-1 * var(--u));width:calc(15 * var(--u));height:calc(22 * var(--u));overflow:visible;fill:var(--ui-pointer);stroke:var(--ui-pointer-edge);stroke-width:1.2;stroke-linejoin:round;transform-origin:calc(1 * var(--u)) calc(1 * var(--u));transition:transform .1s}.cursor__ring{position:absolute;top:calc(-12 * var(--u));left:calc(-12 * var(--u));width:calc(24 * var(--u));height:calc(24 * var(--u));border:2px solid var(--ui-pointer);border-radius:50%;opacity:0}.cursor__chip{position:absolute;top:calc(12 * var(--u));left:calc(12 * var(--u));max-width:calc(240 * var(--u));overflow:hidden;padding:calc(3 * var(--u)) calc(8 * var(--u));border:1px solid var(--ui-border);border-radius:calc(4 * var(--u));background:var(--ui-bg-2);box-shadow:var(--ui-lift);color:var(--ui-text);font-family:var(--font-body);font-size:calc(12 * var(--u));font-weight:500;line-height:calc(16 * var(--u));white-space:nowrap;text-overflow:ellipsis;opacity:0}.cursor__ghost{--w: calc((1.6 * var(--ch) - 320 * var(--u)) * .13);position:absolute;top:calc(var(--w) / -2);left:calc(var(--w) / -2);width:var(--w);opacity:0}.cursor__ghost img{width:100%;height:auto;opacity:.55}.cursor__badge{position:absolute;top:calc(17 * var(--u));left:calc(10 * var(--u));width:calc(11 * var(--u));height:calc(11 * var(--u));overflow:visible;opacity:0}.cursor__badge>:first-child{fill:var(--ui-pointer);stroke:var(--ui-pointer-edge)}.cursor__badge>:last-child{fill:none;stroke:var(--ui-pointer-edge);stroke-width:1.4}.panel__list>*{flex:none}.panel__list>.panel__activity{display:none}.tech__block--agent .panel__list{-webkit-mask-image:linear-gradient(transparent calc(8 * var(--u)),var(--media-bg) calc(52 * var(--u)));mask-image:linear-gradient(transparent calc(8 * var(--u)),var(--media-bg) calc(52 * var(--u)))}.tech__end{position:relative;container-type:size;aspect-ratio:2 / 1;margin-top:calc(72 * var(--u));overflow:hidden;border-radius:calc(12 * var(--u));background:var(--media-bg)}.tech__end>*{--w: max(120cqw, 240cqh);--at: 52cqw;--pad: calc(48 * var(--u))}.plate{position:absolute;top:calc(50cqh - var(--w) / 4.8);left:calc(var(--at) - .6 * var(--w));width:var(--w);aspect-ratio:2.4}.plate>picture{position:absolute;top:0;right:0;bottom:0;left:0}.plate img{width:100%;height:100%}.plate__zoom,.plate__quad,.tech__where{display:none}.plate__zoom{position:absolute}.plate__quad{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.plate__quad polygon{fill:var(--quad);stroke:var(--green-400);stroke-width:1;vector-effect:non-scaling-stroke}.plate__life{display:none;position:absolute;top:0;right:0;bottom:0;left:0}.plate__over,.plate__resident,.plate__lights{position:absolute;top:0;right:0;bottom:0;left:0}.plate__lights{display:none}.plate .plate__patch{--mask: linear-gradient(90deg, transparent, var(--media-bg) var(--fl), var(--media-bg) calc(100% - var(--fr)), transparent), linear-gradient(180deg, transparent, var(--media-bg) var(--ft), var(--media-bg) calc(100% - var(--fb)), transparent);position:absolute;-webkit-mask-image:var(--mask);-webkit-mask-composite:source-in;mask-image:var(--mask);mask-composite:intersect}.plate__patch video:not([src]){visibility:hidden}.plate__light{position:absolute;opacity:0}@supports (width: 1cqw){@media (min-width: 1000px) and (prefers-reduced-motion: no-preference){.js .plate__life{display:block}}}.tech__where{position:absolute;top:calc(50cqh + .0755 * var(--w) + 16 * var(--u));left:50%;translate:-50% 0;white-space:nowrap}.end{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:calc(var(--at) - .13 * var(--w) - var(--pad)) calc(.26 * var(--w)) minmax(0,1fr);align-content:center;align-items:center;gap:calc(28 * var(--u)) 0;padding:0 var(--pad);background:var(--scrim-end)}.end__brand{display:grid;justify-items:start;gap:calc(18 * var(--u))}.end__brand img{width:calc(84 * var(--u));margin:calc(-10 * var(--u))}.end__word{font:700 calc(40 * var(--u)) / 1 var(--font-display);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.end__line{font:800 calc(25 * var(--u)) / 1.05 var(--font-display);text-transform:uppercase}.end__line span{display:block;color:var(--hero-dim)}.end__cards{grid-column:3;display:grid;gap:calc(10 * var(--u))}.end__kicker{padding-left:calc(18 * var(--u));color:var(--muted);font:500 calc(11.5 * var(--u)) var(--font-mono);letter-spacing:.14em;text-transform:uppercase}@container (max-aspect-ratio: 3/2){.tech__end>*{--at: 64cqw}.end{grid-template-columns:calc(var(--at) - .13 * var(--w) - var(--pad));background:var(--scrim-copy)}.end__cards{grid-column:1}}.note{padding:.6em .9em;border:1px solid var(--glass-line);border-radius:calc(8 * var(--u));background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--ink);font:500 calc(11.5 * var(--u)) var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.tag{padding:calc(4 * var(--u)) calc(9 * var(--u));border-radius:calc(5 * var(--u));font-family:var(--font-mono);font-size:calc(9.5 * var(--u));letter-spacing:.14em;text-transform:uppercase}.tag--live{background:var(--tag-live-bg);color:var(--tag-live-text)}.tag--beta{background:var(--tag-beta-bg);color:var(--tag-beta-text)}.tag--soon{border:1px solid var(--line);background:var(--tag-soon-bg);color:var(--tag-soon-text)}@media (max-width: 999.98px){.tech .rvt__pane{content-visibility:auto}.tech__card{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:calc(10 * var(--u))}.tech__card .tech__top{display:contents}.tech__card .tag{justify-self:start}.tech__card>p{grid-column:1 / -1}.tech__card .tech__link{grid-area:4 / 1 / 5 / -1;margin:calc(10 * var(--u)) 0 0}.tech__end{aspect-ratio:4 / 7;max-height:86svh;margin-inline:auto}.plate{top:0;right:0;bottom:0;left:0;width:auto;aspect-ratio:auto}.plate img{object-fit:cover;object-position:50% 0}.end{grid-template-columns:minmax(0,1fr);align-content:end;gap:20px;padding:0 16px 16px;background:var(--scrim-end-tall)}.end__brand{gap:12px}.end__brand img{width:56px;margin:-6px}.end__word{font-size:26px}.end__line{font-size:17px}.end__card p{display:none}}@media (prefers-reduced-motion: no-preference) and (min-width: 1000px) and (min-height: 700px){.js:not(.intro-off) .tech{--m: calc(32 * var(--u));--pane: calc(360 * var(--u));--text: min(calc(540 * var(--u)), 42%);--ch: min(100svh - 330 * var(--u), (min(100vw, 1504 * var(--u)) - 2 * var(--m) - var(--pane) - 1px) / 1.6);position:relative;display:grid;grid-template-columns:calc(1.6 * var(--ch) + var(--pane) + 1px);grid-template-rows:calc(156 * var(--u)) calc(var(--ch) + 48 * var(--u));align-content:center;justify-content:center;row-gap:calc(20 * var(--u));max-width:none;height:100svh;padding:calc(var(--header-h) + 20 * var(--u)) 0 calc(24 * var(--u));background:var(--bg)}.js:not(.intro-off) .tech__block{display:contents}.js:not(.intro-off) .tech__head{grid-area:1 / 1;align-self:start;max-width:calc(100% - var(--text) - 24 * var(--u))}.js:not(.intro-off) .tech .section-head{max-width:none;margin:0;text-align:left}.js:not(.intro-off) .tech .section-title{font-size:clamp(28px,min(3.4vw,5.5svh),calc(48 * var(--u)))}.js:not(.intro-off) .tech__card{grid-area:1 / 1;justify-self:end;align-self:end;width:var(--text);max-width:none;margin:0}.js:not(.intro-off) .tech__card{pointer-events:none}.js:not(.intro-off) .tech[data-step="2"] .tech__block--agent .tech__card,.js:not(.intro-off) .tech[data-step="4"] .tech__block--library .tech__card,.js:not(.intro-off) .tech[data-step="6"] .tech__block--builder .tech__card{pointer-events:auto}.js:not(.intro-off) .tech__window{grid-area:2 / 1;min-height:0}.js:not(.intro-off) .fb{height:100%;aspect-ratio:auto}.js:not(.intro-off) .fb__art{display:grid}.js:not(.intro-off) .tech__end{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;margin:0;border-radius:0;aspect-ratio:auto;pointer-events:none}.js:not(.intro-off) :is(.plate__zoom,.plate__quad,.tech__where){display:block}.js:not(.intro-off) .tech:is([data-step="0"],[data-step="8"]) .end{pointer-events:auto}.js:not(.intro-off) .tech:is([data-step="2"],[data-step="3"],[data-step="4"],[data-step="5"],[data-step="6"]) .plate__life,.js:not(.intro-off) .tech:not([data-step="8"]) .plate__resident{display:none}.js:not(.intro-off) .tech:is([data-step="0"],[data-step="8"]) .plate__lights{display:block}.plate__light--w1{animation:lamp-w1 29s linear infinite}.plate__light--w2{animation:lamp-w2 37s linear infinite}.js:not(.intro-off) .rvt__shot{display:block}.js:not(.intro-off) .tech__block--library .rvt{--pane: calc(680 * var(--u));height:100%}.js:not(.intro-off) .tech__block--library .rvt__canvas{flex:1;display:grid;align-content:center;aspect-ratio:auto}.js:not(.intro-off) .tech__cursor{z-index:1;grid-area:2 / 1;align-self:start;justify-self:start;display:block;width:calc(1.6 * var(--ch));height:var(--ch);margin-top:calc(26 * var(--u));pointer-events:none}}.tech__block--agent:is([data-step="0"],[data-step="1"]) [data-turn="1"],.tech__block--agent[data-step="2"] .panel__answer[data-turn="1"]{display:none}.tech__block--agent[data-step] .rvt__shot{transition:opacity .35s var(--ease)}.tech__block--agent[data-step="0"] .panel__list{animation:panel-reset .45s var(--ease)}.tech__block--agent:is([data-step="0"],[data-step="1"],[data-step="2"]) .rvt__shot[data-shot=axon-wall],.tech__block--agent:is([data-step="0"],[data-step="1"],[data-step="2"],[data-step="3"]) .rvt__shot[data-shot=axon-oak]{opacity:0}.tech__block--agent[data-step="1"] .panel__field>:first-child{display:none}.tech__block--agent[data-step="1"] .panel__typed[data-turn="1"]{display:block}.tech__block--agent[data-step="1"] .panel__typed>span{animation:ui-off calc(.12s + var(--i) * 14ms)}.tech__block--agent[data-step="1"] .panel__composer:after,.tech__block--agent[data-step="1"] .panel__send{opacity:1}.tech__block--agent[data-step="2"] .panel__bubble[data-turn="1"]{animation:ui-rise .3s both}.tech__block--agent[data-step="2"] .panel__list>.panel__activity{display:flex;animation:ui-rise .2s .3s both}.tech__block--agent[data-step="2"] .panel__field>:first-child{opacity:0}.tech__block--agent[data-step="2"] :is(.panel__queue,.panel__stop,.rail__dot){opacity:1}.tech__block--agent[data-step="3"] .rvt__ring[data-at=door],.tech__block--agent[data-step="4"] .rvt__ring[data-at=floor]{animation:rvt-ring 1.1s ease-out}.tech__block--agent[data-step="3"] .panel__answer[data-turn="1"]>span{animation:ui-word .35s cubic-bezier(.22,1,.36,1) calc(.15s + var(--i) * var(--stagger)) both}.tech__block--library:is([data-step="0"],[data-step="1"],[data-step="2"]) .rvt__shot[data-shot=axon-dining],.tech__block--library:is([data-step="0"],[data-step="1"],[data-step="2"],[data-step="3"]) .rvt__shot[data-shot=axon-full]{opacity:0}.tech__block--library[data-step] .rvt__shot[data-shot=axon-full]{transition:opacity .5s var(--ease)}.tech__block--library[data-step="3"] .rvt__ring[data-at=table]{animation:rvt-ring 1.1s ease-out}.tech__block--library[data-step] .lib__card[data-family=dining-table-8]{transition:opacity .25s cubic-bezier(.22,1,.36,1),transform .25s cubic-bezier(.22,1,.36,1)}.tech__block--library[data-step="2"] .lib__card[data-family=dining-table-8]{opacity:.4;transform:scale(.96)}.tech__block--library[data-step="2"] .cursor__arrow{transform:scale(.88)}.tech__block--library[data-step="1"] .cursor__ring{animation:cursor-click .5s ease-out}.tech__block--builder[data-step] :is(.fb__art,.fb__real,.fb__scrim,.fb__tag,.fb__more){transition:opacity .5s var(--ease),transform .8s var(--ease)}.tech__block--builder[data-step] .fb__draw>picture{transition:opacity .25s var(--ease)}.tech__block--builder[data-step] .fb__steps>li{transition:color .3s,border-color .3s}.tech__block--builder:is([data-step="0"],[data-step="1"],[data-step="2"]) .fb__art{opacity:1;transform:none}.tech__block--builder:is([data-step="0"],[data-step="1"],[data-step="2"]) :is(.fb__real,.fb__scrim,.fb__tag,.fb__more){opacity:0}.tech__block--builder[data-step="0"] .fb__draw>:first-child,.tech__block--builder[data-step="1"] .fb__draw>:nth-child(2),.tech__block--builder[data-step="2"] .fb__draw>:nth-child(3){opacity:1}.tech__block--builder:is([data-step="0"],[data-step="2"]) .fb__flex>:nth-child(2){display:none}.tech__block--builder[data-step="0"] .fb__flex>:first-child,.tech__block--builder[data-step="2"] .fb__flex>:nth-child(3){display:inline}.tech__block--builder:is([data-step="0"],[data-step="1"],[data-step="2"]) .fb__steps>:last-child{border-color:var(--line-strong);color:inherit}.tech__block--builder:is([data-step="0"],[data-step="1"],[data-step="2"]) .fb__steps>:first-child{border-color:var(--tone-text);color:var(--ink)}.tech__block--builder[data-step] .fb__real img{transition:transform 6s cubic-bezier(.2,.6,.3,1)}.tech__block--builder:is([data-step="0"],[data-step="1"],[data-step="2"]) .fb__real img{transform:scale(1.14);transition:none}@keyframes panel-reset{0%,12%{visibility:hidden;opacity:0}12.01%{visibility:visible;opacity:0}}@keyframes rvt-ring{0%{opacity:.9;transform:scale(.25)}to{opacity:0;transform:scale(1.5)}}@keyframes cursor-click{0%{opacity:.8;transform:scale(.3)}to{opacity:0;transform:scale(1.6)}}@keyframes lamp-w1{0%,13.79%{opacity:0}14.2%,44.83%{opacity:1}45.24%,to{opacity:0}}@keyframes lamp-w2{0%,29.73%{opacity:0}30.05%,64.86%{opacity:1}65.19%,to{opacity:0}}.proof{padding-block:calc(52 * var(--u)) calc(96 * var(--u));text-align:center}.proof h2{font-family:var(--font-mono);font-size:calc(10.5 * var(--u));font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--faint)}.schedule{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(8 * var(--u)) calc(24 * var(--u));max-width:calc(760 * var(--u));margin:calc(40 * var(--u)) auto 0;font-family:var(--font-mono);font-size:calc(12.5 * var(--u));line-height:1.2;text-align:left}.schedule__title{grid-column:1 / -1;letter-spacing:.04em;color:var(--faint)}.schedule table{width:100%;border-collapse:collapse}.schedule th{padding:calc(6 * var(--u)) calc(8 * var(--u));border-bottom:1px solid var(--line-strong);font-size:calc(10.5 * var(--u));font-weight:500;letter-spacing:.06em;text-align:left;text-transform:uppercase;color:var(--faint)}.schedule td{padding:calc(6 * var(--u)) calc(8 * var(--u));border-bottom:1px solid var(--line);color:var(--faint);transition:color .2s var(--ease)}.schedule td:first-child{width:43%}.schedule td:nth-child(2){width:18.5%}.schedule td:first-child:before{content:"";display:inline-block;width:6px;height:6px;margin-right:calc(8 * var(--u));vertical-align:1px}.schedule tr[data-on] td{color:var(--ink)}.schedule tr[data-on] td:first-child:before{background:var(--ink)}@media (max-width: 620px){.schedule{grid-template-columns:minmax(0,1fr);row-gap:0}.schedule table+table th{padding-block:0;border:0;font-size:0}}.rvt{--pane: calc(360 * var(--u));display:grid;grid-template-columns:minmax(0,1fr) calc(var(--pane) + 1px);overflow:hidden;border-radius:calc(12 * var(--u));background:var(--ui-revit-canvas);box-shadow:var(--ui-shadow);font-family:var(--font-body);line-height:normal;text-align:left}.rvt__view{display:flex;flex-direction:column;min-width:0}.rvt__tabs{flex:none;display:flex;height:calc(26 * var(--u));background:var(--ui-revit-strip)}.rvt__tab{display:flex;align-items:center;gap:calc(8 * var(--u));padding:0 calc(12 * var(--u));color:var(--ui-revit-text-2);font-size:calc(11 * var(--u));white-space:nowrap}.rvt__tab--on{background:var(--ui-revit-tab);color:var(--ui-revit-text)}.rvt__x{opacity:.7}.rvt__canvas{position:relative;flex:none;aspect-ratio:16 / 10;overflow:hidden;background:var(--ui-revit-canvas)}.rvt__bar{flex:none;display:flex;align-items:center;gap:calc(7 * var(--u));height:calc(22 * var(--u));padding:0 calc(10 * var(--u));background:var(--ui-revit-bar);color:var(--ui-revit-text);font-size:calc(10 * var(--u))}.rvt__bar>span{width:calc(9 * var(--u));height:calc(9 * var(--u));border-radius:2px;background:var(--ui-revit-icon);opacity:.75}.rvt__bar>:first-child{margin-left:calc(6 * var(--u))}.rvt__pane{display:flex;flex-direction:column;min-height:0;container-type:size;font-size:calc(10 * var(--u));overflow:hidden;border-left:1px solid var(--ui-revit-rule);background:var(--ui-platform)}.rvt__dock{flex:1;min-height:0;display:flex}.rvt__dock>:last-child{flex:1;min-width:0}@media (max-width: 999.98px){.rvt{grid-template-columns:minmax(0,1fr)}.rvt__pane{height:calc(420 * var(--u));border-top:1px solid var(--ui-revit-rule);border-left:0}}.scene{position:relative;z-index:var(--layer)}.scene__stage{position:relative}.scene__after{position:relative;z-index:1}.scene__anchor{position:absolute;top:0;scroll-margin-top:calc(-1 * var(--header-h))}@media (prefers-reduced-motion: no-preference) and (min-height: 500px){.js:not(.intro-off) .scene{min-height:calc((var(--beats) + 1) * 100svh)}.js:not(.intro-off) .scene__stage{position:sticky;top:0;height:100svh;overflow:clip}.js:not(.intro-off) .scene+.scene{margin-top:calc(-1 * (1 + var(--overlap)) * 100svh)}.js:not(.intro-off) .scene__after{padding-top:calc(var(--overlap) * 100svh)}.js:not(.intro-off) .scene__anchor{top:calc(var(--at) * (100% - 100svh))}.js:not(.intro-off) .scene+:not(.scene){position:relative;z-index:10;margin-top:-100svh;border-radius:34px 34px 0 0;background:var(--bg)}.js:not(.intro-off) .scene+:not(.scene)+*{position:relative;z-index:10;background:var(--bg)}}@media (prefers-reduced-motion: no-preference) and (min-height: 500px) and (max-width: 999.98px),(prefers-reduced-motion: no-preference) and (min-height: 500px) and (max-height: 699.98px){.js:not(.intro-off) .scene--wide{min-height:0}.js:not(.intro-off) .scene+.scene--wide{z-index:10;margin-top:-100svh;border-radius:34px 34px 0 0;background:var(--bg)}.js:not(.intro-off) .scene--wide .scene__stage{position:relative;height:auto;overflow:visible}.js:not(.intro-off) .scene--wide .scene__after{padding-top:0}.js:not(.intro-off) .scene--wide .scene__anchor{top:0}.js:not(.intro-off) .scene--wide+:not(.scene){margin-top:0;border-radius:0}}.section-head{max-width:60ch;margin-inline:auto;text-align:center}.kicker{font-family:var(--font-mono);font-size:calc(10.5 * var(--u));letter-spacing:.22em;text-transform:uppercase;color:var(--green-400)}.services .kicker{color:var(--tone-text)}@supports (color: color-mix(in oklab,red,blue)){.services{--pad: clamp(80px, 9vw, calc(132 * var(--u)));--gap: calc(96 * var(--u));--fade-h: calc(var(--pad) + var(--gap) - 24 * var(--u));margin-top:calc(-1 * var(--gap));padding-block:calc(var(--pad) + var(--gap));background:var(--fade-in) top / 100% var(--fade-h) no-repeat,var(--fade-out) bottom / 100% var(--fade-h) no-repeat,linear-gradient(var(--bg),var(--bg)) center / 100% calc(100% - 2 * var(--fade-h) + 2px) no-repeat,var(--page-dark)}#services{scroll-margin-top:calc(-1 * (var(--header-h) + var(--gap)))}@media (prefers-reduced-motion: no-preference) and (min-width: 1000px) and (min-height: 700px){.js:not(.intro-off) .services{position:relative;z-index:2}.js:not(.intro-off) .services:after{content:"";position:absolute;inset:100% 0 auto;height:calc(var(--pad) + var(--gap));background:var(--veil-chapter);pointer-events:none}}}.services__list{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(16 * var(--u));margin-top:calc(56 * var(--u));counter-reset:service}.service{position:relative;isolation:isolate;overflow:hidden;overflow:clip;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:3 / 4;padding:calc(48 * var(--u)) calc(22 * var(--u)) calc(24 * var(--u));border:1px solid var(--card-line);border-radius:calc(20 * var(--u));background:var(--service-ground);color:var(--ink)}.service:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--scrim-top),var(--scrim-bottom)}.service{--lift: calc(72 * var(--u))}.service__body{border-image:var(--scrim-up) fill 0 / 0 / var(--lift) 100vw 100vw}.service img{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.service:hover img{transform:scale(1.05)}.service__body:before{counter-increment:service;content:counter(service,decimal-leading-zero);position:absolute;top:calc(20 * var(--u));left:calc(22 * var(--u));font-family:var(--font-mono);font-size:calc(11 * var(--u));font-weight:500;letter-spacing:.16em;color:var(--tone-text)}.service h3{font-variation-settings:"wdth" 110;font-size:min(calc(25 * var(--u)),calc(2.75vw - 8.5px));font-weight:700;line-height:1.04;letter-spacing:-.012em;text-transform:uppercase}.service p{margin-top:calc(10 * var(--u));font-size:calc(13.5 * var(--u));line-height:1.5;color:var(--muted)}.services__end{display:flex;justify-content:center;margin-top:calc(48 * var(--u))}.service[data-key=modelling]{background:var(--service-ground-revit)}.service[data-key=coordination] img{object-position:50% 30%}.service[data-key=documentation]{--scrim-top: none;--scrim-bottom: none;--tone-text: var(--projects);border-color:var(--card-line-hover)}.service[data-key=documentation] img{object-position:0 0;transform-origin:0 0;scale:1.2;translate:-15.4% -9.6%}@media (max-width: 1000px){.services__list{grid-template-columns:repeat(2,1fr)}.service h3{font-size:25px}}@media (max-width: 620px){.services__list{grid-template-columns:1fr}.service{aspect-ratio:4 / 3;padding:48px 20px 20px}.service__body:before{top:18px;left:20px}.service h3{font-size:24px}.service[data-key=coordination] img{object-position:50% 40%}.service[data-key=families] img{object-position:50% 42%}.service[data-key=documentation] img{scale:1.6;translate:-11.5% -12.8%}}.band{position:relative;height:var(--band-h);overflow:hidden;container-type:size;background:var(--media-bg)}.band:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--veil-band);pointer-events:none}.band__frame{--w: max(100cqw, 177.78cqh);position:absolute;z-index:1;left:calc(50cqw - var(--w) / 2);top:calc(50cqh - var(--w) * .28125);width:var(--w);aspect-ratio:16 / 9;pointer-events:none;color:var(--ink);text-align:center;text-transform:uppercase;white-space:nowrap}.band__title{position:absolute;top:0;right:0;bottom:4.6%;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.band__cube{--cube: max(var(--w) * .0435, 31px);width:var(--cube);height:var(--cube);margin-block:calc(var(--cube) * -.141)}.band__captions{width:100%;margin-top:max(var(--w) * .0062,4px);overflow:hidden}.band__track{display:flex;transform:translate(calc(var(--city, 0) * -100%))}.band__track p{flex:0 0 100%}.band__city{display:block;font-size:max(var(--w) * .0396,24px);font-weight:700;line-height:1.25}.band__state{display:block;margin-top:max(var(--w) * .0078,5px);font-size:max(var(--w) * .02,12px);line-height:1}
