@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-vietnamese-wdth-normal.rJmnGBSt.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-latin-ext-wdth-normal.7khWdh9v.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-latin-wdth-normal.DY7AcnAa.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--floor:#1e6050;--floor-deep:#134539;--floor-lift:#277262;--line:#f1c84b;--line-text:#f5d877;--paper:#f6f3e8;--paper-dim:#e6e1cf;--white:#fff;--kraft:#ddd0b4;--kraft-deep:#b3a47f;--ink:#0c2a21;--ink-soft:#3a574d;--acc:#f0652f;--acc-lift:#f58256;--acc-deep:#c9481a;--ok:#6fd699;--font:"Archivo Variable", "Archivo", system-ui, sans-serif;--gut:clamp(1.25rem, 4vw, 3.5rem);--section:clamp(3rem, 5.5vw, 5.25rem);--wrap:76rem;--radius:4px;--bar-h:4.25rem;--note-h:0rem;--head-h:calc(var(--bar-h) + var(--note-h));--ease:cubic-bezier(.16, 1, .3, 1)}:root.offer-english{--note-h:2.25rem}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--head-h) + 1rem);scrollbar-color:#6fa594 var(--floor-deep)}body{background:var(--floor);color:var(--white);font-family:var(--font);font-variant-numeric:lining-nums;-webkit-font-smoothing:antialiased;margin:0;font-size:clamp(1.0625rem,1.02rem + .2vw,1.125rem);font-weight:450;font-stretch:100%;line-height:1.5;overflow-x:clip}::selection{background:var(--line);color:var(--ink)}:focus-visible{outline:3px solid var(--line);outline-offset:3px;border-radius:2px}.t-paper :focus-visible,.t-kraft :focus-visible,.label :focus-visible{outline-color:var(--ink)}h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}button{font:inherit;color:inherit}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:.08em}a:hover{text-decoration-thickness:.16em}[hidden]{display:none!important}.skip{z-index:50;background:var(--paper);color:var(--ink);padding:.6rem 1rem;font-weight:700;position:absolute;top:0;left:-999px}.skip:focus{left:var(--gut);top:.5rem}main:focus{outline:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}h1,h2,h3{overflow-wrap:anywhere}h1,.display{letter-spacing:-.028em;text-wrap:balance;font-size:clamp(2.25rem,4.2vw,4rem);font-weight:660;font-stretch:108%;line-height:1.03}h2{letter-spacing:-.026em;text-wrap:balance;font-size:clamp(1.75rem,1.25rem + 2.1vw,2.75rem);font-weight:660;font-stretch:108%;line-height:1.06}h3{letter-spacing:-.015em;font-size:clamp(1.2rem,1.1rem + .5vw,1.4rem);font-weight:660;font-stretch:104%;line-height:1.12}p,dd,li{text-wrap:pretty}.lead{max-width:42ch;font-size:clamp(1.1rem,1.02rem + .35vw,1.25rem);line-height:1.45}.cap{letter-spacing:.05em;text-transform:uppercase;font-size:.8125rem;font-weight:640;font-stretch:88%;line-height:1.25}.small{font-size:.875rem;line-height:1.45}.stencil{letter-spacing:-.02em;font-weight:300;font-stretch:112%}.flow>*+*{margin-top:1rem}.t-floor,.t-deep{--soft:#d3ebe1;--rule:#ffffff47;--ground:var(--floor);--ground-text:var(--white);color:var(--white);background-color:var(--floor);background-image:repeating-linear-gradient(26.57deg,#ffffff0b 0 1px,#0000 1px 88px),repeating-linear-gradient(-26.57deg,#ffffff0b 0 1px,#0000 1px 88px)}.t-deep{--ground:var(--floor-deep);background-color:var(--floor-deep)}.t-paper{--soft:var(--ink-soft);--rule:#0c2a2138;--ground:var(--paper);--ground-text:var(--ink);background:var(--paper);color:var(--ink)}.t-kraft{--soft:var(--ink-soft);--rule:#0c2a214d;--ground:var(--kraft);--ground-text:var(--ink);background:var(--kraft);color:var(--ink)}.t-floor+.t-deep,.t-deep+.t-deep,.t-deep+.t-floor{border-top:1px solid #ffffff2e}.soft{color:var(--soft)}.wrap{width:min(100% - 2 * var(--gut), var(--wrap));margin-inline:auto}.section{padding-block:var(--section)}.section-head{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:end;gap:1.5rem clamp(2rem,5vw,5rem);margin-bottom:clamp(1.5rem,3vw,2.5rem);display:grid}.section-head:not(:has(.lead)){grid-template-columns:minmax(0,46rem)}.section-head .lead{max-width:44ch}.section-tail{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;margin-top:2rem;display:flex}.btn{background:var(--acc);color:var(--ink);border-radius:var(--radius);cursor:pointer;transition:background .25s var(--ease), transform .25s var(--ease);border:0;align-items:center;gap:.6rem;padding:.85rem 1.2rem;font-weight:660;line-height:1.1;text-decoration:none;display:inline-flex;box-shadow:0 10px 18px -14px #041e16b3}.btn:after{content:"";width:.5em;height:.5em;transition:transform .3s var(--ease);border:.16em solid;border-width:.16em .16em 0 0;transform:rotate(45deg)}.btn:hover{background:var(--acc-lift);transform:translateY(-1px)}.btn:hover:after{transform:translate(3px)rotate(45deg)}.btn--small{padding:.62rem .95rem;font-size:.9375rem}.btn--quiet{background:0 0;box-shadow:inset 0 0 0 1.5px}.btn--quiet:hover{background:var(--ink);color:var(--paper);box-shadow:none}.text-button{text-underline-offset:.3em;align-items:center;min-height:44px;font-weight:600;display:inline-flex}button.text-button{cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline .08em}.more{align-items:center;gap:.55rem;font-weight:620;display:inline-flex}.more:after{content:"";width:.45em;height:.45em;transition:transform .3s var(--ease);border:.15em solid;border-width:.15em .15em 0 0;transform:rotate(45deg)}.more:hover:after{transform:translate(4px)rotate(45deg)}.motion-control{min-height:44px;color:inherit;text-underline-offset:.22em;cursor:pointer;background:0 0;border:0;padding:.5rem 0;font-size:.8125rem;font-weight:650;text-decoration:underline}.motion-control:disabled{cursor:default;text-decoration:none}.hall-motion{min-width:5.5rem;color:var(--white);border-radius:var(--radius);transition:background .16s var(--ease), transform .16s var(--ease);background:0 0;justify-content:center;align-items:center;gap:.5rem;padding:.5rem .65rem;text-decoration:none;display:flex;box-shadow:inset 0 0 0 1px #ffffff61}.hall-motion:hover:enabled{background:#ffffff1f}.hall-motion:active:enabled{transform:translateY(2px)}.hall-motion:disabled{color:var(--white);box-shadow:none;background:0 0}.transport-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round}.transport-play,.hall-motion[aria-pressed=true] .transport-pause{display:none}.hall-motion[aria-pressed=true] .transport-play,.hall-motion:disabled .transport-pause{display:block}.hall-motion:disabled .transport-play{display:none}.motion-paused *,.motion-paused :before,.motion-paused :after{transition-duration:.001ms!important;animation-play-state:paused!important}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip{border:1px solid;border-radius:3px;padding:.32em .6em .3em;font-size:.875rem;font-weight:580;line-height:1.2;text-decoration:none;display:inline-block}a.chip:hover{background:var(--line);border-color:var(--line);color:var(--ink)}.label{background:var(--paper);color:var(--ink);border-radius:var(--radius);--soft:var(--ink-soft);--rule:#0c2a2133;box-shadow:0 16px 26px -16px #041e16bf}.t-paper .label,.t-kraft .label{background:var(--white);box-shadow:none;border:1px solid #0c2a2166}.label-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1rem .6rem;display:flex}.label-body{padding:1rem}.gap{text-align:center;border-radius:var(--radius);background-image:repeating-linear-gradient(-45deg,#0000 0 11px,#ffffff0f 11px 12.5px);border:1px dashed;place-items:center;padding:1.5rem;display:grid}.tick{appearance:none;cursor:pointer;text-align:left;background:0 0;border:0;align-items:flex-start;gap:.75rem;width:100%;padding:.55rem 0;font-weight:550;line-height:1.3;display:flex}.tick-box{width:1.4rem;height:1.4rem;transition:background .25s var(--ease), border-color .25s var(--ease);border:1.5px solid;border-radius:3px;flex:none;place-items:center;margin-top:.05em;display:grid}.tick-box:after{content:"";border:solid var(--ink);width:.38rem;height:.72rem;transition:transform .3s var(--ease);border-width:0 .2rem .2rem 0;margin-top:-.14rem;transform:rotate(40deg)scale(0)}.tick[aria-pressed=true] .tick-box{background:var(--acc);border-color:var(--ink)}.tick[aria-pressed=true] .tick-box:after{transform:rotate(40deg)scale(1)}.tick:hover .tick-box{background:var(--line)}.tick[aria-pressed=true]:hover .tick-box{background:var(--acc)}.site-header{z-index:30;background:var(--floor-deep);color:var(--white);position:sticky;top:0}.home .site-header{transition:background-color .3s var(--ease), box-shadow .3s var(--ease);background:0 0;position:fixed;inset:0 0 auto}.home .site-header.is-solid{background:var(--floor-deep);box-shadow:0 1px #ffffff1f}.home .site-header:not(.menu-ready){position:relative}.lang-note{height:var(--note-h);padding-inline:var(--gut);background:var(--paper);color:var(--ink);justify-content:center;align-items:center;gap:0 .9rem;font-size:.875rem;line-height:1.2;display:none}.offer-english .lang-note{display:flex}.lang-note a{font-weight:640}.lang-note button{cursor:pointer;background:0 0;border:0;place-items:center;width:2.25rem;height:2.25rem;margin-right:-.6rem;display:grid}.lang-note svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round}.lang-note :focus-visible{outline-color:var(--ink)}.header-inner{min-height:var(--bar-h);padding-inline:var(--gut);justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.wordmark{letter-spacing:-.025em;align-items:center;gap:.6rem;font-size:1.3rem;font-weight:680;font-stretch:108%;text-decoration:none;display:inline-flex}.wordmark svg{flex:none;width:1.6rem;height:1.6rem}#site-nav{align-items:center;gap:clamp(1rem,2.2vw,2rem);font-weight:560;display:flex}#site-nav a:not(.btn){padding-block:.4rem;text-decoration:none}#site-nav a:not(.btn):hover,#site-nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:.4em;text-decoration-thickness:2px}#site-nav a.lang-switch{letter-spacing:.05em;border:1px solid #fff6;border-radius:3px;padding:.3rem .5rem;font-size:.8125rem;font-weight:620;line-height:1.2}#site-nav a.lang-switch:hover{border-color:var(--line);text-decoration:none}.lang-long{display:none}.menu-button{cursor:pointer;background:0 0;border:0;align-items:center;gap:.6rem;min-height:44px;padding:0 .2rem;font-weight:620;display:none}.menu-lines{border-block:2px solid;width:1.4rem;height:.6rem}.site-footer{background:var(--floor-deep);color:var(--white);border-top:1px solid #ffffff38}.footer-main{grid-template-columns:1.2fr 1fr auto;align-items:start;gap:1.5rem 3rem;padding-block:2.75rem 2rem;display:grid}.footer-main p{line-height:1.6}.footer-nav{grid-template-columns:repeat(2,auto);gap:.35rem 2rem;font-weight:560;display:grid}.footer-nav a{text-decoration:none}.footer-nav a:hover{text-decoration:underline;text-decoration-color:var(--line)}.footer-bottom{color:#d3ebe1;border-top:1px solid #ffffff38;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding-block:1.1rem 1.5rem;font-size:.875rem;display:flex}.hall{--hall-copy-width:min(35rem, 42vw);--hall-gutter:max(var(--gut), calc((100vw - 90rem) / 2));position:relative}.hall-stage,.hall-controls{height:100svh;position:sticky;top:0}.hall-stage{background:var(--floor);overflow:clip}.hall-controls{z-index:3;pointer-events:none;margin-top:-100svh}.hall-stage canvas{width:100%;height:100%;display:block}.hall-stage:after{content:"";pointer-events:none;background:linear-gradient(90deg, var(--floor) 0, var(--floor) calc(var(--hall-copy-width) + var(--hall-gutter)), transparent calc(var(--hall-copy-width) + var(--hall-gutter) + 6rem));position:absolute;inset:0}.hall-console{z-index:4;right:var(--hall-gutter);background:var(--floor-deep);pointer-events:auto;border-radius:6px;align-items:center;gap:.75rem;padding:.6rem .7rem .75rem;display:flex;position:absolute;bottom:3.5rem;box-shadow:0 10px 22px -14px #041e16b3}.hall-console :is(a,button){scroll-margin-top:calc(-1 * (var(--head-h) + 1rem))}.hall-route{background:#ffffff2e;height:1px;position:absolute;inset:auto .75rem .3rem;overflow:hidden}.hall-route span{background:var(--line);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.rail{gap:.375rem;display:flex}.rail a{height:2.75rem;color:var(--white);font:560 .9375rem/1 var(--font);transition:background .3s var(--ease), color .3s var(--ease), transform .3s var(--ease);border-radius:999px;align-items:center;gap:.55rem;padding:0 .25rem;text-decoration:none;display:inline-flex}.rail-n{width:2.25rem;height:2.25rem;font:600 1rem/1 var(--font);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #ffffff61}.rail-name{white-space:nowrap;padding-right:.65rem}.rail a:hover{background:#ffffff1f}.rail a:active{transform:translateY(2px)}.rail a.done .rail-n{box-shadow:inset 0 0 0 1.5px var(--acc)}.rail a[aria-current=true]{background:var(--paper);color:var(--ink)}.rail a[aria-current=true] .rail-n{box-shadow:none}@media (width<=1199px){.rail a:not([aria-current=true]) .rail-name{display:none}}.hall-note{z-index:3;right:var(--hall-gutter);color:#d3ebe1;background:#0d3229e6;border-radius:3px;padding:.2rem .5rem;font-size:.8125rem;font-weight:480;position:absolute;bottom:1rem}.hall-mobile-note{display:none}.hall-steps{z-index:2;pointer-events:none;margin-top:-100svh;position:relative}.step{min-height:130svh;padding-inline:var(--hall-gutter)}.step--hero{min-height:86svh}.step--out{min-height:120svh}.pin{width:var(--hall-copy-width);pointer-events:auto;padding-bottom:3rem;position:sticky;top:20svh}.step--hero .pin{top:calc(clamp(6rem, 16svh, 9rem) + var(--note-h))}.step--hero h1{overflow-wrap:normal;word-break:normal;font-size:clamp(2.3rem,3.9vw,3.9rem);line-height:1.04}.hero-title-line{white-space:nowrap;display:block}.step--hero .lead{max-width:40ch;margin-top:1.4rem}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem 1.4rem;margin-top:1.7rem;display:flex}.cue{text-underline-offset:.3em;align-items:center;gap:.6rem;min-height:44px;font-weight:560;display:inline-flex}.cue:before{content:"";width:.55em;height:.55em;animation:nudge 2.4s var(--ease) infinite;border:.14em solid;border-width:0 .14em .14em 0;animation-play-state:paused;transform:rotate(45deg)}.hall.motion-active:not(.is-moving) .cue:before{animation-play-state:running}@keyframes nudge{50%{transform:translateY(5px)rotate(45deg)}}.who{color:#d3ebe1;align-items:center;gap:.75rem;margin-top:1.6rem;font-size:1rem;font-weight:480;display:flex}.who-face{background:var(--paper-dim);border-radius:50%;flex:none;width:2.75rem;height:2.75rem;position:relative;overflow:hidden}.who-face img{width:248%;max-width:none;height:auto;position:absolute;top:-21%;left:-57%}.step h2{overflow-wrap:normal;max-width:17ch;font-size:clamp(1.75rem,2.6vw,2.6rem);line-height:1.08}.was{color:#e4f3ed;max-width:42ch;margin-top:1.1rem;font-size:1.125rem;line-height:1.45}.now{max-width:36rem;margin-top:1.5rem;position:relative}.now p{padding:.9rem 1rem 1.05rem;font-size:1.125rem;font-weight:560;line-height:1.4}.now-body{grid-template-rows:1fr;display:grid}.now-body>div{min-height:0;overflow:hidden}.now .label-head{min-height:2.5rem;position:relative}.receipt-check{fill:none;stroke:var(--ink);stroke-width:2px;stroke-dasharray:20;stroke-dashoffset:0;transition:stroke-dashoffset .22s var(--ease) .25s;flex:none;margin-left:auto;margin-right:.7rem}.hall-ready .step:not(.is-fixed) .receipt-check{stroke-dashoffset:20px;transition-delay:0s}.hall:not(.motion-active) *,.hall:not(.motion-active) :before{animation-play-state:paused}.motion-paused .receipt-check{transition-delay:0s}.step-more{margin-top:1.1rem}@media (width>=901px){.hall-ready .step--out .pin{min-height:80svh}}.step--out p{color:#e4f3ed;max-width:34ch;margin-top:1rem;font-size:1.125rem;line-height:1.45}.mini-route{gap:.7rem;margin:1.5rem 0;padding-left:1.75rem;font-weight:560;display:grid;position:relative}.mini-route:before{content:"";background:#fff6;width:1px;position:absolute;top:.75rem;bottom:.75rem;left:.43rem}.mini-route li{line-height:1.3;position:relative}.mini-route li:before{content:"";background:var(--pin-ground,var(--floor));border-radius:50%;width:.9rem;height:.9rem;position:absolute;top:.22em;left:-1.75rem;box-shadow:inset 0 0 0 2px #d3ebe1}.mini-gate span{background:var(--line);color:var(--ink);border-radius:3px;padding:.15rem .5rem}.mini-route .mini-gate:before{background:var(--line);box-shadow:none}.mini-route .mini-build:before{background:var(--acc);box-shadow:none}.hall:not(.hall-ready) .hall-stage,.hall:not(.hall-ready) .hall-controls{display:none}.hall:not(.hall-ready) .hall-steps{pointer-events:auto;padding-top:var(--head-h);margin-top:0}.hall:not(.hall-ready) .step{min-height:0;padding-block:2.5rem}.hall:not(.hall-ready) .pin{width:auto;max-width:36rem;padding-bottom:0;position:static}.hall:not(.hall-ready) .cue{display:none}.route{--dot:2.75rem;grid-template-columns:3fr auto 2fr;align-items:start;display:grid}.route ol{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.route li{padding-right:1rem;position:relative}.route li:before{content:"";inset:calc(var(--dot) / 2 - 1px) 0 auto 0;background:var(--rule);height:2px;position:absolute}.route .project li:before{background:var(--acc)}.route .project li:last-child:before{width:calc(var(--dot) / 2);right:auto}.route a{border-radius:var(--radius);text-decoration:none;display:block;position:relative}.route-dot{width:var(--dot);height:var(--dot);background:var(--ground);font:600 1rem/1 var(--font);font-variant-numeric:tabular-nums;transition:background .3s var(--ease), color .3s var(--ease), box-shadow .3s var(--ease);border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 0 0 1.5px}.route .project .route-dot{box-shadow:inset 0 0 0 2px var(--acc)}.route-name{margin-top:.7rem;font-size:1.0625rem;font-weight:620;line-height:1.2;display:block}.route a:hover .route-dot{background:var(--ground-text);color:var(--ground);box-shadow:none}.route-gate{margin:calc(var(--dot) / 2 - .875rem) 1rem 0 0;background:var(--line);height:1.75rem;color:var(--ink);white-space:nowrap;border-radius:3px;align-items:center;gap:.4rem;padding:0 .65rem;font-size:.875rem;font-weight:640;display:flex}.route-gate svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-dasharray:16;stroke-dashoffset:16px;width:0;transition:stroke-dashoffset .35s var(--ease) .1s, width .3s var(--ease)}.route-gate-mobile{display:none}.page-intro{background-image:none}.walk{padding-block:clamp(2.5rem, 5vw, 4rem) var(--section);background-image:none}.walk-wrap>*{max-width:60rem}.walk .title-line{display:inline}.walk-head .lead{max-width:46ch;margin-top:1rem}.walk-lead{max-width:60ch;color:var(--soft);margin-top:.6rem}.walk-nav{margin-top:clamp(1.75rem,3vw,2.5rem)}.walk .route a[aria-current=step] .route-dot{background:var(--paper);color:var(--ink);box-shadow:none}.walk .route .project a[aria-current=step] .route-dot{background:var(--acc)}.walk .route a.is-done .route-dot{background:var(--floor-lift)}.walk[data-step="4"] .route-gate svg,.walk[data-step="5"] .route-gate svg{stroke-dashoffset:0;width:14px}.walk-controls{top:var(--head-h);z-index:5;background:var(--floor);border-bottom:1px solid #ffffff2e;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;margin-top:1.25rem;padding-block:.65rem;display:flex;position:sticky}.walk-count{color:var(--soft);font-size:.9375rem;font-weight:560}.walk-controls .btn{margin-left:auto}.walk-controls .btn--quiet{color:var(--white)}.walk-controls .btn--quiet:hover{background:var(--paper);color:var(--ink)}.walk-panels{margin-top:1.25rem}.walk-panel{scroll-margin-top:calc(var(--head-h) + 4.5rem);padding:1.5rem 1.6rem 1.6rem}.walk-panel+.walk-panel{border-top:1px solid var(--rule)}.walk-panel h2{outline-offset:6px;align-items:baseline;gap:.6rem;font-size:clamp(1.5rem,1.25rem + 1vw,2rem);display:flex}.walk-n{color:var(--floor);font-weight:300;font-stretch:112%}.walk-panel.project .walk-n{color:var(--acc-deep)}.walk-panel h3{margin-top:1rem;font-size:1.1875rem;line-height:1.25}.walk-panel h3+p{max-width:58ch;color:var(--soft);margin-top:.4rem}.example-records{border-top:1px solid var(--rule);margin-block:1.1rem 1.25rem}.example-records>div{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:.25rem 1.5rem;padding-block:.65rem;display:grid}.example-records dt{color:var(--soft)}.example-records dd{font-weight:560}.walk-gets{flex-wrap:wrap;align-items:baseline;gap:.35rem 1.1rem;display:flex}.walk-gets-label{color:var(--soft);font-weight:640}.walk-gets ul{flex-wrap:wrap;gap:.35rem 1.1rem;display:flex}.walk-gets li{padding-left:1.2rem;font-weight:540;line-height:1.35;position:relative}.walk-gets li:before{content:"";border:solid var(--ink);border-width:0 .14rem .14rem 0;width:.3rem;height:.6rem;position:absolute;top:.3em;left:.15rem;transform:rotate(40deg)}.walk-gate{background:#f6e3a1;border-radius:3px;margin-top:1.1rem;padding:.7rem .85rem;font-weight:560;line-height:1.4}.starts{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,3vw,2.5rem);display:grid}.start-group h3{border-bottom:1.5px solid var(--ink);padding-bottom:.7rem;font-size:1.25rem}.start-group li{border-bottom:1px solid var(--rule);scroll-margin-top:calc(var(--head-h) + 1.5rem);padding-block:.95rem}.start-group li p+p{color:var(--soft);margin-top:.3rem}.start-name{font-weight:650;font-stretch:104%}.start-gets span{color:var(--ink);font-weight:600}.portrait{aspect-ratio:4/5;width:100%;max-width:19rem}.portrait-photo{object-fit:contain;object-position:center bottom;height:auto;margin-bottom:calc(-1 * var(--section));align-self:end;display:block}.project-image,.automation-image{object-fit:contain;width:100%;height:auto;max-height:32rem;display:block}.automation-image{margin-top:1.5rem}.dock{border-top:1px solid #ffffff1f;position:relative}.dock-layout{grid-template-columns:minmax(0,46rem);gap:clamp(2rem,6vw,6rem);display:grid}.dock--home{background-image:repeating-linear-gradient(26.57deg, #ffffff0b 0 1px, transparent 1px 88px), repeating-linear-gradient(-26.57deg, #ffffff0b 0 1px, transparent 1px 88px), linear-gradient(180deg, var(--floor), var(--floor-deep) min(22rem, 45svh));border-top:0}.dock--home .dock-layout{grid-template-columns:minmax(0,.7fr) minmax(0,1.6fr);align-items:center}.dock-main .lead{max-width:44ch;margin-top:1rem}.dock-proof{color:#d3ebe1;max-width:52ch;margin-top:.85rem}.dock-proof a{color:var(--white);font-weight:600}.dock-actions{flex-wrap:wrap;align-items:center;gap:.9rem 1.5rem;margin-top:1.75rem;display:flex}.dock-address{font-weight:560}.brief{border-top:1px solid #ffffff2e;margin-top:2.25rem;padding-top:1.1rem}.brief-head{color:#d3ebe1}.brief-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.75rem;margin-top:.5rem;display:grid}.brief-list .tick{padding:.55rem 0;font-weight:520;line-height:1.35}.page-intro{padding-block:clamp(3rem,6vw,5.5rem) clamp(2.5rem,5vw,4rem)}.page-intro .lead{max-width:44ch;margin-top:1.4rem}.page-nav{flex-wrap:wrap;gap:0 1.75rem;margin-top:1.5rem;font-weight:560;display:flex}.page-nav a{text-underline-offset:.35em;align-items:center;min-height:44px;text-decoration-color:#ffffff73;display:inline-flex}.page-nav a:hover{text-decoration-color:var(--line)}.discipline{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);align-items:start;gap:clamp(1.75rem,4vw,4rem);display:grid}.discipline-copy{position:static}.discipline-copy h2{overflow-wrap:normal;font-size:clamp(1.6rem,1.2rem + 1.7vw,2.4rem)}.discipline-copy .lead{max-width:40ch;margin-top:1rem}.expertise-section{padding-block:clamp(2.25rem,4vw,3.5rem)}.expertise-section+.expertise-section .wrap{border-top:1px solid var(--rule);padding-top:clamp(2.25rem,4vw,3.5rem)}.expertise-section+.expertise-section{padding-top:0}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.service-card{background:var(--white);border-radius:var(--radius);scroll-margin-top:calc(var(--head-h) + 1.5rem);border:1px solid #0c2a2152;flex-direction:column;gap:.5rem;padding:.95rem 1.05rem 1rem;display:flex}.service-card h3{letter-spacing:-.005em;font-size:1.0625rem;font-weight:650;font-stretch:103%;line-height:1.25}.service-card p{color:var(--soft);flex:1;font-size:1rem;line-height:1.45}.service-start{color:var(--ink-soft);align-self:flex-start;font-size:.9375rem;font-weight:560}.service-card:target{border-color:var(--ink);background:#f6e3a1}.service-card:target p{color:var(--ink)}.discipline-link{margin-top:1.25rem}.library{padding-block:clamp(2.5rem, 5vw, 4rem) var(--section)}.library-head h1{font-size:clamp(2.1rem,3.3vw,3.2rem)}.library-head .lead{max-width:46ch;margin-top:1rem}.library-note{max-width:60ch;color:var(--soft);margin-top:.6rem}.library-tabs{flex-wrap:wrap;gap:.5rem;margin-top:clamp(1.75rem,3vw,2.5rem);display:flex}.library-tabs [role=tab]{appearance:none;cursor:pointer;min-height:2.75rem;transition:background .2s var(--ease), color .2s var(--ease);background:0 0;border:0;border-radius:999px;align-items:center;gap:.55rem;padding:.5rem 1.05rem;font-weight:600;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff61}.library-tabs [role=tab]:hover{background:#ffffff1a}.library-tabs [aria-selected=true],.library-tabs [aria-selected=true]:hover{background:var(--paper);color:var(--ink);box-shadow:none}.tab-count{font-variant-numeric:tabular-nums;opacity:.72;font-size:.875rem;font-weight:560}.library-layout{grid-template-columns:minmax(0,27rem) minmax(0,1fr);align-items:start;gap:clamp(1.5rem,4vw,3.5rem);margin-top:1.5rem;display:grid}.library-group-title{margin-bottom:1rem;font-size:1.5rem}.library-group+.library-group{margin-top:2.5rem}.library-ready .library-group-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.run-list{gap:.75rem;display:grid}.run-card{--soft:var(--ink-soft);background:var(--paper);color:var(--ink);border-radius:var(--radius);scroll-margin-top:calc(var(--head-h) + 1.5rem);transition:box-shadow .25s var(--ease);padding:1.1rem 1.2rem 1.2rem;box-shadow:0 16px 26px -16px #041e16bf}.run-card:hover,.run-card:target{box-shadow:inset 0 0 0 2px var(--acc), 0 16px 26px -16px #041e16bf}.run-card h3{font-size:1.1875rem;line-height:1.22}.run-systems{color:var(--soft);margin-top:.3rem;font-size:.9375rem}.run-now,.run-does{margin-top:.75rem;padding-left:1.2rem;line-height:1.45;position:relative}.run-now{color:var(--soft)}.run-now:before,.run-does:before{content:"";background:var(--line);border-radius:50%;width:.55rem;height:.55rem;position:absolute;top:.5em;left:.05rem}.run-does:before{background:var(--acc)}.run-does strong{font-weight:600}.library-stage{top:calc(var(--head-h) + 1.5rem);min-width:0;position:sticky}.floor svg{width:100%;height:auto;display:block}[data-floor] [data-run]{display:none}[data-floor] [data-run].is-on{animation:run-in .5s var(--ease) both;display:inline}[data-floor] .floor-hub.is-on{animation-name:hub-in}@keyframes run-in{0%{opacity:0}}@keyframes hub-in{0%{opacity:0;transform:translateY(-10px)}}.floor-node,[data-node-tag],[data-node-shadow]{transition:opacity .4s var(--ease)}.library-ready .floor-node.is-off{opacity:.3}.library-ready [data-node-shadow].is-off{opacity:0}.library-ready [data-node-tag].is-off{opacity:.35}[data-floor]:not(.motion-active) .iso-flow{animation-play-state:paused}.rules{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(2rem,4vw,3.5rem);display:grid}.rules li{border-top:1.5px solid var(--ink);padding:1.1rem 0 1.5rem}.rules h3{font-size:1.1875rem;line-height:1.2}.rules p{color:var(--soft);margin-top:.45rem;line-height:1.45}.limits{gap:0;max-width:52rem;display:grid}.limits li{border-top:1.5px solid var(--rule);align-items:center;gap:1rem;padding:1rem 0;font-size:clamp(1.1rem,1rem + .5vw,1.3rem);font-weight:560;line-height:1.3;display:flex}.limits li:before{content:"";border:.24rem solid var(--acc);background:linear-gradient(-45deg, transparent 44%, var(--acc) 44% 56%, transparent 56%);border-radius:50%;flex:none;width:1.7rem;height:1.7rem}.edge{max-width:62ch;color:var(--soft)}.about-layout{grid-template-columns:minmax(0,.72fr) minmax(0,1.45fr);align-items:center;gap:clamp(2rem,5vw,5rem);display:grid}.about-layout .portrait{max-width:23rem}.about-layout .lead{max-width:44ch;margin-top:1.25rem}.about-layout .story{max-width:60ch;color:var(--soft);margin-top:1.25rem}.about-layout .more{margin-top:1.25rem}.experience>div{border-top:1.5px solid var(--rule);grid-template-columns:minmax(10rem,.42fr) 1fr;gap:.3rem 2.5rem;padding:1rem 0;display:grid}.experience dt{letter-spacing:-.015em;font-size:clamp(1.2rem,1.1rem + .5vw,1.4rem);font-weight:660;font-stretch:106%;line-height:1.15}.experience dd{max-width:60ch;color:var(--soft)}.proof{display:block}.proof-card{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch;display:grid}.proof-card .panel-iso{border-bottom:0;border-right:1.5px solid var(--ink);align-items:center;display:flex}.proof-card .label-body{flex-direction:column;justify-content:center;padding:1.5rem 1.75rem;display:flex}.proof .label-body>*+*{margin-top:.8rem}.panel-title{font-size:clamp(1.3rem,1.15rem + .7vw,1.65rem)}.intro-split{grid-template-columns:minmax(0,1.02fr) minmax(0,1.15fr);align-items:center;gap:clamp(1.75rem,4.5vw,4rem);display:grid}.intro-iso{background:var(--floor-deep);border:1px solid #ffffff24;border-radius:6px;min-width:0;overflow:hidden}.iso-svg{width:100%;height:auto;display:block}@keyframes iso-pulse{to{stroke-dashoffset:-44px}}.iso-flow{animation:2.4s linear infinite iso-pulse}.motion-paused .iso-flow{animation-play-state:paused}.panel-iso{border-bottom:1.5px solid var(--ink);background:var(--floor-deep)}.lost{min-height:calc(100svh - var(--head-h));align-items:center;display:grid}.lost .stencil{color:var(--line-text);margin-bottom:1rem;font-size:clamp(5rem,18vw,12rem);line-height:.8;display:block}.lost .lead{margin-top:1.25rem}.lost .hero-actions a:not(.btn){font-weight:700}@media (width<=1100px){.rules{grid-template-columns:repeat(2,minmax(0,1fr))}.library-layout{grid-template-columns:minmax(0,23rem) minmax(0,1fr)}}@media (width<=900px){.menu-ready .menu-button{display:inline-flex}.menu-ready #site-nav{padding:.5rem var(--gut) 1.5rem;background:var(--floor-deep);border-bottom:1px solid #ffffff38;flex-direction:column;align-items:stretch;gap:0;display:none;position:absolute;inset:100% 0 auto}.menu-ready #site-nav.is-open{display:flex}.menu-ready #site-nav a:not(.btn){letter-spacing:0;border:0;border-bottom:1px solid #fff3;border-radius:0;padding:.9rem 0;font-size:1.125rem}.menu-ready .lang-short{display:none}.menu-ready .lang-long{display:inline}.menu-ready #site-nav .btn{justify-content:space-between;margin-top:1.1rem}.site-header:not(.menu-ready) .header-inner{flex-wrap:wrap;padding-block:.6rem}.site-header:not(.menu-ready) #site-nav{flex-wrap:wrap;gap:.4rem 1.1rem}.home .site-header:has(.is-open){background:var(--floor-deep)}.section-head,.section-head:not(:has(.lead)),.intro-split,.discipline,.dock-layout,.dock--home .dock-layout,.about-layout,.proof-card,.library-layout{grid-template-columns:1fr}.proof-card .panel-iso{border-right:0;border-bottom:1.5px solid var(--ink)}.discipline-copy,.library-stage{position:static}.discipline-copy .lead{max-width:44ch}.portrait,.about-layout .portrait{max-width:13rem}.portrait-photo{border-bottom:1px solid #ffffff2e;margin-bottom:0}.route{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:.6rem .8rem}.route li{padding-right:.5rem}.route-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.route-gate{height:auto;color:var(--line-text);white-space:normal;background:0 0;grid-area:2/1/auto/-1;margin:0;padding:0}.route-gate-short{display:none}.route-gate-mobile{display:inline}.walk-panel{padding:1.2rem 1.15rem 1.25rem}.walk-controls{flex-wrap:nowrap;gap:.5rem 1rem}.walk-controls .btn{white-space:nowrap;padding:.62rem .95rem;font-size:.9375rem}.starts{grid-template-columns:1fr}.library-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.library-tabs [role=tab]{justify-content:center}.library-stage{display:none}.run-card{padding:1rem 1.05rem 1.1rem}.hall-stage:after{display:none}.step--hero h1{font-size:clamp(2rem,8.4vw,3.25rem)}.hall-console{inset:auto var(--gut) 1.25rem auto;gap:.5rem;padding:.5rem .5rem .7rem}.rail{gap:.25rem}.rail a{padding:0}.rail-n{width:2.75rem;height:2.75rem}.rail .rail-name,.rail a:not([aria-current=true]) .rail-name,.hall-ready:not(.is-moving) .rail,.hall-ready:not(.is-moving) .hall-route{display:none}.hall-ready.is-moving .hall-console{inset:calc(var(--head-h) + .6rem) .75rem auto auto}.hall-note{display:none}.hall-motion{width:44px;min-width:44px;height:44px;padding:0}.hall-motion [data-motion-label]{display:none}.hall-ready .step{align-items:flex-end;min-height:120svh;padding:0 .75rem .75rem;display:flex}.hall-ready .step--hero{min-height:94svh;padding:0 var(--gut);background:linear-gradient(180deg, var(--floor) 0%, var(--floor) 34%, #1e605000 56%);align-items:flex-start}.hall-ready .step--out{min-height:120svh}.hall-ready .pin{--pin-ground:var(--floor-deep);background:var(--floor-deep);border-radius:8px;width:100%;padding:1rem 1.05rem 1.05rem;top:auto;bottom:.75rem;box-shadow:0 -10px 30px -12px #041e16cc}.hall-ready .step--hero .pin{padding:calc(var(--head-h) + 1.2rem) 0 0;box-shadow:none;background:0 0;position:static}.step h2{font-size:clamp(1.5rem,6vw,2.1rem)}.was{max-width:none;margin-top:.55rem;font-size:1rem;line-height:1.4}.now{max-width:none;margin-top:.7rem}.now p{padding:.75rem .9rem .85rem;font-size:1rem}.now .label-head{gap:.5rem;min-height:2.2rem}.step--out p{font-size:1rem}}@media (width<=650px){:root{--bar-h:3.75rem}.wordmark{font-size:1.25rem}.lang-note-long{display:none}.footer-main,.example-records>div,.experience>div,.service-grid,.brief-list,.rules{grid-template-columns:1fr}}@media (width<=900px) and (height<=680px){.hall-ready .step--hero{background:var(--floor)}.hall-ready .step:not(.step--hero){min-height:130svh}.rail{gap:.125rem}.hall-ready .pin{padding:.75rem .85rem}.step h2{font-size:1.3rem}.was{margin-top:.45rem;font-size:.9375rem;line-height:1.38}.now{margin-top:.55rem}.now .label-head{min-height:2rem;padding-block:.35rem .3rem}.now p{padding:.6rem .8rem .7rem;font-size:.9375rem;line-height:1.38}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;transition-delay:0s!important;animation-duration:.001ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}}.tom-head{animation:3.2s ease-in-out paused tom-bobble}.motion-active .tom-head{animation-play-state:running}.motion-paused .tom-head{animation-play-state:paused}@keyframes tom-bobble{0%,to{transform:rotate(0)}25%{transform:rotate(-.8deg)}70%{transform:rotate(.8deg)}}@media (prefers-reduced-motion:reduce){.tom-head{animation:none;transform:none}}
