/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--spacing:.25rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-lg:.5rem;--radius-2xl:1rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Manrope,system-ui,sans-serif;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:JetBrains Mono,Fira Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{.editor-btn{justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-lg);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--border) / 1);background-color:rgb(var(--surface-overlay) / 1);padding-inline:calc(var(--spacing) * 5);padding-block:calc(var(--spacing) * 3);font-family:Manrope,system-ui,sans-serif;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:rgb(var(--text) / 1);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;text-decoration-line:none;transition-duration:.2s;display:inline-flex}@media (hover:hover){.editor-btn:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y);border-color:rgb(var(--accent-primary) / 1);color:rgb(var(--accent-primary) / 1)}}.editor-btn:active{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y);scale:.98}}@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:0}.left-0{left:0}.isolate{isolation:isolate}.z-10{z-index:10}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.h-5{height:calc(var(--spacing) * 5)}.h-24{height:calc(var(--spacing) * 24)}.min-h-screen{min-height:100vh}.w-5{width:calc(var(--spacing) * 5)}.w-24{width:calc(var(--spacing) * 24)}.w-full{width:100%}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.rotate-0{rotate:0deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-editor{border-radius:4px}.rounded-full{border-radius:2147483647px}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-b-\[18px\]{border-bottom-style:var(--tw-border-style);border-bottom-width:18px}.border-editor-border{border-color:rgb(var(--border) / 1)}.border-editor-panel{border-color:rgb(var(--surface-raised) / 1)}.bg-editor-bg{background-color:rgb(var(--surface) / 1)}.bg-editor-header{background-color:rgb(var(--surface-overlay) / 1)}.bg-editor-panel{background-color:rgb(var(--surface-raised) / 1)}.object-cover{object-fit:cover}.p-4{padding:calc(var(--spacing) * 4)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.text-center{text-align:center}.font-display{font-family:Outfit,Manrope,system-ui,sans-serif}.font-mono{font-family:JetBrains Mono,Fira Mono,Menlo,monospace}.\!text-3xl{font-size:var(--text-3xl)!important;line-height:var(--tw-leading,var(--text-3xl--line-height))!important}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.text-accent-cyan{color:rgb(var(--accent-primary) / 1)}.text-accent-pink{color:rgb(var(--accent-tertiary) / 1)}.text-editor-comment{color:rgb(var(--text-muted) / 1)}.text-editor-text{color:rgb(var(--text) / 1)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-editor{--tw-shadow:0 2px 16px 0 var(--tw-shadow-color,#0000002e);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.select-none{-webkit-user-select:none;user-select:none}.block-1{block-size:var(--spacing)}@media (hover:hover){.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:z-10:hover{z-index:10}.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-accent-cyan:hover{border-color:rgb(var(--accent-primary) / 1)}}.focus-visible\:scale-105:focus-visible{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-accent-cyan:focus-visible{outline-color:rgb(var(--accent-primary) / 1)}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--surface:10 14 23;--surface-raised:18 24 36;--surface-overlay:24 31 44;--border:57 70 88;--text:242 241 232;--text-muted:151 163 177;--accent-primary:139 207 190;--accent-secondary:154 167 196;--accent-tertiary:198 126 108;--accent-success:139 207 190;--accent-warm:218 184 122;--scene-sky:#090d16;--scene-wall:#1d2637;--scene-wall-accent:#263247;--scene-floor:#111827;--scene-floor-accent:#1b2536;--scene-wood:#465469;--scene-wood-dark:#303c4e;--scene-metal:#8491a3;--scene-leaf:#5f9f8a;--scene-leaf-dark:#3e705f;--scene-pot:#93695f;--scene-fabric:#4f5d79;--scene-mat:#6e718f;--scene-frame:#526078;--scene-paper:#e7e4d8;--scene-ink:#273243;--scene-shade:#8793bd;--scene-screen:#0d1420;--scene-screen-text:#8bcfbe;--scene-glow:#dfc47f;--scene-glow-soft:#dfc47f24;--scene-shadow:#02060e85;--scene-outline:#050a149e;--scene-highlight:#f2f1e81a}@font-face{font-family:Outfit;src:url(/assets/outfit-latin-D6ftewdU.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:Manrope;src:url(/assets/manrope-latin-C46ZzDBF.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/assets/jetbrains-mono-latin-Db4Uuiha.woff2)format("woff2");font-style:normal;font-weight:400 500;font-display:swap}:root{font-synthesis:none;text-rendering:optimizelegibility}:where(html,body,#root,#root *){touch-action:pan-x pan-y}html{scrollbar-gutter:stable;background:rgb(var(--surface));max-width:100%;overflow:clip auto}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;max-width:100%;color:rgb(var(--text));background:radial-gradient(circle at 80% 0%, rgb(var(--accent-primary) / .05), transparent 34rem), rgb(var(--surface));margin:0;font-family:Manrope,system-ui,sans-serif;overflow-x:clip}body:before{z-index:100;pointer-events:none;content:"";opacity:.035;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E");position:fixed;inset:0}#root{min-height:100dvh}::selection{color:rgb(var(--surface));background:rgb(var(--accent-primary))}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:rgb(var(--surface))}::-webkit-scrollbar-thumb{border:2px solid rgb(var(--surface));background:rgb(var(--text-muted) / .45);border-radius:999px}*{scrollbar-width:thin;scrollbar-color:rgb(var(--text-muted) / .45) rgb(var(--surface))}h1,h2,h3,h4,h5,h6{color:rgb(var(--text));letter-spacing:-.035em;text-wrap:balance;font-family:Outfit,Manrope,system-ui,sans-serif}p{text-wrap:pretty}a,button{-webkit-tap-highlight-color:transparent}a{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;transition-duration:.2s}code,.code,.json-syntax,.comment,.section-comment,.markdown-heading,.markdown-subheading{font-family:JetBrains Mono,ui-monospace,monospace}code,.code,.json-syntax{color:rgb(var(--accent-primary));background:rgb(var(--surface-raised));border-radius:.3rem}.comment,.section-comment{color:rgb(var(--text-muted))}.syntax-key,.syntax-boolean{color:rgb(var(--accent-primary))}.syntax-string{color:rgb(var(--accent-success))}.syntax-number,.syntax-null{color:rgb(var(--accent-warm))}.container{width:min(100%,90rem);margin-inline:auto;padding-inline:clamp(1.25rem,3vw,3rem)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:50;border-bottom:1px solid rgb(var(--border) / .55);background:rgb(var(--surface) / .9);-webkit-backdrop-filter:blur(18px)saturate(120%);backdrop-filter:blur(18px)saturate(120%);height:4.5rem;position:sticky;top:0}.site-header--scene{background:linear-gradient(to bottom, rgb(var(--surface) / .88), transparent);-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;border-bottom-color:#0000;position:relative}.site-header__inner{justify-content:space-between;align-items:center;width:100%;height:100%;margin-inline:auto;padding-left:clamp(1.5rem,5vw,5rem);padding-right:clamp(1.5rem,4vw,4rem);display:flex;position:relative}.site-header__inner>*{pointer-events:auto}.site-brand{min-width:2.75rem;min-height:2.75rem;color:rgb(var(--text));align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.site-brand__mark{border:1px solid rgb(var(--accent-primary) / .55);width:2.25rem;height:2.25rem;color:rgb(var(--accent-primary));background:rgb(var(--surface-raised) / .72);letter-spacing:-.08em;border-radius:.6rem;place-items:center;font-family:JetBrains Mono,monospace;font-size:.78rem;font-weight:500;display:grid;box-shadow:inset 0 1px #ffffff14}.site-brand__logo{flex:none;width:2.25rem;height:2.25rem;display:block}.site-brand__copy{line-height:1.15;display:grid}.site-brand__copy strong{letter-spacing:-.02em;font-family:Outfit,sans-serif;font-size:1rem;font-weight:600}.site-brand__copy span{color:rgb(var(--text-muted));letter-spacing:.04em;text-transform:uppercase;margin-top:.2rem;font-family:JetBrains Mono,monospace;font-size:.75rem}.site-header__desktop-links{align-items:center;gap:.45rem;display:flex}.site-icon-link,.site-menu-button{width:2.5rem;height:2.5rem;color:rgb(var(--text-muted));border:1px solid #0000;border-radius:.65rem;place-items:center;transition:all .18s;display:grid}.site-icon-link:hover,.site-menu-button:hover{border-color:rgb(var(--border) / .7);color:rgb(var(--text));background:rgb(var(--surface-raised) / .8)}.site-resume-link{border:1px solid rgb(var(--border) / .8);height:2.5rem;color:rgb(var(--text));background:rgb(var(--surface-raised) / .72);border-radius:.65rem;align-items:center;gap:.45rem;margin-left:.35rem;padding-inline:.9rem;font-size:.84rem;font-weight:600;text-decoration:none;display:inline-flex}.site-resume-link:hover{border-color:rgb(var(--accent-primary) / .7);color:rgb(var(--accent-primary))}.site-menu-button,.site-mobile-menu{display:none}.site-mobile-menu{border:1px solid rgb(var(--border) / .85);opacity:0;background:rgb(var(--surface-raised) / .98);transform-origin:100% 0;visibility:hidden;border-radius:.9rem;width:min(18rem,100vw - 2rem);padding:.45rem;transition:all .18s;position:absolute;top:calc(100% + .5rem);right:1rem;transform:translateY(-.5rem)scale(.98);box-shadow:0 1.5rem 4rem #02060e73}.site-mobile-menu.is-open{opacity:1;visibility:visible;transform:none}.site-mobile-menu a{color:rgb(var(--text));border-radius:.6rem;grid-template-columns:1.25rem 1fr auto;align-items:center;gap:.75rem;padding:.8rem .85rem;text-decoration:none;display:grid}.skip-link{z-index:120;border:1px solid rgb(var(--accent-primary));color:rgb(var(--surface));opacity:0;background:rgb(var(--accent-primary));pointer-events:none;border-radius:.5rem;padding:.7rem .9rem;font-size:.82rem;font-weight:700;position:fixed;top:.75rem;left:.75rem;transform:translateY(calc(-100% - 2rem))}.skip-link:focus{opacity:1;pointer-events:auto;transform:none}.site-footer{border-top:1px solid rgb(var(--border) / .6);background:rgb(var(--surface))}.site-footer__inner{width:min(100% - 2.5rem,82rem);min-height:6rem;color:rgb(var(--text-muted));letter-spacing:.05em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1.5rem;margin-inline:auto;font-family:JetBrains Mono,monospace;font-size:.75rem;display:flex}.site-footer__inner p{margin:0}.site-footer__links{align-items:center;gap:1.2rem;display:flex}.site-footer__links a{color:rgb(var(--text-muted))}.site-footer__links a:hover{color:rgb(var(--accent-primary))}:where(a,button,summary,[tabindex]):focus-visible{outline:2px solid rgb(var(--accent-primary));outline-offset:3px}.not-found-page{isolation:isolate;place-items:center;min-height:clamp(36rem,100vh - 9rem,58rem);padding:clamp(4rem,9vw,8rem) 1.5rem;display:grid;position:relative;overflow:hidden}.not-found-page:before{z-index:-2;aspect-ratio:1;border:1px solid rgb(var(--border) / .28);content:"";border-radius:50%;width:min(90vw,68rem);position:absolute}.not-found-page:after{z-index:-3;aspect-ratio:1;background:rgb(var(--accent-primary) / .055);width:min(38rem,75vw);box-shadow:0 0 9rem rgb(var(--accent-primary) / .08);content:"";border-radius:50%;position:absolute}.not-found-orbit{z-index:-1;aspect-ratio:1;border:1px solid rgb(var(--border) / .5);border-radius:50%;width:min(62vw,46rem);position:absolute;transform:rotate(-14deg)}.not-found-orbit span{aspect-ratio:1;background:rgb(var(--accent-primary));width:clamp(.55rem,1vw,.85rem);box-shadow:0 0 1.5rem rgb(var(--accent-primary) / .8);border-radius:50%;position:absolute;top:20%;right:3.5%}.not-found-content{text-align:center;flex-direction:column;align-items:center;width:min(100%,48rem);display:flex}.not-found-kicker{color:rgb(var(--accent-primary));letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:.7rem;margin:0 0 1.5rem;font-family:JetBrains Mono,monospace;font-size:.72rem;display:flex}.not-found-kicker>span{background:currentColor;width:2.2rem;height:1px}.not-found-content h1{letter-spacing:-.065em;margin:0;font-family:Outfit,sans-serif;font-size:clamp(3.4rem,9vw,8rem);font-weight:500;line-height:.84}.not-found-content h1 span{color:rgb(var(--text-muted));display:block}.not-found-copy{max-width:34rem;color:rgb(var(--text-muted));margin:2rem auto 0;font-size:clamp(1rem,1.7vw,1.2rem);line-height:1.7}.not-found-path{max-width:min(100%,32rem);color:rgb(var(--text-muted) / .7);text-overflow:ellipsis;white-space:nowrap;margin-top:1.25rem;font-size:.7rem;overflow:hidden}.not-found-action{min-height:3rem;margin-top:2rem}@media (width<=719px){html{scrollbar-gutter:auto}.site-header{height:4rem}.site-header__inner{padding-inline:1rem}.site-brand__copy,.site-header__desktop-links{display:none}.site-menu-button{width:2.75rem;height:2.75rem;display:grid}.site-mobile-menu{display:block}.site-footer__inner{flex-direction:column;justify-content:center;align-items:flex-start;gap:.6rem;min-height:7rem}.site-footer__links{flex-direction:column;align-items:flex-start;gap:.45rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.static-chapter-links{display:none}.architecture-foot a{text-underline-offset:.2em;margin-inline-start:1rem;text-decoration:underline}.architecture-nav a,.architecture-primary{align-items:center;text-decoration:none;display:inline-flex}#update-notice{z-index:200;color:#edf2dd;background:#203b30;border:1px solid #a6bd92;padding:1rem;position:fixed;inset:auto 1rem 1rem}#update-notice a{text-decoration:underline}@media (forced-colors:active){:is(a,button,input):focus-visible{outline:2px solid highlight}:is(button,input){border:1px solid buttontext}.blob-pet{display:none!important}}@media print{html,body,#root,#main-content{color:#000!important;background:#fff!important;height:auto!important;overflow:visible!important}.site-header,.architecture-exhibit,.architecture-dock,.project-diorama,.architecture-controls,.case-study__next,.blob-pet{display:none!important}.case-study,.case-study__hero,.architecture-page,.architecture-layout,.world-carousel__viewport,.world-carousel__slide[data-active=true]{width:auto!important;height:auto!important;display:block!important;overflow:visible!important}p,h1,h2,h3,a,li{color:#000!important}h1,h2,h3{break-after:avoid}img{max-width:100%}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}:root{--surface:12 18 39;--surface-raised:25 33 52;--text:231 238 243;--text-muted:183 180 193;--accent-primary:181 205 173;--accent-secondary:185 180 218;--border:79 83 106;--scene-sky:#0c1227;--paper-night:linear-gradient(#080f20d9, #080f20d9), url(/assets/paper/fine-stock-v2.webp) center/640px;--paper-slate:url(/assets/paper/fine-stock-v2.webp);--paper-ivory:var(--paper-slate);--paper-sage:url(/assets/paper/button-sage.jpg);--exhibit-button-bg:#223a2e;--exhibit-button-hover:#36503d;--exhibit-button-text:#dce8ce;--paper-lavender:url(/assets/paper/button-lavender.jpg)}body:before{display:none}.site-header,.site-header--scene{background:var(--paper-night);-webkit-backdrop-filter:none;backdrop-filter:none;border:0}.site-brand__mark{color:#36413b;background:var(--paper-sage) center/100% 100%;box-shadow:none;border:0;border-radius:2px;transform:none}.site-brand__copy span{letter-spacing:.06em;color:#bcb5c3;font-size:.59rem}.site-icon-link,.site-menu-button{color:#d0c6b7;border-radius:2px}.site-icon-link:hover,.site-menu-button:hover{background:var(--exhibit-button-hover);color:var(--exhibit-button-text);border-color:#0000}.site-resume-link,.editor-btn{color:#35423d;background:var(--paper-sage) center/100% 100%;border:0;border-radius:2px;box-shadow:0 3px #050a1940}.site-resume-link:hover,.editor-btn:hover{color:#25352c;transform:translateY(-2px)}.site-mobile-menu{--text:43 49 60;--text-muted:89 90 97;background:var(--paper-ivory) center/100% 100%;border:0;border-radius:3px;padding:12px;box-shadow:5px 7px #05091560}.site-mobile-menu a:hover{background:var(--paper-sage) center/100% 100%}.site-footer{background:0 0;border-color:#c3b48b28}.project-cover{background:var(--paper-lavender) center/100% 100%!important;border-radius:1px!important}.project-cover__grid,.project-cover__orbit{display:none!important}.project-cover__window{background:var(--paper-ivory) center/100% 100%!important;border:7px solid #61778a!important;border-radius:1px!important;transform:none!important;box-shadow:3px 6px #1e203330!important}.project-cover__toolbar{color:#d7e2e9!important;background:#3c5062!important;border:0!important}.project-cover__toolbar span{background:#b4bea6!important}.project-cover__meta{color:#d0dfe7!important}.project-cover__canvas img{object-fit:contain!important}.paper-content .skill-chip,.paper-content .contact-link{background:var(--paper-sage) center/100% 100%;border-radius:2px}.paper-content details,.paper-content .trophy-list>div{background-image:url(/assets/paper/fiber.jpg);background-size:350px;border-radius:2px!important}[role=dialog][aria-modal=true]{background:var(--paper-night)}[role=dialog][aria-modal=true] button{background:var(--exhibit-button-bg)!important;color:var(--exhibit-button-text)!important;border:1px solid #839b7844!important;border-radius:2px!important}[role=dialog][aria-modal=true] button svg{color:inherit!important}[role=dialog][aria-modal=true] button:is(:hover,:focus-visible):not(:disabled){background:var(--exhibit-button-hover)!important}[role=dialog][aria-modal=true] button[aria-pressed=true]{box-shadow:inset 0 0 0 1px #b8cd99;background:var(--exhibit-button-hover)!important}:where(a,button,summary,[tabindex]):focus-visible{outline-offset:4px;outline:3px solid #d6b87d}@media (width<=759px){.site-header__inner{padding-inline:5%}.site-brand__copy{display:grid}.site-brand__copy strong{font-size:.84rem}.site-brand__copy span{font-size:.53rem}}.site-header__inner{padding-inline:clamp(1rem,5vw,4rem)}.paper-content .trophy-list>li,.paper-content .space-station-card--contact-links li>a,.paper-content .station-bio__skills>span{background:var(--paper-sage) center/100% 100%;border:0;border-radius:2px;box-shadow:0 2px #a79c8030}.paper-content .space-station-card--lessons button{background:var(--paper-sage) center/100% 100%;color:#334539;border:0;border-radius:2px}.site-mobile-menu{--text:231 238 243;--text-muted:191 204 216;--accent-primary:172 207 189;--border:98 122 143}.paper-content{--text:231 238 243;--text-muted:191 204 216;--surface:34 49 64;--surface-raised:43 61 77;--surface-overlay:47 67 83;--border:98 122 143;--accent-primary:172 207 189;--accent-success:172 207 189;--scene-frame:#648292}.paper-content .station-title,.paper-content .station-subtitle{color:#e6edf1}.paper-content .trophy-list>li,.paper-content .space-station-card--contact-links li>a,.paper-content .station-bio__skills>span{background-blend-mode:multiply;color:#e0efe8;box-shadow:none;background:#294b4b url(/assets/paper/fiber.jpg) 50%/320px;border:1px solid #779c9466}.paper-content .trophy-list strong,.paper-content .space-station-card--contact-links strong{color:#e0efe8}.paper-content .trophy-list span,.paper-content .space-station-card--contact-links span{color:#bfd4d2}.typewriter-text__word{vertical-align:baseline;max-width:100%;display:inline-block;position:relative}.typewriter-text__visual{white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;display:none;position:absolute;inset:0;overflow:clip}.typewriter-text[data-typing] .typewriter-text__word[data-pending=true]>.typewriter-text__source{opacity:0}.typewriter-text[data-typing] .typewriter-text__word[data-pending=true]>.typewriter-text__visual{display:block}@media (prefers-reduced-motion:reduce),print{.typewriter-text .typewriter-text__word>.typewriter-text__source{opacity:1!important}.typewriter-text .typewriter-text__word>.typewriter-text__visual{display:none!important}}.project-cover{color:#d9e7e8;isolation:isolate;background:radial-gradient(circle at 74% 18%,#6dc9c72e,#0000 31%),linear-gradient(145deg,#101a22 0%,#0a1018 58%,#111b24 100%);width:100%;height:100%;min-height:8rem;display:block;position:relative;overflow:hidden}.project-cover:after{z-index:5;pointer-events:none;content:"";background:radial-gradient(circle at var(--cover-pointer-x,68%) var(--cover-pointer-y,24%), #ffffff1a, transparent 30%), linear-gradient(115deg, #ffffff12, transparent 21% 72%, #ffffff06);mix-blend-mode:screen;position:absolute;inset:0}.project-cover__grid{z-index:-1;opacity:.38;background-image:linear-gradient(#8ecac917 1px,#0000 1px),linear-gradient(90deg,#8ecac917 1px,#0000 1px);background-size:2.25rem 2.25rem;position:absolute;inset:0;-webkit-mask-image:linear-gradient(to bottom right,#000,#0000 78%);mask-image:linear-gradient(to bottom right,#000,#0000 78%)}.project-cover__orbit{z-index:-1;border:1px solid #8dd3d029;border-radius:50%;position:absolute;transform:rotate(-16deg)}.project-cover__orbit--one{aspect-ratio:1;width:72%;top:-42%;right:-25%}.project-cover__orbit--two{aspect-ratio:1;width:48%;bottom:-47%;right:-11%}.project-cover__window{z-index:2;transform-origin:50%;background:#dfe6e7;border:1px solid #cae5e538;border-radius:.55rem;grid-template-rows:auto 1fr;transition:transform .5s cubic-bezier(.22,1,.36,1);display:grid;position:absolute;inset:10% 9% 14%;overflow:hidden;transform:perspective(70rem)rotateX(1.5deg)rotateY(-2.5deg)rotate(-.45deg);box-shadow:0 1.4rem 3rem #00000061,inset 0 1px #fff9}.project-cover:hover .project-cover__window{transform:perspective(70rem)rotateX(0)rotateY(0)rotate(0)scale(1.012)}.project-cover__toolbar{color:#627078;letter-spacing:.08em;text-transform:uppercase;background:#f1f4f4;align-items:center;gap:.25rem;height:1.35rem;padding-inline:.45rem;font-family:JetBrains Mono,monospace;font-size:.58rem;display:flex}.project-cover__toolbar>span{border:1px solid #8a999d;border-radius:50%;width:.28rem;height:.28rem}.project-cover__toolbar b{margin-left:auto;font-weight:500}.project-cover__canvas{background:#dfe6e7;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.project-cover__canvas img{object-fit:contain;object-position:center;width:100%;min-width:0;height:100%;min-height:0;padding:0;display:block;position:absolute;inset:0}.project-cover__meta{z-index:3;color:#d6e7e8c2;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:1rem;font-family:JetBrains Mono,monospace;font-size:clamp(.56rem,.7vw,.64rem);display:flex;position:absolute;bottom:.48rem;left:.75rem;right:.75rem}.project-cover--site-dna{background:radial-gradient(circle at 74% 18%,#e46f5833,#0000 31%),linear-gradient(145deg,#181714 0%,#0e0f0d 58%,#1c1916 100%)}.project-cover--site-dna .project-cover__grid{background-image:linear-gradient(#e46f5814 1px,#0000 1px),linear-gradient(90deg,#e46f5814 1px,#0000 1px)}.project-cover--site-dna .project-cover__orbit{border-color:#e46f582e}.project-cover--site-dna .project-cover__canvas{background:#10110f}@media (prefers-reduced-motion:reduce){.project-cover__window{transition:none}}.exhibit-story{grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;display:grid}.exhibit-story.is-project-story{grid-template-rows:30px minmax(0,1fr);padding-top:15px}.exhibit-back{color:#c5d5b7;align-self:center;width:max-content;font-size:12px}.exhibit-back:hover{color:#fff}.architecture-view.is-object-exhibit:not(.has-exhibit-controls) .architecture-canvas{bottom:60px}.architecture-view.has-exhibit-controls .architecture-canvas{bottom:166px}.architecture-view.has-exhibit-controls.is-expanded .architecture-canvas{bottom:188px}.exhibit-console{z-index:3;border-top:1px solid #9eaf9830;padding:10px 6px 0;position:absolute;inset:auto 8px 60px}.exhibit-console__inputs{justify-content:center;align-items:center;gap:10px 18px;display:flex}.exhibit-slider{color:#d4e0ca;flex:140px;gap:4px;min-width:0;max-width:260px;font-size:11px;display:grid}.exhibit-slider input{cursor:ew-resize;accent-color:#c7d9ae;width:100%;height:26px;margin:0;padding:0}.exhibit-console button,.exhibit-console a{color:#d6e4c7;cursor:pointer;white-space:nowrap;background:#1d302b;border:1px solid #82957870;border-radius:2px;min-height:38px;padding:8px 12px;font:500 11px/1.4 Manrope,sans-serif}.exhibit-console button:disabled{opacity:.5;cursor:wait}.exhibit-console button:hover,.exhibit-console button[aria-pressed=true]{color:#192b25;background:#c0d0a9}.exhibit-readout{text-align:center;color:#a6baac;min-height:15px;margin:7px 0 0;font:10px/1.5 JetBrains Mono,monospace}.exhibit-choices{flex-shrink:0;gap:3px;display:flex}.exhibit-choices button{padding-inline:8px}.architecture-view.is-expanded .exhibit-console{bottom:82px;left:24px;right:24px}.architecture-canvas{touch-action:pan-y}.architecture-view.is-expanded .architecture-canvas{touch-action:none}@media (width<=719px){.exhibit-story.is-project-story{grid-template-rows:23px minmax(0,1fr);padding-top:5px}.exhibit-back{font-size:10px}.architecture-view.has-exhibit-controls .architecture-canvas{bottom:132px}.architecture-view.is-object-exhibit:not(.has-exhibit-controls) .architecture-canvas{bottom:44px}.exhibit-console{padding-top:5px;inset:auto 0 45px}.exhibit-console__inputs{gap:7px}.exhibit-slider{gap:0;font-size:10px}.exhibit-console button,.exhibit-console a{min-height:32px;padding:6px 8px;font-size:10px}.exhibit-choices{gap:2px}.exhibit-choices button{padding:5px;font-size:9px}.exhibit-readout{margin-top:3px;font-size:8px}.architecture-case.case-study .project-diorama{height:390px}}@media (height<=640px) and (width<=719px){.architecture-page.is-section .architecture-layout{grid-template-rows:minmax(130px,.85fr) minmax(200px,1.15fr)}}.architecture-view.is-object-exhibit.has-exhibit-controls{grid-template-rows:minmax(0,1fr) auto 60px;display:grid}.architecture-view.is-object-exhibit.has-exhibit-controls .architecture-canvas{grid-row:1;width:100%;height:100%;min-height:0;position:relative;inset:auto}.architecture-view.is-object-exhibit.has-exhibit-controls .exhibit-console{grid-row:2;margin:0 8px;padding-bottom:8px;position:relative;inset:auto}.architecture-view.is-object-exhibit.has-exhibit-controls.is-expanded{grid-template-rows:65px minmax(0,1fr) auto 78px}.architecture-view.is-object-exhibit.has-exhibit-controls.is-expanded .architecture-canvas{grid-row:2}.architecture-view.is-object-exhibit.has-exhibit-controls.is-expanded .exhibit-console{grid-row:3;margin-inline:24px}@media (width<=719px){.architecture-view.is-object-exhibit.has-exhibit-controls{grid-template-rows:minmax(0,1fr) auto 44px}.architecture-view.is-object-exhibit.has-exhibit-controls .exhibit-console{margin-inline:0;padding-bottom:7px}.architecture-view.is-object-exhibit.has-exhibit-controls.is-expanded{grid-template-rows:65px minmax(0,1fr) auto 78px}}@media (prefers-reduced-motion:reduce){.architecture-page .world-carousel__slide[data-active=true]{animation:none}}@media (height<=500px) and (width>=720px){.architecture-page{grid-template-rows:40px minmax(0,1fr) auto 24px}.architecture-exhibit{grid-template-rows:24px minmax(0,1fr)}.architecture-view.is-object-exhibit.has-exhibit-controls{grid-template-rows:minmax(0,1fr) auto 44px}.architecture-view.is-object-exhibit.has-exhibit-controls .exhibit-console{padding-top:4px;padding-bottom:5px}.exhibit-console button,.exhibit-console a{min-height:28px;padding:5px 8px;font-size:10px}.exhibit-slider{gap:0;font-size:10px}.exhibit-slider input{height:23px}.exhibit-readout{margin-top:3px;font-size:9px}.architecture-view.has-exhibit-controls .architecture-controls{padding-top:4px;bottom:2px}.architecture-view.is-object-exhibit.has-exhibit-controls.is-expanded{grid-template-rows:50px minmax(0,1fr) auto 48px}}.paper-stage .world-carousel .orbit-project-card{min-height:270px;color:inherit;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:36px;padding:0;display:grid;height:auto!important}.world-carousel .orbit-project-card:hover{transform:none}.paper-stage .world-carousel .orbit-project-card__media{width:100%;height:290px;margin:0;transform:none}.paper-stage .world-carousel .orbit-project-card__content{flex-direction:column;gap:0;min-width:0;padding:0;display:flex}.world-carousel .orbit-project-card__heading{gap:16px;margin:10px 0 0}.paper-stage .world-carousel .orbit-project-card__heading strong{letter-spacing:-.04em;color:#f0f3ee;font-size:clamp(2rem,3vw,2.8rem);line-height:1.06}.world-carousel .orbit-project-card__heading>span{flex:none;width:40px;height:40px}.world-carousel .orbit-project-card__tier{color:#a8bac6;font-size:.66rem}.paper-stage .world-carousel .orbit-project-card__description{color:#c7d5df;margin-top:22px;font-size:.98rem;line-height:1.75;display:block}.paper-stage .world-carousel .orbit-project-card__tech{color:#b2c7ce;border-top:1px solid #7b8d9955;margin-top:28px;padding-top:16px;font-size:.66rem;line-height:1.7}.world-carousel .project-cover{background:#17222d!important}.world-carousel .project-cover__window{grid-template-rows:1fr;inset:0;box-shadow:none!important;border:0!important;transform:none!important}.world-carousel .project-cover__toolbar,.world-carousel .project-cover__meta{display:none}.paper-stage.is-projects[data-journey=departing] .world-carousel{pointer-events:none}.paper-stage.is-projects[data-journey=departing] .world-carousel__viewport{opacity:0;transition:opacity .25s,transform .45s;transform:translateY(-16px)}@media (width<=759px){.paper-stage .world-carousel .orbit-project-card{grid-template-columns:1fr;gap:24px}.paper-stage .world-carousel .orbit-project-card__media{aspect-ratio:16/10;height:auto}.paper-stage .world-carousel .orbit-project-card__heading strong{font-size:2.05rem}.paper-stage .world-carousel .orbit-project-card__description{margin-top:16px;font-size:.9rem}.paper-stage .world-carousel .orbit-project-card__tech{margin-top:20px}}.paper-stage.is-docked:not(.is-sun) .world-carousel{-webkit-user-select:text;user-select:text;align-self:start;width:min(100%,1120px);margin:30px 0 72px;padding:0;display:block}.world-carousel__header{justify-content:space-between;align-items:center;gap:24px;padding:0 0 22px;display:flex}.world-carousel__heading :is(h1,h2){color:#edf0ec;letter-spacing:-.045em;margin:0;font-size:clamp(1.7rem,2.8vw,2.3rem);line-height:1.1}.world-carousel__heading p{color:#adbdc9;margin:8px 0 0;font-size:.8rem}.paper-stage .world-carousel .space-stepper{flex-shrink:0;gap:8px;width:auto;margin:0;padding:0;display:flex;position:static;inset:auto;transform:none}.paper-stage .world-carousel .space-stepper__status{text-align:left;min-width:70px;padding-right:12px}.paper-stage .world-carousel .space-stepper__status b{color:#e1e9e7;font-size:.76rem;font-weight:400}.paper-stage .world-carousel .space-stepper__status b span{color:#8a9aa9}.paper-stage .world-carousel .space-stepper button{color:#d6e1df;background:var(--paper-slate) center/240px;width:48px;height:48px;box-shadow:none;border:1px solid #73838d88;border-radius:0;place-items:center;transition:background-color .18s,color .18s,border-color .18s;display:grid;transform:none}.paper-stage .world-carousel .space-stepper button svg{width:20px;height:20px}.paper-stage .world-carousel .space-stepper button:hover{border-color:var(--world-accent);color:var(--world-accent)}.world-carousel__tabs{overscroll-behavior-x:contain;scrollbar-width:none;border-bottom:1px solid #72858f66;gap:4px;width:100%;padding:0 0 1px;display:flex;position:relative;overflow-x:auto}.world-carousel__tabs::-webkit-scrollbar{display:none}.world-carousel__tabs button{white-space:nowrap;color:#aabac6;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;align-items:center;gap:12px;min-height:54px;padding:14px 22px;font-size:.83rem;transition:color .18s,background-color .18s;display:flex}.world-carousel__tabs button>span{opacity:.7;font:10px JetBrains Mono,monospace}.world-carousel__tabs button[aria-selected=true]{color:#ecf0e9;background:var(--paper-slate) center/360px;border-bottom-color:var(--world-accent)}.world-carousel__tabs button:hover{color:#f0f4ee;background-color:#29374566}.world-carousel button:focus-visible,.world-carousel a:focus-visible{outline:2px solid var(--world-accent);outline-offset:-4px}.world-carousel__viewport{height:var(--slide-height,420px);touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:grab;margin-top:16px;padding:0;transition:height .28s cubic-bezier(.2,.7,.2,1);position:relative;overflow:clip;-webkit-mask-image:linear-gradient(90deg,#0000,#000 3px calc(100% - 3px),#0000);mask-image:linear-gradient(90deg,#0000,#000 3px calc(100% - 3px),#0000)}.world-carousel__viewport:active{cursor:grabbing}.world-carousel__slide{background:var(--paper-slate) center/640px;width:100%;height:auto;min-height:350px;box-shadow:none;will-change:transform;visibility:hidden;border:1px solid #70848f70;border-bottom:3px solid #78938d88;padding:clamp(28px,4vw,48px);position:absolute;inset:0 auto auto 0;transform:translate(110%)}.world-carousel__slide:before{display:none}.world-carousel__slide[data-active=true]{visibility:visible;border-color:#70848f70;border-bottom-color:var(--world-accent);box-shadow:none;transform:none}.paper-stage .world-carousel .space-station-card{max-height:none;padding:0;overflow:visible}.world-carousel .station-title{letter-spacing:-.05em;margin:0;font-size:clamp(2.3rem,4.5vw,3.8rem);line-height:1.05}.world-carousel .station-subtitle{letter-spacing:-.035em;font-size:clamp(1.65rem,3vw,2.4rem);line-height:1.15}.world-carousel .station-eyebrow{color:var(--world-accent);margin-bottom:24px;font-size:.7rem}.world-carousel .station-lede{max-width:43ch;margin-top:22px;font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.7}.world-carousel .station-footnote{color:#a9bbc6;margin-top:32px;font-size:.74rem}.world-carousel .space-station-card>p:not([class*=station-]){max-width:65ch;margin-top:24px;font-size:1rem;line-height:1.8}.world-carousel .station-bio__top{grid-template-columns:180px 1fr;align-items:center;gap:32px;display:grid}.world-carousel .station-bio__portrait{border:0;border-radius:0;width:180px;height:180px}.world-carousel .station-bio__copy{max-width:44ch;font-size:1.15rem;line-height:1.75}.world-carousel .station-bio__skills{border-top:1px solid #71808d55;gap:0;margin-top:32px;padding-top:16px}.world-carousel .station-bio__skills>li{color:#cddbd6;background:0 0;border:0;border-radius:0;margin-right:14px;padding:7px 14px 7px 0;font-size:.76rem}.world-carousel .trophy-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin-top:26px;display:grid}.world-carousel .trophy-list li{background:0 0;border:0;border-bottom:1px solid #788b9860;border-radius:0;align-items:baseline;gap:16px;padding:17px 0;font-size:.88rem;line-height:1.6;display:flex}.world-carousel .trophy-list__number{color:var(--world-accent);flex:none;font:10px JetBrains Mono,monospace}.world-carousel details{background:0 0;border:0;border-bottom:1px solid #74899566;border-radius:0}.world-carousel details summary{color:#dbe5e8;min-height:56px;padding:16px 0;font-size:.95rem}.world-carousel details[open] summary{color:var(--world-accent)}.world-carousel details p{max-width:72ch;padding:0 0 22px 18px;font-size:.9rem}.world-carousel .lesson-accordion__item>summary{font-size:var(--portfolio-body,16px);justify-content:space-between;align-items:center;gap:18px;line-height:1.5;list-style:none;display:flex}.lesson-accordion__item>summary::-webkit-details-marker{display:none}.lesson-accordion__chevron{width:18px;height:18px;color:var(--world-accent);flex:none;transition:transform .34s cubic-bezier(.22,1,.36,1)}.lesson-accordion__item[data-open=true] .lesson-accordion__chevron,.lesson-accordion__item[open]:not([data-enhanced]) .lesson-accordion__chevron{transform:rotate(180deg)}.lesson-accordion__panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .36s cubic-bezier(.22,1,.36,1),opacity .22s;display:grid}.lesson-accordion__item[data-open=true] .lesson-accordion__panel,.lesson-accordion__item[open]:not([data-enhanced]) .lesson-accordion__panel{opacity:1;grid-template-rows:1fr}.lesson-accordion__panel-inner{min-height:0;overflow:clip}.world-carousel .lesson-accordion__body{gap:1em;padding:0 0 24px;display:grid}.world-carousel .lesson-accordion__body>p{font-size:var(--portfolio-body,16px);margin:0;padding:0;line-height:1.8}@media (prefers-reduced-motion:reduce){.lesson-accordion__panel,.lesson-accordion__chevron{transition:none}}.world-carousel .space-station-card--contact-links>ul{gap:0 36px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important}.paper-stage .world-carousel .space-station-card--contact-links a{box-shadow:none;background:0 0;border:0;border-bottom:1px solid #74899566;border-radius:0;padding:24px 0;transform:none}.world-carousel .space-station-card--contact-links a svg{color:var(--world-accent);width:20px;height:20px}.world-carousel .photo-wall{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.world-carousel .photo-wall button{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.world-carousel .photo-wall img{aspect-ratio:4/3}@media (width<=759px){.paper-stage.is-docked:not(.is-sun) .world-carousel{margin:24px 0 40px}.world-carousel__header{align-items:start;gap:12px;padding:0 4px 20px}.world-carousel__heading :is(h1,h2){font-size:1.65rem}.world-carousel__heading p{max-width:24ch;font-size:.7rem;line-height:1.6}.paper-stage .world-carousel .space-stepper{flex-wrap:wrap;gap:6px;width:98px}.paper-stage .world-carousel .space-stepper button{width:44px;height:44px}.paper-stage .world-carousel .space-stepper__status{text-align:right;width:100%;min-width:0;padding:0 6px 4px 0}.world-carousel__tabs button{gap:8px;padding-inline:16px;font-size:.78rem}.world-carousel__slide{min-height:340px;padding:26px 22px}.world-carousel .station-title{font-size:2.35rem}.world-carousel .station-lede{font-size:1rem}.world-carousel .station-bio__top{grid-template-columns:1fr;gap:22px}.world-carousel .station-bio__portrait{width:144px;height:144px}.world-carousel .station-bio__copy{font-size:1rem}.world-carousel .trophy-list{grid-template-columns:1fr}.world-carousel .trophy-list li{padding:14px 0;font-size:.84rem}.world-carousel .space-station-card--contact-links>ul{grid-template-columns:1fr!important}.world-carousel .photo-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.world-carousel .photo-wall img{aspect-ratio:1}}@media (prefers-reduced-motion:reduce){.world-carousel__viewport{transition:none}.world-carousel__slide{will-change:auto}}.paper-stage.is-docked:not(.is-sun) .world-carousel{margin-top:10px}.world-carousel__slide{background-size:480px;border-bottom-width:2px;min-height:280px;padding:28px 32px}.world-carousel__viewport{margin-top:12px}@media (width<=759px){.paper-stage.is-docked:not(.is-sun) .world-carousel{margin-top:8px}.world-carousel__header{align-items:center;padding-bottom:12px}.paper-stage .world-carousel .space-stepper{flex-wrap:nowrap;gap:4px;width:auto}.paper-stage .world-carousel .space-stepper__status{width:auto;padding-right:6px}.world-carousel__heading p{max-width:22ch;margin-top:5px}.world-carousel__tabs button{padding-inline:12px}.world-carousel__slide{min-height:260px;padding:20px}.world-carousel .station-eyebrow{margin-bottom:16px}.paper-stage .world-carousel .orbit-project-card{flex-direction:column;align-items:stretch;gap:22px;display:flex}.paper-stage .world-carousel .orbit-project-card__content{order:-1;display:contents}.paper-stage .world-carousel .orbit-project-card__tier{order:-4;margin-bottom:-15px}.paper-stage .world-carousel .orbit-project-card__heading{order:-3;margin:0}.paper-stage .world-carousel .orbit-project-card__media{order:-2}.paper-stage .world-carousel .orbit-project-card__description,.paper-stage .world-carousel .orbit-project-card__tech{margin-top:0}}.paper-stage.is-docked:not(.is-sun) .world-carousel{grid-template-rows:auto auto minmax(0,1fr);align-self:center;height:100%;min-height:0;max-height:460px;margin:0;padding:8px 0 12px;display:grid}.world-carousel__header{padding-bottom:8px}.world-carousel__heading :is(h1,h2){font-size:clamp(1.35rem,2.4vw,2rem)}.world-carousel__heading p{margin-top:4px}.world-carousel__tabs button{min-height:40px;padding-block:8px}.world-carousel__viewport{height:auto;min-height:0;margin:8px 0 0;transition:none;overflow:clip;container-type:size}.world-carousel__slide,.world-carousel__slide[data-active=true]{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8a9ba780 transparent;touch-action:pan-y;height:100%;min-height:0;padding:20px 28px;position:absolute;inset:0;overflow:hidden auto}.world-carousel .station-title{font-size:clamp(2rem,3.3vw,3.2rem)}.world-carousel .station-subtitle{font-size:clamp(1.35rem,2.2vw,2rem)}.world-carousel .station-eyebrow{margin-bottom:14px}.world-carousel .station-lede{margin-top:14px;font-size:1rem;line-height:1.6}.world-carousel .station-footnote{margin-top:20px}.world-carousel .station-bio__top{grid-template-columns:116px 1fr;gap:24px}.world-carousel .station-bio__portrait{width:116px;height:116px}.world-carousel .station-bio__copy{font-size:1rem;line-height:1.6}.world-carousel .station-bio__skills{margin-top:16px;padding-top:10px}.world-carousel .trophy-list{margin-top:12px}.world-carousel .trophy-list li{padding:10px 0}.world-carousel .photo-wall{gap:10px;margin-top:12px}.paper-stage .world-carousel .orbit-project-card{align-items:center;gap:28px;min-height:0}.paper-stage .world-carousel .orbit-project-card__media{height:clamp(100px,100cqh - 42px,300px)}.paper-stage .world-carousel .orbit-project-card__heading strong{font-size:clamp(1.7rem,2.6vw,2.6rem)}.paper-stage .world-carousel .orbit-project-card__description{margin-top:14px;font-size:.9rem;line-height:1.6}.paper-stage .world-carousel .orbit-project-card__tech{margin-top:16px;padding-top:12px}@media (width<=759px){.paper-stage.is-docked:not(.is-sun) .world-carousel{padding:2px 0 8px}.world-carousel__heading :is(h1,h2){font-size:1.3rem}.world-carousel__heading p{max-width:none;font-size:.65rem}.world-carousel__header{gap:8px;padding:0 0 6px}.world-carousel__tabs button{gap:6px;min-height:36px;padding:6px 9px;font-size:.7rem}.world-carousel__slide,.world-carousel__slide[data-active=true]{padding:16px}.world-carousel .station-title{font-size:2rem}.world-carousel .station-bio__top{grid-template-columns:76px 1fr;gap:14px}.world-carousel .station-bio__portrait{width:76px;height:96px}.world-carousel .station-bio__copy{font-size:.85rem;line-height:1.5}.world-carousel .station-bio__skills>li{margin-right:6px;padding:4px 8px 4px 0;font-size:.68rem}.world-carousel .photo-wall{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.world-carousel .trophy-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.world-carousel .trophy-list li{gap:8px;font-size:.72rem;line-height:1.45}.paper-stage .world-carousel .orbit-project-card{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:12px;display:grid}.paper-stage .world-carousel .orbit-project-card__content{order:initial;display:flex}.paper-stage .world-carousel .orbit-project-card__media{order:initial;aspect-ratio:auto;height:clamp(110px,100cqh - 34px,220px)}.paper-stage .world-carousel .orbit-project-card__tier{order:initial;margin:0;font-size:.56rem}.paper-stage .world-carousel .orbit-project-card__heading{order:initial;gap:6px;margin:6px 0 0}.paper-stage .world-carousel .orbit-project-card__heading strong{font-size:1.3rem}.paper-stage .world-carousel .orbit-project-card__heading>span{width:28px;height:28px}.paper-stage .world-carousel .orbit-project-card__description{margin-top:10px;font-size:.76rem;line-height:1.55}.paper-stage .world-carousel .orbit-project-card__tech{margin-top:10px;padding-top:8px;font-size:.56rem}}.space-station-card{height:auto;max-height:var(--space-card-h,none);overscroll-behavior:contain;border:1px solid rgb(var(--border) / .72);background:linear-gradient(145deg, #ffffff09, transparent 35%), rgb(var(--surface-raised));scrollbar-width:none;border-radius:1rem;padding:1.4rem;position:relative;overflow-y:auto;box-shadow:inset 0 1px #ffffff0f,0 1.5rem 5rem #02060e47}.space-station-card::-webkit-scrollbar{display:none}.space-station-card h2:focus-visible{box-shadow:-3px 0 0 rgb(var(--accent-primary));outline:none}.space-station:focus-visible{outline:2px solid rgb(var(--accent-primary));outline-offset:.35rem}.space-stage.is-docked .space-road-sprite{opacity:.68}.space-station-card--echo{height:var(--space-card-h,22.5rem);background:linear-gradient(145deg, rgb(var(--accent-primary) / .11), transparent 42%), rgb(var(--surface-raised));align-content:end;display:grid;overflow:hidden}.space-station-card--echo:before{border:1px solid rgb(var(--border) / .55);content:"";border-radius:.55rem;position:absolute;inset:1.25rem}.space-station-card--echo span,.space-station-card--echo strong{z-index:1;position:relative}.space-station-card--echo span{color:rgb(var(--accent-primary));font-family:JetBrains Mono,monospace;font-size:.7rem}.space-station-card--echo strong{letter-spacing:-.05em;margin-top:.45rem;font-family:Outfit,sans-serif;font-size:2.35rem;font-weight:500}.space-station-card--echo i{border:1px solid rgb(var(--accent-primary) / .24);width:7rem;height:7rem;box-shadow:0 0 0 1.75rem rgb(var(--accent-primary) / .035);border-radius:50%;position:absolute;top:2rem;right:2rem}.station-title{letter-spacing:-.055em;margin:0;font-family:Outfit,sans-serif;font-size:clamp(2.25rem,4vw,3.4rem);font-weight:500;line-height:.98}.station-subtitle{color:rgb(var(--text));letter-spacing:-.035em;margin:0;font-family:Outfit,sans-serif;font-size:1.35rem;font-weight:500}.station-lede{max-width:32ch;color:rgb(var(--text-muted));margin-top:1rem;font-size:1rem;line-height:1.5}.station-footnote{color:rgb(var(--text-muted));font-family:JetBrains Mono,monospace;font-size:.75rem;line-height:1.5}.orbit-project-card{border:1px solid rgb(var(--border) / .7);min-width:0;min-height:13.5rem;color:rgb(var(--text));background:rgb(var(--surface-overlay) / .68);border-radius:.75rem;grid-template-columns:42% 1fr;text-decoration:none;transition:border-color .18s,transform .18s;display:grid;overflow:hidden}.space-station-card--project{height:var(--space-card-h,auto)}.space-station-card--project:not(.has-heading) .orbit-project-card{height:100%}.space-station-card--project.has-heading .orbit-project-card{height:calc(100% - 4.25rem)}.orbit-project-card:hover{border-color:rgb(var(--accent-primary) / .75);transform:translateY(-2px)}.orbit-project-card__media{background:#0b121a;min-height:100%;position:relative;overflow:hidden}.orbit-project-card__media .project-cover{min-height:100%}.orbit-project-card__number{z-index:1;color:#daebebb8;font-family:JetBrains Mono,monospace;font-size:.68rem;position:absolute;top:.75rem;left:.75rem}.orbit-project-card__content{flex-direction:column;min-width:0;padding:1.15rem;display:flex}.orbit-project-card__heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.orbit-project-card__tier{color:rgb(var(--accent-primary));letter-spacing:.08em;text-transform:uppercase;margin-bottom:.55rem;font-family:JetBrains Mono,monospace;font-size:.75rem}.orbit-project-card__heading strong{letter-spacing:-.04em;font-family:Outfit,sans-serif;font-size:1.65rem;font-weight:500}.orbit-project-card__description{color:rgb(var(--text-muted));margin-top:.65rem;font-size:.9rem;line-height:1.55}.orbit-project-card__tech{color:rgb(var(--accent-primary));margin-top:auto;padding-top:1rem;font-family:JetBrains Mono,monospace;font-size:.75rem;line-height:1.5}.photo-wall{grid-template-columns:repeat(var(--photo-columns), minmax(0, 1fr))}.trophy-list{grid-template-columns:repeat(2,minmax(0,1fr))}:root{--surface:20 31 31;--surface-raised:29 44 43;--text:231 236 225;--text-muted:170 188 180;--accent-primary:184 205 153;--border:68 88 79;--paper-night:linear-gradient(#142020ec, #142020ec), url(/assets/paper/fine-stock-v2.webp) center/640px}:is(html:has(.architecture-page),body:has(.architecture-page)){overflow:hidden}body{background:var(--paper-night)}.is-scene-shell{height:100dvh;min-height:0;overflow:hidden}.is-scene-shell #main-content{flex-direction:column;min-height:0;display:flex}.site-header{background:0 0;border-bottom:1px solid #9eaf9830;flex-shrink:0}.site-header__inner{max-width:1680px;margin:auto}.site-brand__mark{transform:none!important}.architecture-page{color:#e7ece1;grid-template-rows:66px minmax(0,1fr) auto 42px;width:100%;max-width:1680px;height:calc(100dvh - 72px);min-height:0;margin:0 auto;padding:0 clamp(20px,4vw,64px);display:grid}.architecture-nav{border-bottom:1px solid #9eaf9830;align-items:stretch;gap:clamp(12px,2.3vw,34px);display:flex}.architecture-nav :is(button,a){color:#a2b5aa;cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:9px;min-height:44px;padding:0 3px;font-size:.82rem;transition:color .16s;display:flex;position:relative}.architecture-nav :is(button,a)>span{opacity:.55;font:9px JetBrains Mono,monospace}.architecture-nav :is(button,a):first-child{margin-right:auto}.architecture-nav :is(button,a)[aria-current]{color:#d4e5b8}.architecture-nav :is(button,a)[aria-current]:after{content:"";bottom:-1px;background:#b8cd99;height:2px;position:absolute;inset-inline:0}.architecture-nav :is(button,a):hover{color:#eff6e8}.architecture-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:clamp(24px,4vw,64px);min-height:0;display:grid}.architecture-intro{align-self:center;min-width:0;padding:28px 0}.architecture-eyebrow{color:#b4c4b6;align-items:center;gap:10px;font:10px/1.8 JetBrains Mono,monospace;display:flex}.architecture-eyebrow i{background:#b4d393;border-radius:50%;flex:none;width:5px;height:5px;box-shadow:0 0 12px #acc79c40}.architecture-intro :is(h1,h2){letter-spacing:-.048em;text-wrap:pretty;color:#ecf0e6;max-width:10.5ch;margin:24px 0 25px;font-family:Outfit,sans-serif;font-size:clamp(36px,4.6vw,74px);font-weight:500;line-height:1.07}.architecture-intro__body{color:#b0c0b6;max-width:43ch;margin:0;font-size:clamp(12px,1.04vw,15px);line-height:1.9}.architecture-primary{background:var(--paper-sage) center/100% 100%;color:#263b30;cursor:pointer;border:0;border-radius:2px;justify-content:space-between;align-items:center;gap:28px;min-height:48px;margin-top:30px;padding:16px 21px;font-size:.83rem;transition:transform .18s,filter .18s;display:inline-flex}.architecture-primary:hover{filter:brightness(1.1);transform:translateY(-2px)}.architecture-primary:active{transform:translateY(1px)}.architecture-exhibit{background:0 0;grid-template-rows:50px minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative}.architecture-exhibit__caption{letter-spacing:.12em;color:#8caa99;justify-content:space-between;align-items:center;padding:0 5px;font:9px JetBrains Mono,monospace;display:flex}.architecture-view{isolation:isolate;width:100%;height:100%;min-height:0;position:relative}.architecture-canvas{touch-action:pan-y;cursor:grab;outline-offset:-5px;position:absolute;inset:0 0 64px}.architecture-canvas:active{cursor:grabbing}.architecture-canvas canvas{width:100%;height:100%;display:block}.architecture-labels{pointer-events:none;position:absolute;inset:0 0 64px;overflow:hidden}.architecture-labels button{color:#e8eedf;pointer-events:auto;cursor:pointer;white-space:nowrap;background:#1b2c27ed;border:1px solid #b6c6ab70;border-radius:2px;align-items:center;gap:9px;min-height:36px;padding:7px 11px;font-size:11px;display:flex;position:absolute;top:0;left:0;box-shadow:0 3px 12px #07120b25}.architecture-labels button>span:first-child{color:#bace9b;font:8px JetBrains Mono,monospace}.architecture-labels button:hover{color:#21372a;background:#c6d8b3}.architecture-labels button:hover>span:first-child{color:#3c5541}.is-loading .architecture-labels{visibility:hidden}.architecture-controls{border-top:1px solid #9eaf9830;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;padding-top:10px;display:flex;position:absolute;bottom:10px;left:0;right:0}.architecture-controls button{color:#bacbb9;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;place-items:center;width:36px;height:36px;display:grid}.architecture-controls button:hover,.architecture-controls button[aria-pressed=true]{color:#e0eacb;background:#718d6c18;border-color:#91a58470}.architecture-controls svg{width:15px;height:15px}.architecture-gesture{color:#859e8f;margin-right:auto;font:9px JetBrains Mono,monospace}.architecture-loading,.architecture-status{color:#a8bdad;text-align:center;font-size:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.architecture-loading{animation:1.2s ease-in-out infinite building-load}.architecture-status button{color:#d7e5c2;text-decoration:underline}@keyframes building-load{50%{opacity:.4}}.architecture-foot{color:#83978a;border-top:1px solid #9eaf9830;justify-content:space-between;align-items:center;gap:12px;font:9px JetBrains Mono,monospace;display:flex}.architecture-page .world-carousel{grid-template-rows:48px 44px minmax(0,1fr);align-self:stretch;width:100%;height:100%;min-height:0;padding:24px 0 20px;display:grid}.architecture-page .world-carousel__header{gap:8px;padding:0 0 10px}.architecture-page .world-carousel__heading :is(h1,h2){color:#e6edde;font-size:23px}.architecture-page .world-carousel__heading p{color:#9fb0a4;font-size:10px}.architecture-page .space-stepper{align-items:center;gap:4px;display:flex}.architecture-page .space-stepper__status{white-space:nowrap;color:#b9cbb3;margin-right:8px;font:9px JetBrains Mono,monospace}.architecture-page .space-stepper__status b{font-weight:400}.architecture-page .space-stepper__status span{color:#7c9685}.architecture-page .space-stepper button{color:#c9d6ba;cursor:pointer;background:0 0;border:1px solid #a6b89244;place-items:center;width:32px;height:32px;display:grid}.architecture-page .space-stepper button:hover{background:#afc3a326}.architecture-page .world-carousel__tabs{border-color:#93aa933f}.architecture-page .world-carousel__tabs button{color:#99ad9e;gap:7px;min-height:40px;padding:7px 10px;font-size:10px}.architecture-page .world-carousel__tabs button[aria-selected=true]{color:#dce8cc;background:0 0;border-color:#b7ce99}.architecture-page .world-carousel__viewport{cursor:auto;height:auto;min-height:0;margin:20px 0 0;-webkit-mask-image:none;mask-image:none}.architecture-page .world-carousel__slide,.architecture-page .world-carousel__slide[data-active=true]{box-shadow:none;scrollbar-gutter:stable;scrollbar-color:#8ba48660 transparent;background:0 0;border:0;padding:0 10px 12px 0;overflow:auto;transform:none}.architecture-page .space-station-card{overscroll-behavior:auto;background:0 0;min-height:0;padding:8px 0;overflow:visible}.architecture-page .station-title{color:#e8eedd;font-size:clamp(28px,3.1vw,46px)}.architecture-page .station-subtitle{color:#e8eedd;font-size:clamp(24px,2.7vw,36px)}.architecture-page .station-lede{color:#c0ceb9;margin-top:22px;font-size:17px;line-height:1.8}.architecture-page .station-footnote{color:#829b8b;font-size:10px}.architecture-page .station-eyebrow{color:#b7ca9e;font:10px JetBrains Mono,monospace}.architecture-page .world-carousel .station-bio__top{grid-template-columns:96px 1fr;gap:20px}.architecture-page .world-carousel .station-bio__portrait{object-fit:cover;border-radius:2px;width:96px;height:125px}.architecture-page .world-carousel .station-bio__copy{font-size:13px}.architecture-page .world-carousel .trophy-list{grid-template-columns:1fr}.architecture-page .world-carousel .trophy-list li{background:0 0;border-color:#829b8b40;font-size:13px}.architecture-page .world-carousel .trophy-list strong{color:#d9e5cd}.architecture-page .world-carousel .space-station-card--contact-links>ul{grid-template-columns:1fr!important}.architecture-page .world-carousel .space-station-card--contact-links a{background:0 0;border:0;border-bottom:1px solid #829b8b40;padding:16px 0;transform:none}.architecture-page .world-carousel .space-station-card--contact-links a strong{color:#d9e5cd}.architecture-page .orbit-project-card{color:inherit;flex-direction:column;gap:20px;height:auto;display:flex}.architecture-page .orbit-project-card__media{flex:none;width:100%;height:clamp(130px,23dvh,260px);display:block;position:relative}.architecture-page .orbit-project-card__media .project-cover{aspect-ratio:auto;border:1px solid #8fa28e50;height:100%;min-height:0;background:#1d2f2b!important}.architecture-page .orbit-project-card__number{display:none}.architecture-page .orbit-project-card__content{flex-direction:column;gap:0;display:flex}.architecture-page .orbit-project-card__tier{color:#a7b79e;font:9px JetBrains Mono,monospace}.architecture-page .orbit-project-card__heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.architecture-page .orbit-project-card__heading strong{letter-spacing:-.04em;color:#e5edda;font:500 clamp(25px,3.2vw,43px)/1.1 Outfit,sans-serif}.architecture-page .orbit-project-card__heading>span{background:var(--paper-sage) center/cover;color:#30442f;border-radius:2px;place-items:center;display:grid}.architecture-page .orbit-project-card__description{color:#adbfaf;margin-top:14px;font-size:12px;line-height:1.8;display:block}.architecture-page .orbit-project-card__tech{color:#8fa88f;border-top:1px solid #93aa933f;margin-top:16px;padding-top:12px;font:9px/1.8 JetBrains Mono,monospace}.case-study__hero:before{background:0 0}.case-study .project-diorama{height:440px;min-height:0}.case-study .project-diorama .architecture-view{height:100%}.case-study__hero-grid>.project-diorama{background:0 0}.case-study__all-projects,.case-study__links a{transform:none!important}@media (width>=1700px){.architecture-intro :is(h1,h2){font-size:76px}.architecture-layout{gap:70px}}@media (width<=1000px){.architecture-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px}.architecture-intro :is(h1,h2){font-size:45px}.architecture-labels button{gap:5px;padding:6px;font-size:10px}.architecture-labels button>span:first-child{display:none}}@media (width<=719px){.architecture-page{grid-template-rows:48px minmax(0,1fr) 30px;height:calc(100dvh - 64px);padding-inline:18px}.architecture-nav{justify-content:space-between;gap:0}.architecture-nav :is(button,a){gap:4px;padding:0 4px;font-size:10px}.architecture-nav :is(button,a)>span{display:none}.architecture-nav :is(button,a):first-child{margin-right:0}.architecture-layout{grid-template-rows:minmax(0,.92fr) minmax(0,1.08fr);grid-template-columns:1fr;gap:0}.architecture-intro{align-self:center;padding:14px 0 4px}.architecture-eyebrow{gap:7px;font-size:8px}.architecture-intro :is(h1,h2){max-width:17ch;margin:12px 0 13px;font-size:clamp(28px,7.7vw,40px);line-height:1.08}.architecture-intro__body{max-width:48ch;font-size:10px;line-height:1.8}.architecture-primary{gap:30px;min-height:40px;margin-top:16px;padding:10px 14px;font-size:10px}.architecture-exhibit{grid-template-rows:24px minmax(0,1fr)}.architecture-exhibit__caption{letter-spacing:.06em;font-size:7px}.architecture-canvas,.architecture-labels{bottom:46px}.architecture-controls{gap:3px;padding-top:5px;bottom:3px}.architecture-controls button{width:34px;height:34px}.architecture-gesture{font-size:8px}.architecture-labels button{gap:5px;min-height:28px;padding:4px 6px;font-size:9px}.architecture-foot{font-size:7px}.architecture-foot span:last-child{text-align:right;max-width:60%}.architecture-page .world-carousel{grid-template-rows:36px 36px minmax(0,1fr);padding:12px 0 8px}.architecture-page .world-carousel__heading :is(h1,h2){font-size:20px}.architecture-page .world-carousel__heading p{display:none}.architecture-page .world-carousel__tabs button{min-height:34px;padding:6px 8px;font-size:9px}.architecture-page .world-carousel__viewport{margin-top:10px}.architecture-page .world-carousel__slide{padding:0 4px 8px 0}.architecture-page .station-lede{margin-top:10px;font-size:13px}.architecture-page .station-title{font-size:28px}.architecture-page .station-subtitle{font-size:24px}.architecture-page .orbit-project-card{grid-template-columns:.85fr 1.15fr;align-items:center;gap:14px;display:grid}.architecture-page .orbit-project-card__media{height:clamp(110px,19dvh,170px)}.architecture-page .orbit-project-card__heading strong{font-size:25px}.architecture-page .orbit-project-card__heading>span{width:28px;height:28px}.architecture-page .orbit-project-card__description{margin-top:8px;font-size:10px;line-height:1.6}.architecture-page .orbit-project-card__tier{font-size:8px}.architecture-page .orbit-project-card__tech{margin-top:9px;padding-top:7px;font-size:7px}.architecture-page .world-carousel .station-bio__top{grid-template-columns:64px 1fr;gap:14px}.architecture-page .world-carousel .station-bio__portrait{width:64px;height:85px}.architecture-page .world-carousel .station-bio__copy{font-size:11px}.architecture-page .world-carousel .trophy-list li{padding:8px 0;font-size:11px}.architecture-page .world-carousel .photo-wall{grid-template-columns:repeat(4,1fr)}.case-study .project-diorama{height:360px}}@media (height<=720px) and (width>=720px){.architecture-intro :is(h1,h2){margin-block:18px;font-size:44px}.architecture-intro__body{font-size:12px}.architecture-primary{margin-top:20px}.architecture-page .world-carousel{padding-block:16px}.architecture-page .orbit-project-card__media{height:140px}}@media (height<=720px) and (width<=719px){.architecture-page{grid-template-rows:44px minmax(0,1fr) 24px}.architecture-intro :is(h1,h2){margin-block:10px;font-size:27px}.architecture-intro__body{font-size:9px}.architecture-primary{min-height:34px;margin-top:10px;padding-block:8px}.architecture-layout{grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.architecture-page .orbit-project-card__description{font-size:9px}}@media (prefers-reduced-motion:reduce){.architecture-page *{transition:none!important;animation:none!important}}.architecture-page .space-station-card{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;border-radius:0}.architecture-page .world-carousel .station-bio__skills{gap:6px}.architecture-page .world-carousel .station-bio__skills li{font-size:10px}.architecture-page .world-carousel .orbit-project-card{box-shadow:none;background:0 0;border:0;border-radius:0;min-height:0;overflow:visible}.architecture-page .world-carousel .orbit-project-card__content{padding:0}.architecture-page .world-carousel .orbit-project-card__media{background:0 0;min-height:0}.architecture-case.case-study .case-study__hero:before,.architecture-case.case-study .case-study__hero{background:0 0}.architecture-case.case-study .project-diorama{height:440px}@media (width<=719px){.architecture-intro__body{font-size:12px;line-height:1.75}.architecture-nav :is(button,a){font-size:11px}.architecture-labels button{min-height:32px;padding:5px 7px;font-size:11px}.architecture-page .orbit-project-card__description{font-size:11px}.architecture-page .orbit-project-card__tech{font-size:8px}.architecture-case.case-study .project-diorama{height:330px}}@media (height<=720px) and (width<=719px){.architecture-intro__body{font-size:10px}}.architecture-view.is-expanded{z-index:80;background:var(--paper-night);width:100vw;height:100dvh;padding:0;position:fixed;inset:0}.architecture-view.is-expanded .architecture-canvas,.architecture-view.is-expanded .architecture-labels{inset:65px 24px 78px}.architecture-view.is-expanded .architecture-controls{bottom:20px;left:24px;right:24px}.architecture-close{z-index:2;color:#dce8ce;cursor:pointer;background:#223a2e;border:1px solid #839b7866;align-items:center;gap:10px;padding:10px 14px;font-size:12px;display:flex;position:absolute;top:18px;right:24px}.architecture-controls .architecture-expand{border-color:#839b7844;margin-right:5px}@media (width<=719px){.architecture-view.is-expanded .architecture-canvas,.architecture-view.is-expanded .architecture-labels{inset:70px 8px 78px}}@media (height<=480px) and (width>=720px){.architecture-intro{padding:8px 0}.architecture-intro :is(h1,h2){max-width:18ch;margin:8px 0;font-size:26px}.architecture-intro__body{font-size:10px;line-height:1.6}.architecture-eyebrow{font-size:8px}.architecture-primary{min-height:32px;margin-top:12px;padding:7px 12px;font-size:10px}.architecture-exhibit{grid-template-rows:28px minmax(0,1fr)}.architecture-page .world-carousel{grid-template-rows:36px 36px minmax(0,1fr);padding-block:8px}}@media (height<=640px) and (width<=719px){.architecture-page.is-home .architecture-layout{grid-template-rows:230px minmax(0,1fr)}.architecture-intro :is(h1,h2){font-size:24px}.architecture-intro{padding-block:8px}}.architecture-details-link{z-index:2;color:#c8dab5;border-bottom:1px solid #aabf9766;align-items:center;gap:20px;padding:8px 0;font-size:11px;display:flex;position:absolute;top:8px;right:4px}.architecture-details-link:hover{color:#eff5e7}.architecture-view.is-expanded .architecture-details-link{top:22px;left:24px;right:auto}.architecture-actions{display:contents}.architecture-controls button:has(span){gap:7px;width:auto;padding:0 12px}.architecture-controls button span{white-space:nowrap;font:500 11px Manrope,sans-serif}@media (width<=600px){.architecture-controls .architecture-gesture{display:none}}.architecture-view:not(.is-courtyard) .architecture-canvas{bottom:110px}.architecture-view.is-expanded:not(.is-courtyard) .architecture-canvas{bottom:118px}@media (width<=600px){.architecture-view:not(.is-courtyard) .architecture-canvas{bottom:87px}}@media (height<=500px){.architecture-view:not(.is-courtyard) .architecture-canvas{bottom:80px}}.architecture-controls button:has(span){flex-direction:row;justify-content:center;align-items:center;gap:8px;height:auto;min-height:40px;padding:10px 14px;line-height:1.2;display:inline-flex}.architecture-controls button:has(span) svg{flex:0 0 15px;width:15px;height:15px}@media (width<=600px){.architecture-controls button:has(span){gap:6px;min-height:34px;padding:8px 10px}}.project-collection{grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;padding:clamp(18px,4vh,44px) 0 14px;display:grid;overflow:hidden}.project-collection header :is(h1,h2){margin:0 0 12px;font:500 clamp(28px,3vw,42px)/1.1 Outfit,sans-serif}.project-collection header p{color:#a9bab1;margin:0 0 24px;font-size:12px;line-height:1.7}.project-collection ol{scrollbar-gutter:stable;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#5e7768 transparent;margin:0;padding:0 8px 0 0;list-style:none;overflow-y:auto}.project-collection li{border-top:1px solid #9eaf9830}.project-collection li:last-child{border-bottom:1px solid #9eaf9830}.project-collection h3{margin:0}.project-collection__toggle{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:24px minmax(0,1fr) 20px;align-items:center;gap:12px;width:100%;min-height:76px;padding:16px;transition:background .18s;display:grid}.project-collection__toggle:hover{background:#b8cd990a}.project-collection__toggle:focus-visible{outline-offset:-3px}.project-collection__number{color:#91a98f;font-variant-numeric:tabular-nums;font:10px JetBrains Mono,monospace}.project-collection__toggle strong{color:#e5ecdb;font:500 21px Outfit,sans-serif;display:block}.project-collection__toggle small{color:#a2b5aa;margin-top:4px;font:11px/1.5 Manrope,sans-serif;display:block}.project-collection__chevron{color:#b8cd99;width:18px;height:18px;transition:transform .34s cubic-bezier(.22,1,.36,1)}.project-collection__toggle[aria-expanded=true] .project-collection__chevron{transform:rotate(180deg)}.project-collection__toggle[aria-expanded=true] strong{color:#d2e4b8}.project-collection__panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .36s cubic-bezier(.22,1,.36,1),opacity .22s;display:grid}.project-collection li[data-open=true] .project-collection__panel{opacity:1;grid-template-rows:1fr}.project-collection__panel-inner{min-height:0;overflow:hidden}.project-preview{color:#d5dfd4;padding:8px 0 24px;display:block}.project-preview__media{background:#101c1d;border:1px solid #9eaf9830;height:auto;display:block;overflow:hidden}.project-preview__media img{object-fit:contain;width:100%;height:auto;display:block;transform:none}.project-preview__tier{color:#99b18b;text-transform:uppercase;letter-spacing:.06em;margin-top:14px;font:9px/1.5 JetBrains Mono,monospace;display:block}.project-preview__description{color:#bdccc2;margin-top:7px;font-size:13px;line-height:1.75;display:block}.project-preview__tech{color:#8ca296;margin-top:12px;font-size:10px;line-height:1.7;display:block}.project-preview__visit{color:#d3e4b9;align-items:center;gap:18px;min-height:44px;font-size:12px;display:inline-flex}.project-preview:hover .project-preview__visit{text-underline-offset:4px;text-decoration:underline}.project-preview__visit svg{width:15px;height:15px}@media (width<=719px){.project-collection{padding:10px 0 0}.project-collection header :is(h1,h2){margin-bottom:4px;font-size:25px}.project-collection header p{margin-bottom:8px;font-size:10px}.project-collection__toggle{grid-template-columns:24px minmax(0,1fr) 18px;gap:10px;min-height:54px;padding:12px}.project-collection__toggle strong{font-size:17px}.project-collection__toggle small{margin-top:1px;font-size:9px}.project-preview{grid-template-columns:86px minmax(0,1fr);gap:5px 12px;padding:8px 0 24px;display:grid}.project-preview__media{grid-area:1/1/3/2;align-self:start;height:auto}.project-preview__tier{grid-area:1/2;margin-top:0}.project-preview__description{grid-area:2/2;margin-top:0;font-size:11px;line-height:1.65}.project-preview__tech{grid-column:1/-1;margin-top:2px;font-size:9px}.project-preview__visit{grid-column:1/-1;min-height:38px}}@media (prefers-reduced-motion:reduce){.project-collection__panel,.project-collection__chevron{transition:none}}:root{--portfolio-section-title:28px;--portfolio-body:16px;--portfolio-ui:14px;--portfolio-small:13px;--portfolio-meta:12px}.site-header .site-brand__copy strong{font-size:18px}.site-header .site-brand__copy span{font-size:11px}.site-header .site-mobile-menu{--text:231 236 225;--text-muted:170 188 180;background:#1d2c2b;border:1px solid #44584f;border-radius:6px;padding:8px;box-shadow:0 12px 28px #08131150}.site-header .site-mobile-menu a{min-height:48px;font-size:var(--portfolio-body);border-radius:3px}.site-header .site-mobile-menu a:hover,.site-header .site-mobile-menu a:focus-visible,.site-header .site-menu-button:hover,.site-header .site-menu-button[aria-expanded=true]{color:#e7ece1;background:#30483d}.site-header .site-mobile-menu a:focus-visible{outline-offset:-2px;outline:2px solid #b8cd99}.architecture-page .architecture-intro__body,.architecture-page .world-carousel .station-bio__copy,.architecture-page .world-carousel .trophy-list li,.architecture-page .project-preview__description{font-size:var(--portfolio-body);line-height:1.75}.architecture-page .architecture-nav :is(button,a),.architecture-page .architecture-primary,.architecture-page .world-carousel__tabs button,.architecture-page .project-preview__visit{font-size:var(--portfolio-ui)}.architecture-page .architecture-eyebrow,.architecture-page .architecture-exhibit__caption,.architecture-page .architecture-foot,.architecture-page .world-carousel .station-bio__skills li,.architecture-page .station-footnote,.architecture-page .station-eyebrow,.architecture-page .space-stepper__status,.architecture-page .project-preview__tier,.architecture-page .project-preview__tech{font-size:var(--portfolio-meta)}.architecture-page .architecture-labels button{font-size:var(--portfolio-small);min-height:40px;padding:8px 10px}.architecture-page .world-carousel__heading :is(h1,h2),.architecture-page .project-collection header :is(h1,h2){font-family:Outfit,sans-serif;font-size:var(--portfolio-section-title);letter-spacing:-.035em;color:#e6edde;margin:0;font-weight:500;line-height:1.1}.architecture-page .project-collection{padding-top:24px}.architecture-page .world-carousel__header{align-items:flex-start}.architecture-page .project-collection header p{margin:12px 0 24px}.architecture-page .station-lede{font-size:18px}.architecture-page .world-carousel .station-bio__top{grid-template-columns:128px minmax(0,1fr)}.architecture-page .world-carousel .station-bio__portrait{width:128px;height:164px}.architecture-page .world-carousel .photo-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.architecture-page .project-collection header p,.architecture-page .project-collection__toggle small{font-size:var(--portfolio-small)}.architecture-page .project-collection__toggle strong{font-size:23px}.architecture-page .project-preview__media{max-height:none}.architecture-view .exhibit-console button,.architecture-view .exhibit-console a,.architecture-view .exhibit-slider,.architecture-view .architecture-controls button span{font-size:var(--portfolio-small)}.architecture-view .exhibit-readout,.architecture-view .architecture-gesture{font-size:11px}.architecture-view:not(.is-expanded) .architecture-canvas{touch-action:pan-y}.architecture-dock{border-top:1px solid #9eaf9830;gap:6px;padding:10px 0;display:grid}.architecture-dock:empty{display:none}.architecture-dock .exhibit-console,.architecture-dock .architecture-controls{border-top:0;width:100%;margin:0;padding:0;position:static;inset:auto}.architecture-dock .architecture-controls{min-height:40px}.architecture-view.has-unified-controls:not(.has-docked-controls){grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);row-gap:8px;display:grid}.architecture-view.has-unified-controls:not(.has-docked-controls)>.architecture-canvas{grid-area:1/1;width:100%;height:100%;min-height:0;position:relative;inset:auto}.architecture-view.has-unified-controls:not(.has-docked-controls)>.architecture-labels{grid-area:1/1;inset:0}.architecture-view.has-unified-controls:not(.has-docked-controls)>.architecture-controls{grid-area:2/1;min-height:48px;margin:0;padding:8px 0;position:relative;inset:auto}.architecture-view.has-unified-controls.is-expanded:not(.has-docked-controls){padding:8px clamp(18px, 2vw, 24px) max(12px, env(safe-area-inset-bottom));grid-template-rows:54px minmax(0,1fr) auto}.architecture-view.has-unified-controls.is-expanded:not(.has-docked-controls)>.architecture-canvas,.architecture-view.has-unified-controls.is-expanded:not(.has-docked-controls)>.architecture-labels{grid-area:2/1}.architecture-view.has-unified-controls.is-expanded:not(.has-docked-controls)>.architecture-controls{grid-area:3/1}.architecture-dock .exhibit-slider,.architecture-dock .exhibit-console button,.architecture-dock .exhibit-console a,.architecture-dock .architecture-controls button span{font-size:var(--portfolio-small)}.architecture-dock .architecture-gesture,.architecture-dock .exhibit-readout{font-size:var(--portfolio-meta)}.architecture-page .architecture-view.has-docked-controls,.architecture-case .architecture-view.has-docked-controls{display:block}.architecture-page .architecture-view.has-docked-controls .architecture-canvas,.architecture-case .architecture-view.has-docked-controls .architecture-canvas{width:100%;height:100%;position:absolute;inset:0}.architecture-page .architecture-view.has-docked-controls .architecture-labels{inset:0}.architecture-case.case-study .architecture-view.is-expanded .architecture-canvas{inset:auto}.architecture-page[data-layout=desktop]{--exhibit-heading-row:72px;--exhibit-navigation-row:44px;--exhibit-heading-inset:24px;--exhibit-content-gap:20px}.architecture-page[data-layout=desktop] .architecture-layout{grid-template-rows:var(--exhibit-heading-row) var(--exhibit-navigation-row) minmax(0, 1fr);row-gap:0}.architecture-page[data-layout=desktop] .exhibit-story,.architecture-page[data-layout=desktop] .world-carousel,.architecture-page[data-layout=desktop] .architecture-layout>.architecture-exhibit{display:contents}.architecture-page[data-layout=desktop] .architecture-intro,.architecture-page[data-layout=desktop] .project-collection{grid-area:1/1/4/2}.architecture-page[data-layout=desktop] .project-collection{padding-top:var(--exhibit-heading-inset)}.architecture-page[data-layout=desktop] .world-carousel__header{padding:var(--exhibit-heading-inset) 0 0;grid-area:1/1}.architecture-page[data-layout=desktop] .world-carousel__tabs{grid-area:2/1/3/-1;justify-self:start;width:max-content;max-width:100%;overflow:visible}.architecture-page[data-layout=desktop] .world-carousel__viewport{margin:var(--exhibit-content-gap) 0;grid-area:3/1}.architecture-page[data-layout=desktop] .architecture-layout .architecture-exhibit__caption{padding-top:var(--exhibit-heading-inset);grid-area:1/2;align-items:flex-start}.architecture-page[data-layout=desktop] .architecture-layout .architecture-view:not(.is-expanded){height:auto;margin-top:var(--exhibit-content-gap);grid-area:3/2}@media (width>=720px) and (height<=500px){.architecture-page[data-layout=desktop]{--exhibit-heading-row:44px;--exhibit-heading-inset:8px;--exhibit-content-gap:8px;grid-template-rows:44px minmax(0,1fr) auto 28px}.architecture-dock{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding-block:8px}.architecture-dock .architecture-controls{grid-column:2;width:auto}.architecture-dock .architecture-controls:only-child{grid-column:1/-1;width:100%}.architecture-dock .architecture-gesture{display:none}.architecture-dock .exhibit-console__inputs{gap:8px}}@media (width<=719px),(width<=1000px) and (pointer:coarse){.architecture-dock{display:none}html:has(.architecture-page){overflow:clip auto}body:has(.architecture-page){overflow:visible}.is-scene-shell{height:auto;min-height:100svh;overflow:visible}.architecture-page{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);height:auto;min-height:calc(100svh - 64px);padding-inline:18px}.architecture-nav{justify-content:space-between;gap:0;min-height:48px}.architecture-page .architecture-nav :is(button,a){font-size:var(--portfolio-meta);padding-inline:3px}.architecture-nav :is(button,a):first-child{margin-right:0}.architecture-nav :is(button,a)>span{display:none}.architecture-page .architecture-layout{flex-direction:column;gap:24px;min-width:0;display:flex}.architecture-page .architecture-intro{align-self:stretch;padding:32px 0 8px}.architecture-page .architecture-intro :is(h1,h2){margin-block:16px;font-size:clamp(28px,7.7vw,40px)}.architecture-page .architecture-intro__body{font-size:var(--portfolio-body);line-height:1.75}.architecture-page .architecture-primary{min-height:44px;font-size:var(--portfolio-ui);margin-top:24px}.architecture-page .architecture-exhibit{flex:none;grid-template-rows:minmax(32px,auto) clamp(400px,110vw,560px);margin-bottom:20px}.architecture-exhibit__caption{gap:12px;min-height:32px}.architecture-page .architecture-exhibit__caption,.architecture-page .architecture-foot{font-size:10px}.architecture-page .architecture-exhibit__caption span:last-child{text-align:right}.architecture-exhibit>.architecture-view:not(.is-expanded){height:clamp(400px,110vw,560px)}.architecture-page .architecture-view{grid-template-rows:minmax(0,1fr) auto auto;grid-template-columns:minmax(0,1fr);row-gap:8px;display:grid}.architecture-page .architecture-view .architecture-canvas{grid-area:1/1;width:100%;height:100%;min-height:0;position:relative;inset:auto}.architecture-page .architecture-view .architecture-labels{grid-area:1/1;inset:0}.architecture-page .architecture-view .exhibit-console{flex-wrap:wrap;grid-area:2/1;margin:0;padding:8px 0;position:relative;inset:auto}.architecture-page .architecture-view .architecture-controls{flex-wrap:wrap;grid-area:3/1;min-height:48px;padding:8px 0;position:relative;inset:auto}.architecture-page .architecture-view.is-expanded{padding:8px 18px max(12px, env(safe-area-inset-bottom));grid-template-rows:54px minmax(0,1fr) auto auto}.architecture-page .architecture-view.is-expanded .architecture-canvas,.architecture-page .architecture-view.is-expanded .architecture-labels{grid-area:2/1}.architecture-page .architecture-view.is-expanded .architecture-canvas{inset:auto}.architecture-page .architecture-view.is-expanded .exhibit-console{grid-area:3/1}.architecture-page .architecture-view.is-expanded .architecture-controls{grid-area:4/1}.project-collection__panel-inner>.architecture-exhibit{margin:0 0 24px}.architecture-foot{min-height:44px;padding-block:12px;padding-bottom:max(12px, env(safe-area-inset-bottom))}.architecture-page .exhibit-story,.architecture-page .world-carousel,.architecture-page .project-collection{height:auto;max-height:none;padding-block:24px 0;display:block;overflow:visible}.architecture-page .world-carousel__header{margin-bottom:12px}.architecture-page .exhibit-story .world-carousel{padding-top:0}.architecture-page .world-carousel__viewport{height:auto;overflow:visible;container-type:normal}.architecture-page .world-carousel__slide{display:none}.architecture-page .world-carousel__slide[data-active=true]{overscroll-behavior:auto;height:auto;padding:8px 0;display:block;position:relative;inset:auto;overflow:visible}.architecture-page .space-station-card,.architecture-page .project-collection ol{overscroll-behavior:auto;max-height:none;overflow:visible}.architecture-page .world-carousel__tabs button,.architecture-page .space-stepper button{min-height:44px}.architecture-page .world-carousel__tabs{flex-wrap:wrap;gap:0 12px;width:fit-content;max-width:100%;overflow:visible}.architecture-page .world-carousel__tabs button{white-space:normal;text-align:left;max-width:100%}.architecture-page .world-carousel .station-bio__top{grid-template-columns:1fr;gap:20px}.architecture-page .project-collection__toggle{min-height:72px}.architecture-page .project-preview{padding:8px 0 24px;display:block}.architecture-page .project-preview__media{aspect-ratio:auto;height:auto}.architecture-page .project-preview__tier{margin-top:16px}.architecture-page .project-preview__description{margin-top:8px}.architecture-page .project-preview__tech{margin-top:12px}.architecture-view .exhibit-console__inputs{flex-wrap:wrap}}.architecture-controls.architecture-controls--unified{gap:10px}.architecture-controls__actions{flex-wrap:wrap;flex:0 auto;align-items:center;gap:8px;min-width:0;display:flex}.architecture-controls__actions:empty{display:none}.architecture-controls__navigation{flex:none;align-items:center;gap:5px;display:flex}.architecture-controls.architecture-controls--unified .exhibit-console{border:0;flex-wrap:wrap;align-items:center;gap:8px 18px;width:auto;min-width:0;margin:0;padding:0;display:flex;position:static;inset:auto}.architecture-controls--unified .exhibit-console__inputs{flex-wrap:wrap;justify-content:flex-start;gap:12px;min-width:0}.architecture-controls--unified .exhibit-slider{width:clamp(120px,12vw,180px);min-width:100px;max-width:180px;font-size:var(--portfolio-small);flex:120px}.architecture-controls--unified .exhibit-console button,.architecture-controls--unified .exhibit-console a{width:auto;height:auto;min-height:40px;font-size:var(--portfolio-small)}.architecture-controls--unified .exhibit-readout{text-align:left;max-width:26ch;min-height:0;font-size:var(--portfolio-meta);flex:0 auto;margin:0}@media (width<=719px),(width<=1000px) and (pointer:coarse){.architecture-controls--unified .architecture-controls__actions{flex:100%;order:-1;justify-content:center}.architecture-controls--unified .architecture-controls__navigation{margin-left:auto}.architecture-controls.architecture-controls--unified .exhibit-console{flex-direction:column;flex:100%;align-items:stretch;gap:4px}.architecture-controls--unified .exhibit-console__inputs{justify-content:center;width:100%}.architecture-controls--unified .exhibit-slider{max-width:none}.architecture-controls--unified .exhibit-readout{text-align:center;max-width:none}}.pet-customize-trigger{color:#c5d8ae;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;width:44px;min-height:44px;padding:0;font:500 16px/1.4 Manrope,sans-serif;display:none}.pet-customize-trigger>svg{width:22px;height:22px}.pet-customize-trigger:hover{background:#23382d;border-color:#93ab8580}.pet-customize-trigger:focus-visible{outline-offset:4px;outline:2px solid #c5d8ae}html:has(.pet-customizer[open]){overflow:hidden}.pet-customizer{color:#e7ece1;background:#162222;border:1px solid #91a58b68;border-radius:12px;width:min(760px,100vw - 48px);max-height:calc(100dvh - 48px);margin:auto;padding:0;font:400 16px/1.55 Manrope,sans-serif;overflow:auto;box-shadow:0 24px 80px #0006}.pet-customizer::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#081111b3}.pet-customizer[open]{animation:.18s ease-out both pet-customizer-in}.pet-customizer__content{padding:28px}.pet-customizer__header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.pet-customizer__header p{color:#b0c0b6;letter-spacing:.07em;text-transform:uppercase;margin:0 0 8px;font:400 12px/1.5 JetBrains Mono,monospace}.pet-customizer__header h2{color:#e7ece1;letter-spacing:-.025em;margin:0;font:500 28px/1.15 Outfit,sans-serif}.pet-customizer button{font:inherit;cursor:pointer}.pet-customizer button:focus-visible{outline-offset:4px;outline:2px solid #c5d8ae}.pet-customizer__close{color:#c5d8ae;background:0 0;border:1px solid #91a58b45;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;padding:0;display:grid}.pet-customizer__close:hover{background:#23382d}.pet-customizer__close svg{width:22px;height:22px}.pet-customizer__layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:stretch;gap:28px;margin-block:26px;display:grid}.pet-customizer__preview{background:#1c2d28;border:1px solid #91a58b26;border-radius:8px;align-content:center;justify-items:center;min-height:360px;display:grid;position:relative}.pet-customizer__preview-art{z-index:1;transform-origin:50% 88%;width:min(100%,215px);height:230px;animation:.65s both pet-preview-hop}.pet-customizer__shadow{background:#08131138;border-radius:50%;width:85px;height:9px;margin-top:-7px}.pet-customizer__preview p{color:#d8e5d1;margin:17px 0 0;font-size:15px}.pet-customizer__preview-caption{color:#99ad9f;letter-spacing:.04em;text-transform:uppercase;margin-top:4px;font:400 11px/1.6 JetBrains Mono,monospace}.pet-customizer__settings{min-width:0}.pet-customizer__tabs{border-bottom:1px solid #9eaf9838;gap:18px;margin-bottom:18px;display:flex}.pet-customizer__tabs button{color:#a9bbad;background:0 0;border:0;border-bottom:2px solid #0000;min-height:38px;padding:0 0 10px;font-size:15px}.pet-customizer__tabs button[aria-selected=true]{color:#d8e5d1;border-bottom-color:#c5d8ae}.pet-customizer__panel{min-height:332px}.pet-customizer__choices,.pet-customizer__colors{border:0;min-width:0;margin:0;padding:0}.pet-customizer__choices legend,.pet-customizer__colors legend{color:#b0c0b6;margin-bottom:12px;padding:0;font-size:14px}.pet-customizer__options{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 10px;display:grid}.pet-customizer__option{text-align:center;color:#b0c0b6;cursor:pointer;gap:5px;font-size:13px;display:grid;position:relative}.pet-customizer__option input{clip-path:inset(50%);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.pet-customizer__swatch{background:#111d1d;border:1px solid #91a58b38;border-radius:6px;place-items:center;height:64px;transition:background .14s,border-color .14s;display:grid;position:relative}.pet-customizer__swatch .blob-pet__art{width:57px;height:61px}.pet-customizer__option:hover .pet-customizer__swatch{background:#23382d;border-color:#91a58b}.pet-customizer__option:has(:checked){color:#e7ece1}.pet-customizer__option:has(:checked) .pet-customizer__swatch{background:#293c30;border-color:#c5d8ae}.pet-customizer__option:has(:focus-visible) .pet-customizer__swatch{outline-offset:3px;outline:2px solid #c5d8ae}.pet-customizer__check{color:#d8e5d1;opacity:0;width:13px;height:13px;position:absolute;top:4px;right:4px}.pet-customizer__option:has(:checked) .pet-customizer__check{opacity:1}.pet-customizer__choices--eyeStyle .pet-customizer__options{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-customizer__choices--eyeStyle .pet-customizer__swatch{height:52px;overflow:hidden}.pet-customizer__choices--eyeStyle .blob-pet__art{clip-path:inset(29% 18% 23%);width:88px;height:95px;margin-top:-25px}.pet-customizer__choices+.pet-customizer__colors{margin-top:22px}.pet-customizer__color-options{flex-wrap:wrap;gap:12px;display:flex}.pet-customizer__color{color:#b0c0b6;cursor:pointer;justify-items:center;gap:5px;font-size:11px;display:grid;position:relative}.pet-customizer__color input{clip-path:inset(50%);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.pet-customizer__color-chip{border:1px solid #0000;border-radius:50%;place-items:center;width:44px;height:44px;padding:5px;display:grid}.pet-customizer__color-chip:before{content:"";background:var(--pet-swatch);border-radius:50%;grid-area:1/1;width:32px;height:32px;box-shadow:inset 0 0 0 1px #ffffff26}.pet-customizer__color-chip svg{color:#fff;filter:drop-shadow(0 1px 2px #000);opacity:0;grid-area:1/1;width:14px;height:14px}.pet-customizer__color:has(:checked) .pet-customizer__color-chip{border-color:#c5d8ae}.pet-customizer__color:has(:checked) svg{opacity:1}.pet-customizer__color:has(:focus-visible) .pet-customizer__color-chip{outline-offset:3px;outline:2px solid #c5d8ae}.pet-customizer__colors:disabled{opacity:.45}.pet-customizer__colors:disabled label{cursor:default}.pet-customizer__hint{color:#a9bbad;margin:14px 0 0;font-size:12px}.pet-customizer__panel#pet-panel-Color .pet-customizer__color-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding-top:14px;display:grid}.pet-customizer__panel#pet-panel-Color .pet-customizer__color{font-size:14px}.pet-customizer__panel#pet-panel-Color .pet-customizer__color-chip{width:62px;height:62px}.pet-customizer__panel#pet-panel-Color .pet-customizer__color-chip:before{width:48px;height:48px}.pet-customizer__footer{border-top:1px solid #9eaf9838;justify-content:space-between;align-items:center;gap:20px;padding-top:20px;display:flex}.pet-customizer__footer p{color:#b0c0b6;margin:0;font-size:13px}.pet-customizer__footer button{color:#dfebd0;background:#23382d;border:1px solid #93ab856b;border-radius:4px;align-items:center;gap:10px;min-height:44px;padding:9px 17px;display:inline-flex}.pet-customizer__footer button:hover{background:#2d4837}.pet-customizer__footer .pet-customizer__reset{color:#b0c0b6;background:0 0;border-color:#0000;padding-inline:0;font-size:14px}.pet-customizer__footer .pet-customizer__reset:hover{color:#e7ece1}@keyframes pet-customizer-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pet-preview-hop{0%,to{transform:translateY(0)scale(1)}16%{transform:translateY(0)scale(1.06,.9)}45%{transform:translateY(-15px)scale(.96,1.05)}75%{transform:translateY(0)scale(1.04,.94)}}@media (width>=720px) and (any-hover:hover) and (any-pointer:fine) and (prefers-reduced-motion:no-preference){.pet-customize-trigger{display:inline-flex}}@media (prefers-reduced-motion:reduce){.pet-customizer,.pet-customizer__preview-art,.pet-customizer__preview-art [data-part=hat]{animation:none!important}}@media print{.pet-customizer{display:none!important}}.blob-pet{z-index:110;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;contain:layout style;will-change:transform;width:64px;height:69px;transition:opacity .18s;display:none;position:fixed;top:0;left:0}.blob-pet *{pointer-events:none}.blob-pet[data-visible=true]{opacity:1}body:has([aria-modal=true]) .blob-pet{opacity:0}.blob-pet__art{filter:drop-shadow(0 3px 2px #08131133);transform-origin:50% 85%;width:100%;height:100%;display:block;overflow:visible}.blob-pet[data-state=resting] .blob-pet__art{animation:3.6s ease-in-out infinite blob-pet-breathe}@keyframes blob-pet-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.018,.982)}}@media (any-hover:hover) and (any-pointer:fine) and (prefers-reduced-motion:no-preference){.blob-pet{display:block}}
