/*! tailwindcss v4.2.1 | 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{--tw-border-style:solid;--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-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}::backdrop{--tw-border-style:solid;--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-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}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::-webkit-file-upload-button{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%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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{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}::-webkit-file-upload-button{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:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:-webkit-any([multiple],[size])) optgroup option{padding-inline-start:20px}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::-webkit-file-upload-button{margin-inline-end:4px}::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-start:0;padding-block-end:0}::-webkit-datetime-edit-year-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-month-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-day-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-hour-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-minute-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-second-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-millisecond-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-meridiem-field{padding-block-start:0;padding-block-end:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button{-webkit-appearance:button;appearance:button}input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance: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;@layer utilities{.visible{visibility:visible}.visible\!{visibility:visible!important}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.static\!{position:static!important}.start:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.end:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.end:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.hidden{display:none}.hidden\!{display:none!important}.table{display:table}.shrink{flex-shrink:1}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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)}.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)}.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,)}.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,)!important}}:root{--black:#030303;--white:#f4f4f2;--soft:#f4f4f294;--line:#f4f4f22e}*{box-sizing:border-box}html,body{background:var(--black);width:100%;height:100%;color:var(--white);margin:0;overflow:hidden}body{font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif}button,a{font:inherit}button:focus-visible{outline:1px solid var(--white);outline-offset:4px}a:focus-visible{outline:1px solid var(--white);outline-offset:4px}.topic-scroll:focus-visible{outline:1px solid var(--white);outline-offset:4px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.not-found-page{text-align:center;place-content:center;min-height:100svh;padding:2rem;display:grid}.not-found-page>span{color:#f4f4f27a;font-family:var(--font-geist-mono), monospace;letter-spacing:.2em;font-size:.7rem}.not-found-page h1{letter-spacing:-.075em;margin:1rem 0 2rem;font-size:clamp(4rem,14vw,10rem);font-weight:470;line-height:.82}.not-found-page a{color:inherit;font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;border:1px solid #f4f4f259;border-radius:999px;justify-self:center;padding:.8rem 1.1rem;font-size:.65rem;text-decoration:none}.not-found-page a:hover{background:var(--white);color:var(--black)}.not-found-page a:focus-visible{background:var(--white);color:var(--black)}.skip-link{z-index:100;background:var(--white);color:var(--black);border-radius:999px;padding:.7rem 1rem;text-decoration:none;transition:transform .18s;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.portfolio-shell{background:var(--black);isolation:isolate;width:100%;height:100svh;position:relative;overflow:hidden}.scene-stage{z-index:0;opacity:1;pointer-events:none;will-change:opacity;transition:opacity .52s;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.scene-canvas{width:100%;height:100%;display:block}.atmosphere{z-index:2;pointer-events:none;background:radial-gradient(circle at 68% 48%,#0000 0 18%,#0003 54%,#000000b8 100%),linear-gradient(90deg,#00000085,#0000 45%,#0000002e);position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.atmosphere:before{content:"";opacity:.17;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:72px 72px;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:radial-gradient(circle at 62%,#000,#0000 72%);mask-image:radial-gradient(circle at 62%,#000,#0000 72%)}.atmosphere:after{content:"";background:linear-gradient(90deg,#0000,#ffffff09,#0000);width:24%;height:120%;animation:8s linear infinite ambient-scan;position:absolute;top:-10%;left:-30%;transform:skew(-18deg)}.site-header{z-index:30;pointer-events:none;justify-content:space-between;align-items:center;padding:1.35rem clamp(1.1rem,4vw,4.5rem);display:flex;position:fixed;top:0;left:0;right:0}.brand-mark{width:auto;min-width:2.7rem;height:2.7rem;color:var(--white);cursor:pointer;font-family:var(--font-geist-mono), monospace;letter-spacing:.055em;pointer-events:auto;white-space:nowrap;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0404049e;border:1px solid #ffffff5c;border-radius:999px;place-items:center;padding:0 1rem;font-size:.7rem;font-weight:650;transition:background .18s,color .18s,transform .18s;display:grid}.brand-mark:hover{background:var(--white);color:var(--black);transform:scale(1.06)}.section-counter{color:#ffffff85;font-family:var(--font-geist-mono), monospace;letter-spacing:.16em;font-size:.62rem}.topic-scroll{z-index:5;scroll-behavior:smooth;scroll-snap-type:y mandatory;overscroll-behavior-y:contain;scrollbar-width:none;width:100%;height:100svh;position:relative;overflow:hidden auto}.topic-scroll::-webkit-scrollbar{display:none}.topic-scroll:focus{outline:0}.topic-section{scroll-snap-align:start;scroll-snap-stop:always;align-items:center;width:100%;height:100svh;min-height:100svh;padding:7rem clamp(2rem,7vw,8rem);display:flex;position:relative}.topic-section:nth-child(odd){text-align:left;justify-content:flex-start}.topic-section:nth-child(2n){text-align:right;justify-content:flex-end}.topic-section h1,.topic-section h2{z-index:2;max-width:9ch;color:var(--white);letter-spacing:-.075em;opacity:.14;text-wrap:balance;transform-origin:0;margin:0;font-size:clamp(4.6rem,12vw,11.5rem);font-weight:470;line-height:.82;transition:opacity .56s,transform .76s cubic-bezier(.2,.8,.2,1),color .56s;position:relative;transform:translateY(3.5rem)scale(.94)}.topic-section:nth-child(2n) h2{transform-origin:100%}.topic-logo-button{--logo-x:72%;z-index:1;left:var(--logo-x);aspect-ratio:1;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;width:clamp(14rem,31vw,31rem);padding:0;position:absolute;top:50%;transform:translate(-50%,-50%)}.topic-logo-button:before,.topic-logo-button:after,.topic-logo-indicator{content:"";pointer-events:none;position:absolute}.topic-logo-button:before{opacity:0;border:1px solid #ffffff29;border-radius:50%;transition:opacity .24s,transform .52s cubic-bezier(.16,1,.3,1),border-color .24s;top:3%;bottom:3%;left:3%;right:3%;transform:scale(.84)rotate(-10deg)}.topic-logo-button:after{opacity:0;background:#ffffffc7;border-radius:50%;width:.38rem;height:.38rem;transition:opacity .24s,transform .36s;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 1.8rem #ffffff8a}.topic-logo-indicator{opacity:0;border-top:1px solid #ffffff7a;border-right:1px solid #ffffff7a;width:1rem;height:1rem;transition:opacity .24s,right .36s;top:50%;right:5%;transform:translateY(-50%)rotate(45deg)}.topic-section.active .topic-logo-button:before{opacity:.1}.topic-logo-button:hover:before{opacity:.7;border-color:#ffffffb8;transform:scale(1)rotate(0)}.topic-logo-button:focus-visible:before{opacity:.7;border-color:#ffffffb8;transform:scale(1)rotate(0)}.topic-logo-button:hover:after,.topic-logo-button:hover .topic-logo-indicator{opacity:.9}.topic-logo-button:focus-visible:after{opacity:.9}.topic-logo-button:focus-visible .topic-logo-indicator{opacity:.9}.topic-logo-button:hover .topic-logo-indicator{right:1%}.topic-logo-button:focus-visible .topic-logo-indicator{right:1%}.topic-logo-button:focus-visible{outline:0}.topic-logo-button.activated:before{animation:.62s cubic-bezier(.16,1,.3,1) logo-confirm}.topic-logo-button.activated:after{opacity:1;transform:translate(-50%,-50%)scale(1.9)}.topic-logo-button:active:before{opacity:.9;transform:scale(.94)rotate(4deg)}.topic-logo-button:active:after{opacity:1;transform:translate(-50%,-50%)scale(2.4)}.topic-section.active h1,.topic-section.active h2{opacity:1;transform:translate(0)scale(1)}.topic-section:nth-child(4n+2) h2,.topic-section:nth-child(4n+4) h2{color:#0000;-webkit-text-stroke:1px #ffffffc7}.topic-section:nth-child(4n+2).active h2,.topic-section:nth-child(4n+4).active h2{-webkit-text-stroke-color:#fffffff0}.topic-2{align-items:flex-end;padding-bottom:11vh}.topic-3{align-items:flex-start;padding-top:16vh}.topic-2 h2{max-width:8ch;font-size:clamp(3.9rem,9.5vw,9.2rem)}.topic-3 h2,.topic-4 h2,.topic-5 h2{max-width:8ch;font-size:clamp(3.7rem,8.8vw,8.6rem)}.topic-5{align-items:flex-end;padding-bottom:11vh}.progress-rail{z-index:32;gap:.52rem;display:grid;position:fixed;top:50%;right:clamp(1rem,2.6vw,2.8rem);transform:translateY(-50%)}.progress-rail button{cursor:pointer;background:0 0;border:0;place-items:center end;width:2.4rem;height:1.1rem;padding:0;display:grid;position:relative}.progress-rail button em{color:#ffffffad;width:15rem;font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;opacity:0;pointer-events:none;text-align:right;text-transform:uppercase;font-size:.58rem;font-style:normal;font-weight:500;line-height:1.2;transition:opacity .22s,transform .28s;position:absolute;right:3rem;transform:translate(.7rem)}.progress-rail button:hover em{opacity:1;transform:translate(0)}.progress-rail button:focus-visible em{opacity:1;transform:translate(0)}.progress-rail button span{background:#ffffff47;width:.75rem;height:1px;transition:width .36s,background .36s;display:block}.progress-rail button:hover span{background:#ffffffad;width:1.4rem}.progress-rail button.active span{background:var(--white);width:2.4rem}.fallback-stage{perspective:1000px;background:radial-gradient(circle at 63% 48%,#ffffff13,#0000 24rem),#030303;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.fallback-connector{border-left:1px solid #ffffff2e;border-radius:50%;width:34vw;min-width:24rem;height:180%;position:absolute;top:-38%;left:52%;transform:rotate(18deg);box-shadow:-1.2rem 0 4rem #ffffff06}.fallback-connector:after{content:"";background:#fff;border-radius:50%;width:7px;height:7px;animation:2.4s ease-in-out infinite flow-signal;position:absolute;top:34%;left:-4px;box-shadow:0 -11rem 0 -2px #ffffff73,0 12rem 0 -1px #fff9,0 25rem 0 -2px #ffffff59,0 0 2rem #fffc}.fallback-node{left:var(--node-x);top:var(--node-y);aspect-ratio:1;width:clamp(13rem,27vw,28rem);opacity:var(--node-opacity);transform:translate(-50%, -50%) rotate(var(--node-rotate)) scale(var(--node-scale));transition:left .78s cubic-bezier(.2,.8,.2,1),top .78s cubic-bezier(.2,.8,.2,1),opacity .56s,transform .9s cubic-bezier(.16,1,.3,1);position:absolute}.fallback-node .orbit,.fallback-node .node-core{border-radius:50%;position:absolute}.fallback-node .orbit{border:1px solid #ffffff52}.fallback-node .orbit-a{border-style:solid dashed;animation:18s linear infinite orbit-turn;top:4%;bottom:4%;left:4%;right:4%}.fallback-node .orbit-b{border-color:#ffffff8c;animation:11s linear infinite orbit-turn-reverse;top:24%;bottom:24%;left:24%;right:24%;transform:rotate(62deg)scaleY(.58)}.fallback-node .node-core{background:radial-gradient(circle at 36% 30%,#ffffffb3,#ffffff14 45%,#0000 72%);border:1px solid #ffffffc2;top:41%;bottom:41%;left:41%;right:41%;box-shadow:0 0 3rem #ffffff1f}.fallback-node.active .orbit-a{border-color:#ffffffbd;box-shadow:0 0 5rem #ffffff12}.shape-0 .node-core{box-shadow:-4.2rem -2.4rem 0 -.32rem #ffffff80,4rem -1.8rem 0 -.38rem #ffffff6b,-3rem 3.8rem 0 -.4rem #ffffff7a,3.8rem 3.1rem 0 -.34rem #ffffff61,0 0 3rem #ffffff2e}.shape-1:before{content:"";opacity:.5;background:linear-gradient(32deg,#0000 49.6%,#fff6 50%,#0000 50.4%),linear-gradient(-32deg,#0000 49.6%,#ffffff5c 50%,#0000 50.4%);position:absolute;top:25%;bottom:25%;left:25%;right:25%}.shape-1 .orbit-a{border-style:solid;border-radius:.45rem;animation:none;top:18%;bottom:28%;left:39%;right:39%;transform:none}.shape-1 .orbit-b{border-radius:.25rem;height:10%;animation:none;top:auto;bottom:19%;left:33%;right:33%;transform:none}.shape-1 .node-core{border-radius:12%;width:10%;height:10%;top:31%;bottom:auto;left:45%;right:auto;box-shadow:-6.5rem -2.5rem 0 -.22rem #ffffff7a,6.5rem -2.5rem 0 -.22rem #ffffff6b,-6.5rem 4.4rem 0 -.22rem #ffffff5c,6.5rem 4.4rem 0 -.22rem #ffffff70,0 0 2.4rem #ffffff24}.shape-2 .orbit-a{border-style:solid;border-radius:.3rem;animation:none;top:28%;bottom:16%;left:20%;right:20%;transform:none}.shape-2 .orbit-a:before{content:"";aspect-ratio:1;border-top:1px solid #ffffff9e;border-left:1px solid #ffffff9e;width:70%;position:absolute;top:-41%;left:15%;transform:rotate(45deg)}.shape-2 .orbit-b{border-radius:.2rem .2rem 0 0;width:14%;height:27%;animation:none;top:auto;bottom:16%;left:43%;right:auto;transform:none}.shape-2 .node-core{top:43%;bottom:43%;left:43%;right:43%;box-shadow:-4.4rem -1.8rem 0 -.42rem #ffffff7a,4.4rem -1.8rem 0 -.42rem #ffffff6b,-4.2rem 3.3rem 0 -.46rem #ffffff61,4.2rem 3.3rem 0 -.46rem #ffffff75,0 0 3rem #ffffff29}.shape-3:before{content:"";opacity:.34;background:repeating-linear-gradient(0deg,#0000 0 1.45rem,#ffffff85 1.48rem 1.53rem),repeating-linear-gradient(90deg,#0000 0 1.45rem,#ffffff6b 1.48rem 1.53rem);position:absolute;top:18%;bottom:18%;left:18%;right:18%;-webkit-mask-image:linear-gradient(#000,#000);mask-image:linear-gradient(#000,#000)}.shape-3 .orbit-a{border-style:solid;border-radius:12%;animation:none;top:23%;bottom:23%;left:23%;right:23%;transform:rotate(45deg)}.shape-3 .orbit-b{border-radius:10%;animation:none;top:36%;bottom:36%;left:36%;right:36%;transform:none}.shape-3 .node-core{border-radius:12%;top:45%;bottom:45%;left:45%;right:45%;box-shadow:-5.6rem -4.2rem 0 -.35rem #ffffff7a,5.6rem -4.2rem 0 -.35rem #fff6,-5.6rem 4.2rem 0 -.35rem #ffffff5c,5.6rem 4.2rem 0 -.35rem #ffffff75,0 0 3rem #ffffff2e}.shape-4:after{content:"";border-top:4.2rem solid #0000;border-bottom:4.2rem solid #0000;border-left:7.2rem solid #ffffff14;width:0;height:0;position:absolute;top:30%;left:73%}.shape-4 .orbit-a{border-style:solid;border-radius:12% 28% 28% 12%;width:58%;height:27%;animation:none;top:36%;bottom:auto;left:16%;right:auto;transform:rotate(-6deg)}.shape-4 .orbit-b{border-style:double;border-width:.35rem;width:22%;height:22%;animation:none;top:39%;bottom:auto;left:64%;right:auto;transform:none}.shape-4 .node-core{background:#ffffff1f;border-radius:.3rem;width:8%;height:25%;top:61%;bottom:auto;left:23%;right:auto;transform:rotate(22deg)}.shape-5 .orbit-a{border-style:solid;border-radius:.3rem;animation:none;top:18%;bottom:20%;left:37%;right:37%;transform:none;box-shadow:-6.2rem 0 0 -1px #000000f0,-6.2rem 0 #ffffff6b,6.2rem 0 0 -1px #000000f0,6.2rem 0 #ffffff6b}.shape-5 .orbit-b{border:0;border-top:1px solid #ffffffad;border-radius:0;height:1px;animation:none;top:auto;bottom:14%;left:17%;right:17%;transform:none}.shape-5 .node-core{border-radius:10%;width:10%;height:7%;top:28%;bottom:auto;left:45%;right:auto;box-shadow:0 2.4rem 0 -.15rem #ffffff6b,0 4.8rem 0 -.15rem #ffffff57,-6.2rem 0 0 -.15rem #ffffff61,6.2rem 0 0 -.15rem #ffffff61,0 0 2.5rem #ffffff29}.site-loader{z-index:120;background:var(--black);opacity:1;pointer-events:auto;place-items:center;transition:opacity .62s,visibility .62s step-end;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.site-loader.ready{visibility:hidden;opacity:0;pointer-events:none}.loader-mark{color:var(--white);font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;font-size:.78rem;font-weight:600}.loader-track{background:#ffffff1f;width:5rem;height:1px;position:absolute;top:calc(50% + 2.25rem);left:50%;overflow:hidden;transform:translate(-50%)}.loader-track i{background:var(--white);width:45%;height:100%;animation:1.2s ease-in-out infinite loader-signal;display:block}.portal-curtain{z-index:40;opacity:0;pointer-events:none;background:radial-gradient(circle at var(--portal-x) 50%, transparent 0 7%, #03030314 22%, #030303f0 72%), #0303031f;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.portal-curtain span{left:var(--portal-x);aspect-ratio:1;opacity:0;border:1px solid #fff6;border-radius:50%;width:12vmax;position:absolute;top:50%;transform:translate(-50%,-50%)scale(.3)}.portal-entering .scene-stage{opacity:1}.portal-entering .portal-curtain{animation:.88s cubic-bezier(.16,1,.3,1) forwards portal-curtain-in}.portal-entering .portal-curtain span{animation:.88s cubic-bezier(.16,1,.3,1) forwards portal-ring-in}.portal-open .scene-stage{opacity:.74}.portal-open .portal-curtain{opacity:.58}.portal-switching .scene-stage{opacity:.92}.portal-switching .portal-curtain{animation:.62s ease-in-out both portal-switch-pulse}.portal-leaving .scene-stage{opacity:.92}.portal-leaving .portal-curtain{animation:.56s forwards portal-curtain-out}.portal-entering .topic-scroll,.portal-open .topic-scroll,.portal-switching .topic-scroll,.portal-leaving .topic-scroll,.identity-open .topic-scroll{pointer-events:none}.portal-entering .topic-scroll,.portal-open .topic-scroll,.portal-switching .topic-scroll,.portal-leaving .topic-scroll,.portal-entering .progress-rail,.portal-open .progress-rail,.portal-switching .progress-rail,.portal-leaving .progress-rail,.portal-entering .site-header,.portal-open .site-header,.portal-switching .site-header,.portal-leaving .site-header{opacity:0;transition:opacity .28s}.identity-scrim{z-index:48;visibility:hidden;opacity:0;cursor:default;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000085;border:0;transition:opacity .38s,visibility .38s step-end;position:fixed;top:0;bottom:0;left:0;right:0}.identity-open .identity-scrim{visibility:visible;opacity:1;transition:opacity .38s}.identity-panel{z-index:49;visibility:hidden;opacity:0;background:linear-gradient(145deg,#ffffff09,#0000 36%),#030303f5;border-right:1px solid #fff3;flex-direction:column;justify-content:space-between;width:min(35rem,88vw);padding:clamp(5rem,10vh,8rem) clamp(2rem,5vw,4rem) clamp(2rem,6vh,4rem);transition:opacity .36s,transform .56s cubic-bezier(.16,1,.3,1),visibility .56s step-end;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-102%)}.identity-open .identity-panel{visibility:visible;opacity:1;transition:opacity .36s,transform .56s cubic-bezier(.16,1,.3,1);transform:translate(0)}.identity-label,.detail-position{color:#ffffff7a;font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;text-transform:uppercase;font-size:.62rem}.identity-close{cursor:pointer;background:0 0;border:1px solid #ffffff38;border-radius:50%;width:2.6rem;height:2.6rem;position:absolute;top:1.6rem;right:1.6rem}.identity-close span{background:var(--white);width:.9rem;height:1px;position:absolute;top:50%;left:50%}.identity-close span:first-child{transform:translate(-50%,-50%)rotate(45deg)}.identity-close span:last-child{transform:translate(-50%,-50%)rotate(-45deg)}.identity-copy h2{letter-spacing:-.075em;max-width:8ch;margin:0;font-size:clamp(3.4rem,7vw,6.4rem);font-weight:470;line-height:.84}.identity-copy p{color:#ffffff9e;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;margin:1.5rem 0 0;font-size:.68rem}.identity-spectrum{border-top:1px solid #ffffff29;flex-wrap:wrap;gap:.65rem 1.2rem;padding-top:1.4rem;display:flex}.identity-spectrum span{color:#ffffff85;font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;font-size:.58rem}.detail-portal{z-index:46;background:linear-gradient(90deg, #030303d1, #0303031f 48%, #0303039e), radial-gradient(circle at var(--portal-x) 50%, transparent 0 15%, #03030338 54%, #030303bf);padding:clamp(1.2rem,3vw,3rem) clamp(1.2rem,5vw,5.5rem);animation:.62s cubic-bezier(.16,1,.3,1) both detail-reveal;display:grid;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.portal-leaving .detail-portal{animation:.52s both detail-leave}.portal-switching .detail-portal{animation:.62s ease-in-out both detail-switch}.detail-back{z-index:2;color:#ffffffb8;cursor:pointer;font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;background:0 0;border:0;align-items:center;gap:.7rem;padding:.55rem 0;font-size:.62rem;display:flex;position:absolute;top:clamp(1.2rem,3vw,3rem);left:clamp(1.2rem,5vw,5.5rem)}.detail-back span{font-size:1rem;transition:transform .24s}.detail-back:hover span{transform:translate(-.35rem)}.detail-back:focus-visible span{transform:translate(-.35rem)}.detail-pagination{z-index:2;align-items:center;gap:.85rem;display:flex;position:absolute;top:clamp(1.75rem,3.5vw,3.5rem);right:clamp(1.2rem,5vw,5.5rem)}.detail-pagination button{color:#ffffffb3;cursor:pointer;background:#03030352;border:1px solid #ffffff2e;border-radius:50%;place-items:center;width:1.8rem;height:1.8rem;padding:0;transition:background .18s,color .18s,transform .18s;display:grid}.detail-pagination button:hover{background:var(--white);color:var(--black);transform:scale(1.08)}.detail-pagination button:focus-visible{background:var(--white);color:var(--black);transform:scale(1.08)}.detail-title-wrap{max-width:50vw;position:absolute;top:50%;left:clamp(1.2rem,6vw,7rem);transform:translateY(-50%)}.detail-title-wrap h2{letter-spacing:-.075em;text-wrap:balance;max-width:8ch;margin:0;font-size:clamp(4rem,10vw,10rem);font-weight:470;line-height:.82}[data-portal-side=left] .detail-title-wrap{text-align:right;left:auto;right:clamp(1.2rem,6vw,7rem)}.detail-modules{border-top:1px solid #ffffff42;width:min(22rem,32vw);display:grid;position:absolute;bottom:clamp(1.5rem,5vw,5rem);right:clamp(1.2rem,5vw,5.5rem)}[data-portal-side=left] .detail-modules{left:clamp(1.2rem,5vw,5.5rem);right:auto}.detail-modules button{min-height:3.15rem;color:var(--white);cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #ffffff29;grid-template-columns:2.2rem 1fr auto;align-items:center;gap:.7rem;padding:0;display:grid;position:relative;overflow:hidden}.detail-modules button:before{content:"";background:#ffffff12;transition:transform .42s cubic-bezier(.16,1,.3,1);position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-102%)}.detail-modules button:hover:before,.detail-modules button.active:before{transform:translate(0)}.detail-modules button:focus-visible:before{transform:translate(0)}.detail-modules button span,.detail-modules button strong,.detail-modules button i{z-index:1;position:relative}.detail-modules button span{color:#fff6;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:.56rem}.detail-modules button strong{letter-spacing:.045em;font-size:.76rem;font-weight:500}.detail-modules button i{border-top:1px solid #ffffff9e;border-right:1px solid #ffffff9e;width:.45rem;height:.45rem;margin-right:.15rem;transition:transform .26s;transform:rotate(45deg)}.detail-modules button:hover i,.detail-modules button.active i{transform:translate(.28rem)rotate(45deg)}.detail-modules button:focus-visible i{transform:translate(.28rem)rotate(45deg)}.detail-axis{left:var(--portal-x);opacity:.18;background:linear-gradient(#0000,#ffffffb8,#0000);width:1px;height:100%;position:absolute;top:0}@keyframes loader-signal{0%{transform:translate(-120%)}55%{transform:translate(110%)}to{transform:translate(220%)}}@keyframes portal-curtain-in{0%{opacity:0}52%{opacity:.2}to{opacity:.94}}@keyframes portal-ring-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.25)}36%{opacity:.82}to{opacity:0;transform:translate(-50%,-50%)scale(8)}}@keyframes portal-curtain-out{0%{opacity:.78}to{opacity:0}}@keyframes portal-switch-pulse{0%,to{opacity:.58}50%{opacity:.9}}@keyframes detail-reveal{0%{opacity:0;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@keyframes detail-leave{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.99)}}@keyframes detail-switch{0%,to{opacity:1}48%,52%{opacity:0}}@keyframes ambient-scan{0%{transform:translate(0)skew(-18deg)}to{transform:translate(650%)skew(-18deg)}}@keyframes flow-signal{0%,to{opacity:.35;transform:translateY(-5rem)}50%{opacity:1;transform:translateY(8rem)}}@keyframes orbit-turn{to{rotate:360deg}}@keyframes orbit-turn-reverse{to{rotate:-360deg}}@keyframes logo-confirm{0%{opacity:.28;transform:scale(.9)}45%{opacity:.9;transform:scale(1.06)}to{opacity:.1;transform:scale(1)}}@media (max-width:760px){.site-header{padding:1rem}.topic-section,.topic-section:nth-child(2n),.topic-section:nth-child(odd){text-align:left;justify-content:flex-start;align-items:flex-end;padding:6rem 1.15rem 7rem}.topic-section h1,.topic-section h2,.topic-2 h2,.topic-3 h2,.topic-4 h2,.topic-5 h2{transform-origin:0;max-width:92vw;font-size:clamp(3.6rem,18vw,6.8rem);line-height:.84}.topic-logo-button{width:clamp(14rem,72vw,25rem);top:43%}.topic-2 h2,.topic-3 h2,.topic-4 h2,.topic-5 h2{max-width:8ch;font-size:clamp(2.85rem,13.5vw,5.35rem)}.progress-rail{justify-content:space-between;display:flex;top:auto;bottom:1.25rem;left:1rem;right:1rem;transform:none}.progress-rail button{place-items:center;width:1.8rem;height:1.8rem}.progress-rail button span,.progress-rail button:hover span{width:.42rem}.progress-rail button.active span{width:1.55rem}.progress-rail button em{display:none}.fallback-node{width:clamp(13rem,72vw,22rem)}.fallback-connector{width:80vw;left:60%}.atmosphere{background:radial-gradient(circle at 58% 38%,#0000 0 12%,#00000047 54%,#000000b8 100%),linear-gradient(#0000001f,#0000007a)}.identity-panel{border-right:0;width:100%;padding:6.5rem 1.3rem 2rem}.identity-copy h2{font-size:clamp(3.6rem,17vw,6.2rem)}.detail-portal{background:linear-gradient(#03030373,#0303031f 42%,#030303e6),radial-gradient(circle at 50% 40%,#0000 0 12%,#03030347 54%,#030303c7);padding:1rem}.detail-back{top:1rem;left:1rem}.detail-pagination{top:1.55rem;right:1rem}.detail-title-wrap,[data-portal-side=left] .detail-title-wrap{text-align:left;max-width:calc(100vw - 2rem);top:18%;left:1rem;right:auto;transform:none}.detail-title-wrap h2{max-width:8ch;font-size:clamp(3.25rem,15vw,6.4rem);line-height:.83}.detail-modules,[data-portal-side=left] .detail-modules{width:auto;bottom:2.2rem;left:1rem;right:1rem}.detail-axis{opacity:.11;left:50%}}@media (prefers-reduced-motion:reduce){.topic-scroll{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@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-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}:root{--font-geist-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-geist-mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}noscript{z-index:200;color:#f4f4f2;width:min(28rem,100vw - 2rem);font-family:var(--font-geist-sans);text-align:center;line-height:1.5;position:fixed;top:50%;bottom:auto;left:50%;right:auto;transform:translate(-50%,-50%)}
