@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-cyrillic-ext-wght-normal-lLTsRRxN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-ext-wght-normal-EocZY2iu.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink-0:#0b0b0d;--ink-1:#111113;--ink-2:#18181b;--ink-3:#1f1f23;--ink-4:#2a2a2f;--cream-0:#f0eee9;--cream-1:#e8e5de;--cream-2:#dcd8cf;--cream-3:#c9c4b8;--amber:#f28705;--amber-soft:#f287051f;--ok:#7bb872;--warn:#e0b740;--ff-sans:"Plus Jakarta Sans Variable", "Plus Jakarta Sans", -apple-system, system-ui, sans-serif;--ff-mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-11:.6875rem;--fs-12:.75rem;--fs-13:.8125rem;--fs-14:.875rem;--fs-15:.9375rem;--fs-base:1rem;--fs-lg:1.25rem;--fs-xl:1.563rem;--fs-2xl:1.953rem;--fs-3xl:2.441rem;--fs-4xl:3.052rem;--fs-5xl:3.815rem;--fs-6xl:4.768rem;--fs-7xl:5.96rem;--fs-8xl:7.451rem;--tr-display:-.035em;--tr-tight:-.02em;--tr-normal:0;--tr-mono:.04em;--tr-over:.14em;--lh-display:.95;--lh-tight:1.1;--lh-snug:1.3;--lh-body:1.6;--lh-loose:1.7;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--s-20:80px;--s-24:96px;--s-32:128px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-1:.18s;--dur-2:.32s;--dur-3:.52s;--dur-4:.82s;--dur-5:1.2s;--page-max:1440px;--gutter:24px;--margin:48px;--page-x:20px;--section-y:80px;--focus-ring:0 0 0 3px #f2870559}[data-theme=dark],:root{--bg:var(--ink-0);--surface-1:var(--ink-1);--surface-2:var(--ink-2);--surface-3:var(--ink-3);--fg:#f0eee9;--fg-mute:#f0eee9ad;--fg-faint:#f0eee966;--rule:#f0eee914;--rule-strong:#f0eee92e;--accent:var(--amber);--on-accent:var(--ink-0);--curtain:var(--ink-0);--scrollbar-thumb:var(--rule-strong);--scrollbar-thumb-hover:var(--accent)}[data-theme=light]{--bg:var(--cream-0);--surface-1:var(--cream-1);--surface-2:var(--cream-2);--surface-3:#b8b2a3;--fg:#1a1917;--fg-mute:#1a1917ad;--fg-faint:#1a191766;--rule:#1a19171a;--rule-strong:#1a191738;--accent:var(--amber);--on-accent:var(--ink-0);--curtain:var(--cream-0);--scrollbar-thumb:var(--rule-strong);--scrollbar-thumb-hover:var(--accent)}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);font-family:var(--ff-sans);font-feature-settings:"ss01", "cv01", "ss02";font-variation-settings:"wght" 450;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;transition:background var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out);margin:0;padding:0}body.booting{overflow:hidden}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);transition:background var(--dur-1) var(--ease-out);background-clip:padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}::-webkit-scrollbar-corner{background:0 0}@supports ((-moz-appearance:none)){html{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}}::selection{background:var(--accent);color:var(--on-accent)}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer;background:0 0;border:0;font-family:inherit}.mono{font-family:var(--ff-mono);font-feature-settings:"zero", "ss01"}.overline{font-family:var(--ff-mono);font-size:var(--fs-11);letter-spacing:var(--tr-over);text-transform:uppercase;color:var(--fg-mute);font-weight:500}.display{font-size:clamp(3.5rem,9vw,7.2rem);line-height:var(--lh-display);letter-spacing:var(--tr-display);font-variation-settings:"wght" 700;text-wrap:balance;margin:0;font-weight:700}.h1{letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:clamp(2.4rem,5vw,4rem);font-weight:700;line-height:1.05}.h2{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(1.8rem,3.2vw,2.6rem);font-weight:600;line-height:1.1}.h3{letter-spacing:-.02em;margin:0;font-size:clamp(1.25rem,1.8vw,1.6rem);font-weight:600;line-height:1.2}.lede{font-size:var(--fs-lg);line-height:var(--lh-loose);color:var(--fg-mute);max-width:60ch}.body{font-size:var(--fs-15);line-height:var(--lh-body);color:var(--fg-mute);max-width:65ch}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:1px}@media (width>=768px){:root{--page-x:40px;--section-y:100px}}@media (width>=1280px){:root{--page-x:80px;--section-y:120px}}.page-container{max-width:var(--page-max);padding-inline:var(--page-x);margin-inline:auto}@media (width<=767px){:root{--dur-3:.32s;--dur-4:.52s;--dur-5:.82s}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.reveal{opacity:0;transition:opacity .72s var(--ease-out), transform .72s var(--ease-out);transition-delay:var(--reveal-delay,0s);will-change:opacity, transform;transform:translateY(28px)}.reveal.in{opacity:1;transform:translateY(0)}.mask-reveal{display:inline-block;overflow:hidden}.mask-reveal>span{transition:transform 1s var(--ease-out);transition-delay:var(--reveal-delay,0s);will-change:transform;display:inline-block;transform:translateY(110%)}.mask-reveal.in>span{transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal,.mask-reveal>span{opacity:1;transform:none}}.container{max-width:var(--page-max);padding:0 var(--margin);margin:0 auto}@media (width<=720px){.container{padding:0 var(--s-6)}:root{--margin:24px}}.boot{z-index:9999;pointer-events:none;position:fixed;inset:0}.boot[data-phase=running]{pointer-events:auto}.boot-inner{background:var(--ink-0);color:var(--cream-0);transition:transform .48s var(--ease-out);flex-direction:column;justify-content:space-between;padding:clamp(24px,5vw,64px);display:flex;position:absolute;inset:0}.boot-curtain{background:var(--ink-1);transition:transform .48s var(--ease-out) 60ms;z-index:-1;position:absolute;inset:0}.boot-head{letter-spacing:.14em;color:#f0eee98c;justify-content:space-between;font-size:11px;display:flex}.boot-body{max-width:840px;margin:auto 0}.boot-title{font-family:var(--ff-mono);margin-bottom:var(--s-10);letter-spacing:.02em;font-size:clamp(14px,1.5vw,18px)}.boot-cursor{animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.boot-list{gap:10px;font-size:13px;display:grid}.boot-row{color:#f0eee940;transition:color .32s var(--ease-out);grid-template-columns:160px 1fr 1fr 60px;align-items:baseline;gap:16px;display:grid}.boot-row.active{color:#f0eee9d9}.boot-row.done{color:#f0eee9bf}.boot-row.done .boot-s{color:var(--ok)}.boot-row.active .boot-s,.boot-k{color:var(--amber)}.boot-row:not(.done):not(.active) .boot-k{color:#f0eee938}.boot-dots{color:#f0eee92e;white-space:nowrap}.boot-v{color:inherit}.boot-s{text-align:right}.boot-foot{flex-direction:column;gap:12px;display:flex}.boot-bar{background:#f0eee914;height:2px;position:relative}.boot-bar-fill{background:var(--amber);transition:width .12s linear;position:absolute;inset:0 auto 0 0}.boot-meta{letter-spacing:.14em;color:#f0eee98c;justify-content:space-between;font-size:11px;display:flex}@media (width<=720px){.boot-row{grid-template-columns:110px 1fr 50px}.boot-dots{display:none}}@media (prefers-reduced-motion:reduce){.boot-cursor{animation:none!important}.boot-inner,.boot-curtain,.boot-row,.boot-bar-fill{transition:none!important}}.cursor{pointer-events:none;z-index:9998;mix-blend-mode:difference;position:fixed;top:0;left:0}.cursor-inner{background:#f0eee9;border-radius:50%;width:6px;height:6px;transition:opacity .2s,background .2s}.cursor-outer{width:30px;height:30px;transition:width .32s var(--ease-out), height .32s var(--ease-out), border-radius .32s var(--ease-out), background .24s ease, color .24s ease, opacity .2s ease;border:1px solid #f0eee9e6;border-radius:50%;justify-content:center;align-items:center;display:flex}.cursor[data-hidden=true]{opacity:0}.cursor-outer.down{transform-origin:50%;width:28px;height:28px}.cursor-outer.ctx-link{width:20px;height:15px}.cursor-outer.ctx-external{width:30px;height:30px}.cursor-outer.ctx-view~.cursor-inner,.cursor-outer.ctx-drag~.cursor-inner{opacity:0}.cursor-label{letter-spacing:.12em;font-size:10px;font-weight:600}@media (pointer:coarse){.cursor{display:none}}.site-header{--island-ease:cubic-bezier(.22, .61, .36, 1);--island-dur:.3s;z-index:100;padding:0 var(--margin);border-bottom:1px solid var(--rule);color:var(--fg);pointer-events:none;transition:padding var(--island-dur) var(--island-ease), border-color var(--island-dur) var(--island-ease), color .28s ease;background:0 0;position:fixed;top:0;left:0;right:0}.site-header-shell,.site-header-row,.site-header .brand,.site-header .site-nav,.site-header .site-meta,.site-header .theme-toggle,.site-header .hamburger-btn{pointer-events:auto}.site-header-shell{width:100%;max-width:var(--page-max);box-shadow:none;transition:width var(--island-dur) var(--island-ease), max-width var(--island-dur) var(--island-ease), padding var(--island-dur) var(--island-ease), background-color var(--island-dur) var(--island-ease), border-color var(--island-dur) var(--island-ease), border-radius var(--island-dur) var(--island-ease), box-shadow var(--island-dur) var(--island-ease);background:0 0;border:.5px solid #0000;border-radius:0;margin:0 auto;padding:0;overflow:hidden}.site-header.over-dark:not(.island){color:#f2f2f2;border-bottom-color:#ffffff14}.site-header.over-dark:not(.island) .brand,.site-header.over-dark:not(.island) .brand-text,.site-header.over-dark:not(.island) .brand-role,.site-header.over-dark:not(.island) .site-nav .u-link,.site-header.over-dark:not(.island) .site-clock,.site-header.over-dark:not(.island) .theme-toggle{color:#f2f2f2;transition:color .28s,opacity .22s}.site-header.over-dark:not(.island) .theme-toggle{border-color:#ffffff2e}.site-header.over-dark:not(.island) .brand-role,.site-header.over-dark:not(.island) .site-clock{color:#f2f2f2b3}.site-header-row{align-items:center;gap:var(--s-8);height:64px;transition:height var(--island-dur) var(--island-ease), gap var(--island-dur) var(--island-ease);grid-template-columns:1fr auto 1fr;display:grid}.site-header.island{color:var(--cream-0);border-bottom-color:#0000;padding-top:16px}.site-header.island .site-header-shell{-webkit-backdrop-filter:blur(12px)saturate(1.3);background:#0a0a0c80;border-color:#ffffff1a;border-radius:999px;width:min(860px,100%);max-width:860px;padding:4px 20px;box-shadow:0 8px 32px #0006}[data-theme=light] .site-header.island .site-header-shell{background:#141311e0}.site-header.island .site-header-row{gap:var(--s-6);height:52px}.site-header.island .brand-role,.site-header.island .site-clock{opacity:0;pointer-events:none;max-width:0;transition:opacity .22s var(--island-ease), max-width var(--island-dur) var(--island-ease) 40ms, padding var(--island-dur) var(--island-ease) 40ms, margin var(--island-dur) var(--island-ease) 40ms;border-width:0;margin-left:0;margin-right:0;padding-left:0;padding-right:0}.site-header.island .brand-text{color:var(--cream-0);font-size:13px}.site-header.island .site-nav{gap:var(--s-5)}.site-header.island .site-nav .u-link{color:var(--cream-0);font-size:13px}.site-header.island .site-meta{gap:10px}.site-header.island .theme-toggle{color:var(--cream-0);border-color:#ffffff2e;padding:5px 10px;font-size:10px}.site-header.island .contact-cta{letter-spacing:.01em;border-radius:999px;padding:6px 14px;font-size:12px}.site-header.island .brand{color:var(--cream-0);gap:10px}.site-header.island .brand-mark{width:9px;height:9px}.brand-text,.brand-role,.site-clock,.theme-toggle{transition:opacity .22s var(--island-ease) .18s, max-width var(--island-dur) var(--island-ease), padding var(--island-dur) var(--island-ease), margin var(--island-dur) var(--island-ease), font-size var(--island-dur) var(--island-ease), color .28s ease;max-width:300px}.brand-role,.site-clock{white-space:nowrap;overflow:hidden}.brand{letter-spacing:-.01em;align-items:center;gap:12px;font-size:13px;font-weight:700;display:flex}.brand-mark{background:var(--amber);width:10px;height:10px;transition:transform .42s var(--ease-out);display:inline-block}.brand:hover .brand-mark{transform:rotate(45deg)}.brand-logo{width:46px;height:46px;transition:width var(--island-dur) var(--island-ease), height var(--island-dur) var(--island-ease);border-radius:50%;flex-shrink:0;display:block;overflow:hidden}.site-header.island .brand-logo{width:32px;height:32px}.brand-text{letter-spacing:.02em}.brand-role{opacity:.8;margin-left:10px}.site-nav{gap:var(--s-8);transition:gap var(--island-dur) var(--island-ease);font-size:13px;font-weight:500;display:flex}.site-meta{align-items:center;gap:var(--s-6);transition:gap var(--island-dur) var(--island-ease);justify-self:end;display:flex}.site-clock{letter-spacing:.12em;color:var(--fg-mute);align-items:center;gap:6px;font-size:11px;display:inline-flex}.site-clock-dot{background:var(--amber);width:6px;height:6px;box-shadow:0 0 0 0 color-mix(in oklab, var(--amber) 60%, transparent);animation:pulse 2s var(--ease-out) infinite;border-radius:50%}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in oklab, var(--amber) 60%, transparent)}70%{box-shadow:0 0 0 10px #0000}to{box-shadow:0 0 #0000}}.theme-toggle{border:1px solid var(--rule-strong);letter-spacing:.12em;transition:background .24s var(--ease-out), border-color .24s var(--ease-out);padding:6px 10px;font-size:11px}.theme-toggle:hover{background:var(--surface-2);border-color:var(--fg-faint)}.contact-cta{background:var(--accent);color:var(--on-accent);transition:background .24s var(--ease-out), transform .24s var(--ease-out);align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.contact-cta:hover{background:color-mix(in oklab, var(--amber) 90%, white);transform:translateY(-1px)}.contact-dot{background:var(--on-accent);border-radius:50%;width:6px;height:6px}.site-progress-bar{z-index:99;pointer-events:none;background:0 0;height:2px;position:fixed;top:0;left:0;right:0}.site-progress-fill{background:var(--amber);transform-origin:0;transition:transform .12s linear;position:absolute;inset:0;transform:scaleX(0)}@media (width<=960px){.site-nav{display:none}.site-header-row{grid-template-columns:1fr auto}.brand-role{display:none}}.u-link{font-size:inherit;cursor:pointer;align-items:center;gap:6px;padding-bottom:3px;line-height:1.3;display:inline-flex;position:relative}.u-label{position:relative}.u-label:after{content:"";transform-origin:0;height:1px;transition:transform .42s var(--ease-out);background:currentColor;position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.u-link:hover .u-label:after{transform:scaleX(1)}.u-link:hover .u-ext{transform:translate(3px,-3px)}.u-ext{transition:transform .32s var(--ease-out);font-size:.9em;display:inline-block}.btn{transition:background .26s var(--ease-out), color .26s var(--ease-out), transform .26s var(--ease-out);cursor:pointer;border:1px solid #0000;align-items:center;gap:10px;padding:14px 22px;font-size:14px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{transform:translateY(-2px)}.btn-primary:active{transform:scale(.97)translateY(0)}.btn-ghost{color:var(--fg);border-color:var(--rule-strong);background:0 0}.btn-ghost:hover{border-color:var(--fg);background:var(--surface-2)}.btn-ghost:active{transform:scale(.97)}.btn-arrow{transition:transform .32s var(--ease-out);display:inline-block}.btn:hover .btn-arrow{transform:translate(4px)}.btn>span:first-child{align-items:center;gap:8px;display:inline-flex}.media{background:repeating-linear-gradient(135deg,#2a2824 0 22px,#ffffff0a 22px 44px);width:100%;position:relative;overflow:hidden}.media-tag{letter-spacing:.14em;text-transform:uppercase;color:#f0eee9b3;pointer-events:none;justify-content:space-between;font-size:10px;display:flex;position:absolute;inset:14px}.media-glow{pointer-events:none;background:radial-gradient(at 70% 30%,#f287051a,#0000 60%);position:absolute;inset:0}.section-head{align-items:end;gap:var(--s-10);padding:var(--s-24) 0 var(--s-12);border-top:1px solid var(--rule);grid-template-columns:1fr auto;display:grid}.section-head-left{gap:var(--s-6);flex-direction:column;display:flex}.section-head-title{max-width:16ch}.sec-idx{color:var(--accent);margin-right:10px}@media (width<=720px){.section-head{grid-template-columns:1fr}.section-head-right{font-size:11px}}.hero{min-height:100vh;padding:calc(var(--s-16) + 64px) var(--margin) 120px;background:var(--ink-0);color:var(--cream-0);flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(circle,#ffffff21 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 80%,#0000 20%,#000 70%);mask-image:radial-gradient(90% 80%,#0000 20%,#000 70%)}.hero-inner,.hero-scroll-hint,.hero-marquee{z-index:1;position:relative}[data-theme=light] .hero{background:var(--ink-0);color:var(--cream-0)}.hero-inner{max-width:var(--page-max);gap:var(--s-10);flex-direction:column;width:100%;margin:0 auto;display:flex}.hero-meta{align-items:center;gap:var(--s-6);flex-wrap:wrap;display:flex}.hero-meta-tag{letter-spacing:.14em;color:#f0eee98c;font-size:11px}.hero-meta-accent{color:var(--amber);align-items:center;gap:8px;display:inline-flex}.hero-meta-rule{background:#f0eee933;flex:0 0 60px;height:1px}.amber-dot{background:var(--amber);width:8px;height:8px;animation:pulse 2s var(--ease-out) infinite;border-radius:50%}.hero-display{letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(2.6rem,8vw,6.4rem);font-weight:700;line-height:.98}.hero-arrow{color:var(--amber);margin-right:.1em;font-size:.7em;font-weight:400;display:inline-block;transform:translateY(-.08em)}.hero-line{animation:hero-line-in .75s var(--ease-out) both;animation-delay:var(--reveal-delay,0s);display:inline-block}@keyframes hero-line-in{0%{opacity:0;transform:translateY(.35em)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.hero-line{opacity:1;animation:none;transform:none}}.rolodex{--rolodex-ease:cubic-bezier(.62, .04, .24, 1);perspective:1200px;perspective-origin:50% 60%;vertical-align:baseline;text-align:left;white-space:nowrap;display:inline-block}.rolodex-stage{transform-style:preserve-3d;vertical-align:baseline;display:inline-block;position:relative}.rolodex-word{backface-visibility:hidden;transform-origin:50% 100%;will-change:transform, opacity, filter;display:inline-block}.rolodex-word--current{position:relative}.rolodex-word--outgoing{pointer-events:none;position:absolute;top:0;left:0}.rolodex[data-phase=flip] .rolodex-word--current{animation:rolodex-in var(--rolodex-dur,.6s) var(--rolodex-ease) both}.rolodex[data-phase=flip] .rolodex-word--outgoing{animation:rolodex-out calc(var(--rolodex-dur,.6s) * .62) var(--rolodex-ease) both}@keyframes rolodex-in{0%{opacity:0;filter:blur(5px);transform:rotateX(105deg)}40%{opacity:1;filter:blur()}72%{transform:rotateX(-9deg)}87%{transform:rotateX(3deg)}to{opacity:1;transform:rotateX(0)}}@keyframes rolodex-out{0%{opacity:1;filter:blur();transform:rotateX(0)}to{opacity:0;filter:blur(3px);transform:rotateX(-92deg)}}@media (prefers-reduced-motion:reduce){.rolodex[data-phase=flip] .rolodex-word--current,.rolodex[data-phase=flip] .rolodex-word--outgoing{animation:none}.rolodex-word--outgoing{display:none}}.hero-grid{gap:var(--s-10);padding-top:var(--s-8);border-top:1px solid #f0eee91a;grid-template-columns:2fr 1fr 1fr 1fr;display:grid}.hero-cell{flex-direction:column;gap:12px;display:flex}.hero-lede{color:#f0eee9b8;max-width:42ch;font-size:clamp(14px,1.15vw,16px);line-height:1.6}.hero-cell-v{color:var(--cream-0);font-size:13px;line-height:1.5}.hero-scroll-hint{align-items:center;gap:var(--s-4);color:#f0eee980;display:flex}.hero-scroll-line{background:#f0eee91a;flex:1;max-width:200px;height:1px;position:relative}.hero-scroll-line-fill{background:var(--amber);transform-origin:0;animation:scroll-line 2.2s var(--ease-in-out) infinite;position:absolute;inset:0}@keyframes scroll-line{0%{transform-origin:0;transform:scaleX(0)}50%{transform-origin:0;transform:scaleX(1)}50.001%{transform-origin:100%;transform:scaleX(1)}to{transform-origin:100%;transform:scaleX(0)}}.hero-portrait{object-fit:cover;object-position:left center;mix-blend-mode:screen;opacity:.9;pointer-events:none;-webkit-user-select:none;user-select:none;width:42%;height:100%;position:absolute;top:0;right:0;-webkit-mask-image:linear-gradient(270deg,#000 55%,#0000 95%);mask-image:linear-gradient(270deg,#000 55%,#0000 95%)}.hero-marquee{background:var(--ink-0);border-top:1px solid #f0eee91a;border-bottom:1px solid #f0eee91a;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.hero-marquee .logoloop{padding-block:16px}.hero-marquee .logoloop__list{margin:0;padding:0;list-style:none}.hero-marquee .hero-client{letter-spacing:.18em;text-transform:uppercase;color:#f0eee999;white-space:nowrap;transition:color .3s var(--ease-out);align-items:center;font-size:14px;display:inline-flex}.hero-marquee .logoloop__item:hover .hero-client{color:var(--cream-0)}.hero-marquee .logoloop__item{align-items:center;display:flex}.hero-marquee .logoloop__item:after{content:"";background:var(--amber);border-radius:50%;flex:none;width:5px;height:5px;margin-left:32px}@media (width<=960px){.hero-grid{grid-template-columns:1fr 1fr}.hero-grid .hero-lede{grid-column:1/-1}}@media (width<=560px){.hero-grid{grid-template-columns:1fr}}.work{padding:0 var(--margin) var(--s-24)}.work-head{max-width:var(--page-max);margin:0 auto}.work-head-meta{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.work-counter{letter-spacing:-.02em;align-items:baseline;gap:6px;font-size:38px;font-weight:500;line-height:1;display:flex}.work-counter-n{color:var(--fg)}.work-counter-sep,.work-counter-t{color:var(--fg-faint);font-size:18px}.work-progress{background:var(--rule);width:160px;height:1px;position:relative;overflow:hidden}.work-progress-fill{background:var(--amber);transform-origin:0;transition:transform .18s var(--ease-out);position:absolute;inset:0;transform:scaleX(0)}.work-rail{margin-top:var(--s-12);position:relative}.rail-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:20px;overflow:auto hidden}.rail-scroll::-webkit-scrollbar{display:none}.rail-track{padding-left:max(var(--margin), calc((100vw - var(--page-max)) / 2 + var(--margin)));padding-right:max(var(--margin), calc((100vw - var(--page-max)) / 2 + var(--margin)));gap:24px;width:max-content;display:flex}.work-rail .rail-scroll{filter:blur(6px)saturate(.8);transition:filter var(--dur-3) var(--ease-out)}.work-wip{z-index:3;pointer-events:none;background:#0b0b0d66;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}[data-theme=light] .work-wip{background:#f0eee973}.work-wip-badge{max-width:min(90vw,420px);font-family:var(--ff-mono);font-size:var(--fs-12);letter-spacing:var(--tr-over);text-transform:uppercase;text-align:center;color:var(--fg);background:var(--surface-1);border:1px dashed var(--rule-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);align-items:center;gap:10px;margin:0;padding:14px 22px;display:inline-flex}.work-wip-dot{background:var(--amber);width:7px;height:7px;box-shadow:0 0 8px var(--amber);animation:wip-pulse 1.8s var(--ease-in-out) infinite;border-radius:50%;flex:none}@keyframes wip-pulse{0%,to{opacity:1}50%{opacity:.25}}@media (width<=1279px){.work-wip{align-items:flex-start}.work-wip-badge{position:sticky;top:45vh}}.proj-card{scroll-snap-align:start;background:var(--surface-1);height:520px;transition:transform .52s var(--ease-out);flex:0 0 380px;grid-template-rows:1.05fr 1fr;display:grid;position:relative;overflow:hidden}.proj-card:hover{transform:translateY(-6px)}[data-theme=light] .proj-card{background:var(--surface-1)}.proj-card-media{position:relative;overflow:hidden}.proj-card-meta-top{z-index:2;justify-content:space-between;align-items:center;display:flex;position:absolute;top:14px;left:14px;right:14px}.proj-card-n{letter-spacing:.12em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--cream-0);background:#0b0b0d99;padding:4px 8px;font-size:11px}.proj-status{font-family:var(--ff-mono);letter-spacing:.12em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--cream-0);background:#0b0b0d99;align-items:center;gap:6px;padding:4px 8px;font-size:10px;font-weight:600;display:inline-flex}.proj-status-dot{background:var(--fg-faint);border-radius:50%;width:6px;height:6px}.proj-status-live .proj-status-dot{background:var(--ok);box-shadow:0 0 6px var(--ok)}.proj-status-beta .proj-status-dot{background:var(--amber);box-shadow:0 0 6px var(--amber)}.proj-status-case .proj-status-dot{background:#f0eee980}.proj-card-body{flex-direction:column;gap:12px;padding:24px;display:flex}.proj-card-title{letter-spacing:-.025em;margin:0;font-size:26px;font-weight:700;line-height:1.1}.proj-card-desc{color:var(--fg-mute);flex:1;margin:0;font-size:13px;line-height:1.5}.proj-card-foot{border-top:1px solid var(--rule);flex-direction:column;gap:14px;padding-top:14px;display:flex}.proj-card-stack{flex-wrap:wrap;gap:6px;display:flex}.stack-tag{letter-spacing:.06em;background:var(--surface-2);color:var(--fg-mute);padding:3px 6px;font-size:10px}.proj-card-role{justify-content:space-between;align-items:center;display:flex}.proj-card-role-v{color:var(--fg);font-size:11px}@media (width<=720px){.proj-card-role{display:none}}.rail-end{scroll-snap-align:start;border:1px dashed var(--rule-strong);background:0 0;flex-direction:column;flex:0 0 380px;justify-content:space-between;height:520px;padding:32px;display:flex}.work-controls{gap:10px;display:flex;position:absolute;top:-72px;right:0}.rail-btn{border:1px solid var(--rule-strong);width:48px;height:48px;transition:background .24s var(--ease-out), border-color .24s var(--ease-out)}.rail-btn:hover{background:var(--surface-2);border-color:var(--fg)}.rail-btn:active{transform:scale(.95)}.social{padding:0 var(--margin)}.social,.services,.process,.about,.idx{max-width:var(--page-max);margin:0 auto}.social-stats{gap:var(--s-16);margin-top:var(--s-12);padding-bottom:var(--s-12);border-bottom:1px solid var(--rule);flex-wrap:wrap;display:flex}.social-stat{gap:var(--s-2);flex-direction:column;min-width:120px;display:flex}.social-stat__value{font-size:clamp(40px,5vw,64px);font-family:var(--ff-mono);color:var(--accent);letter-spacing:-.03em;font-weight:400;line-height:1}.social-stat__label{letter-spacing:.1em;color:var(--fg-mute);text-transform:uppercase;font-size:11px}.depo-grid{gap:var(--s-6);margin-top:var(--s-12);grid-template-columns:repeat(2,1fr);display:grid}.depo-card{background:var(--surface-1);padding:var(--s-10);gap:var(--s-8);transition:background .32s var(--ease-out);flex-direction:column;display:flex}.depo-card:hover{background:var(--surface-2)}.depo-quote{flex:1;margin:0}.depo-quote p{color:var(--fg);margin:0;font-size:16px;font-style:italic;line-height:1.65}.depo-author{align-items:center;gap:var(--s-4);padding-top:var(--s-6);border-top:1px solid var(--rule);display:flex}.depo-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:48px;height:48px}.depo-avatar--initials{background:var(--accent);font-family:var(--ff-mono);color:var(--ink-0);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.depo-author-info{flex-direction:column;gap:3px;display:flex}.depo-name{color:var(--fg);letter-spacing:-.01em;font-size:14px;font-weight:600}.depo-role{letter-spacing:.08em;color:var(--fg-mute);text-transform:uppercase;font-size:11px}.coverflow{margin-top:var(--s-12);-webkit-user-select:none;user-select:none;touch-action:pan-y;display:none;overflow:hidden}.coverflow-track{transition:transform .3s var(--ease-out);will-change:transform;display:flex}.coverflow-slide{width:100%;min-width:100%;padding:var(--s-2);flex-shrink:0}.coverflow-dots{margin-top:var(--s-6);justify-content:center;align-items:center;gap:8px;display:flex}.coverflow-dot{background:var(--fg-mute);cursor:pointer;border:none;border-radius:3px;width:6px;height:6px;padding:0;transition:background .2s,width .2s}.coverflow-dot.active{background:var(--accent);width:20px}@media (width<=720px){.depo-grid{display:none}.coverflow{display:block}.social-stats{gap:var(--s-10)}}.services{padding:0 var(--margin)}.services,.process,.about,.idx{max-width:var(--page-max);margin:0 auto}.services-caption{color:var(--fg-mute);letter-spacing:.12em;font-size:11px}.services-grid{background:var(--rule);margin-top:var(--s-12);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);transition:grid-template-columns var(--dur-3) var(--ease-out);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.svc{isolation:isolate;background:var(--bg);padding:var(--s-10);gap:var(--s-4);min-width:0;min-height:540px;transition:background .32s var(--ease-out), opacity .32s var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.svc:hover{background:var(--surface-1)}@media (width>=961px){.services-grid:has(.svc:first-child:is(:hover,:focus-within)){grid-template-columns:1.4fr .8fr .8fr}.services-grid:has(.svc:nth-child(2):is(:hover,:focus-within)){grid-template-columns:.8fr 1.4fr .8fr}.services-grid:has(.svc:nth-child(3):is(:hover,:focus-within)){grid-template-columns:.8fr .8fr 1.4fr}.services-grid:has(.svc:is(:hover,:focus-within)) .svc:not(:hover):not(:focus-within){opacity:.55}}@media (prefers-reduced-motion:reduce){.services-grid{transition:none}:is(.services-grid:has(.svc:first-child:is(:hover,:focus-within)),.services-grid:has(.svc:nth-child(2):is(:hover,:focus-within)),.services-grid:has(.svc:nth-child(3):is(:hover,:focus-within))){grid-template-columns:repeat(3,1fr)}.svc{transition:background .32s var(--ease-out)}.services-grid:has(.svc:is(:hover,:focus-within)) .svc:not(:hover):not(:focus-within){opacity:1}}.svc-ghost{z-index:-1;letter-spacing:-.05em;color:var(--fg);opacity:.05;pointer-events:none;-webkit-user-select:none;user-select:none;transition:opacity .32s var(--ease-out);font-size:clamp(120px,12vw,190px);font-weight:700;line-height:1;position:absolute;top:-.14em;right:-.04em}.svc:hover .svc-ghost{opacity:.09}[data-theme=light] .svc-ghost{opacity:.07}[data-theme=light] .svc:hover .svc-ghost{opacity:.11}.svc-head{justify-content:space-between;align-items:center;min-height:18px;display:flex}.svc-badge{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);align-items:center;gap:6px;font-size:10px;font-weight:500;display:inline-flex}.svc-verb{margin:0 0 var(--s-2);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:500}.svc-title{letter-spacing:-.02em;margin:0;font-size:clamp(19px,2vw,23px);font-weight:600;line-height:1.2}.svc-list{padding:var(--s-6) 0 0;border-top:1px solid var(--rule);gap:12px;margin:auto 0 0;list-style:none;display:grid}.svc-list li{color:var(--fg-mute);grid-template-columns:16px 1fr;gap:10px;font-size:13px;line-height:1.5;display:grid}.svc-list-mark{color:var(--accent);font-size:12px}.svc-foot{margin-top:var(--s-6)}.svc-cta{justify-content:center;align-items:center;width:100%;padding:15px 20px;display:flex}.svc--featured{box-shadow:inset 0 2px 0 0 var(--accent)}.services-maint{margin:var(--s-6) 0 0;color:var(--fg-mute);align-items:baseline;gap:10px;font-size:13px;line-height:1.5;display:flex}.services-maint-icon{flex:none;font-size:12px}@media (width<=960px){.services-grid{grid-template-columns:1fr}}.process{padding:0 var(--margin)}.process-list{margin-top:var(--s-10)}.process-row{gap:var(--s-10);padding:var(--s-10) 0;border-top:1px solid var(--rule);transition:opacity .76s cubic-bezier(.16, 1, .3, 1), transform .76s cubic-bezier(.16, 1, .3, 1), background .42s var(--ease-out), border-color .42s var(--ease-out);grid-template-columns:120px 1fr;align-items:start;display:grid}.process-row:last-child{border-bottom:1px solid var(--rule)}.process-row.reveal{transform:translateY(34px)scale(.985)}.process-row.reveal.in{transform:translateY(0)scale(1)}.process-row:hover{background:var(--surface-1);transform:translate(12px)}.process-n{color:var(--accent);letter-spacing:-.02em;font-size:40px;font-weight:500;line-height:1}.process-phase{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;display:flex}.process-days{color:var(--fg-mute);letter-spacing:.12em;font-size:11px}.process-title-wrap{margin:0}.process-title{letter-spacing:-.025em;max-width:24ch;margin:0 0 12px;font-size:clamp(22px,2.6vw,32px);font-weight:700;line-height:1.15;display:block}.process-desc{color:var(--fg-mute);max-width:60ch;margin:0 0 14px;font-size:15px;line-height:1.65}.process-deliv{letter-spacing:.12em;color:var(--fg-mute);flex-wrap:wrap;gap:0;margin:0;padding:0;font-size:11px;list-style:none;display:flex}.process-deliv li{align-items:center;display:flex}.process-deliv li:not(:last-child):after{content:"·";color:var(--accent);padding:0 8px}.process-head{all:unset;cursor:default;display:contents}.process-toggle-icon{display:none}@media (width<=767px){.process-row{grid-template-columns:1fr;gap:20px}.process-n{font-size:28px}.process-head{text-align:left;cursor:pointer;width:100%;padding:0;display:block}.process-phase{padding-right:28px;position:relative}.process-toggle-icon{color:var(--fg-mute);transition:transform .2s var(--ease-out), color .2s var(--ease-out);font-size:18px;line-height:1;display:block;position:absolute;top:0;right:0}.process-row[data-open=true] .process-toggle-icon{color:var(--accent);transform:rotate(45deg)}.process-body-collapsible{transition:grid-template-rows .26s var(--ease-out);grid-template-rows:0fr;display:grid}.process-row[data-open=true] .process-body-collapsible{grid-template-rows:1fr}.process-body-collapsible-inner{min-height:0;overflow:hidden}.process-desc{margin-top:14px}.process-deliv{flex-wrap:unset;display:block}.process-deliv li{padding:4px 0}.process-deliv li:not(:last-child):after{content:none}}@media (prefers-reduced-motion:reduce){.process-row,.process-row.reveal,.process-row.reveal.in,.process-row:hover{transform:none}.process-body-collapsible,.process-toggle-icon{transition:none}}.about{padding:0 var(--margin) var(--s-24)}.about-grid{gap:var(--s-16);margin-top:var(--s-12);grid-template-columns:1fr 1.4fr;display:grid}.about-portrait-col{flex-direction:column;gap:10px;display:flex}.about-portrait-wrap{width:100%;height:100%;min-height:560px;position:relative;overflow:hidden}.about-portrait-wrap.reveal{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0s);will-change:opacity, transform;transform:translate(-12px)}.about-portrait-wrap.reveal.in{opacity:1;transform:translate(0)}.about-portrait-inner{position:absolute;inset:0}.about-portrait--light,:root[data-theme=light] .about-portrait--dark{display:none}:root[data-theme=light] .about-portrait--light{display:block}.about-portrait-wrap:before{content:"";opacity:.4;z-index:2;background:#f28705;width:1px;height:80%;position:absolute;top:10%;left:0}.about-portrait-cap{letter-spacing:.12em;color:var(--fg-faint);justify-content:space-between;font-size:10px;display:flex}.about-copy{gap:var(--s-10);flex-direction:column;display:flex}.about-quote{letter-spacing:-.025em;max-width:18ch;font-weight:600;line-height:1.12}.about-em{color:var(--accent);font-style:italic;font-weight:500;text-decoration:underline}.about-body{color:var(--fg-mute);gap:16px;max-width:60ch;font-size:16px;line-height:1.75;display:grid}.about-body p{margin:0}.about-facts dl{border-top:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:24px;margin:0;padding-top:24px;display:grid}.about-facts dt,.about-facts dd{margin:0}.about-facts dt{margin-bottom:6px}.about-facts dd{font-size:14px}@media (width<=960px){.about-grid{grid-template-columns:1fr}.about-portrait-col{max-width:480px}}@media (width<=767px){.about-portrait-wrap{width:100%;height:280px;min-height:unset;margin-bottom:32px}.about-portrait{object-position:center 20%}.about-portrait-wrap:before{display:none}}.idx{padding:0 var(--margin) var(--s-24)}.idx-sort{letter-spacing:.12em;color:var(--fg-mute);align-items:baseline;gap:10px;font-size:11px;display:inline-flex}.idx-sort-btn{letter-spacing:.12em;color:var(--fg-mute);padding:4px 8px;font-size:11px;transition:color .2s,background .2s}.idx-sort-btn.on{background:var(--accent);color:var(--on-accent)}.idx-sort-btn:hover:not(.on){color:var(--fg)}.idx-table{margin-top:var(--s-8)}.idx-thead,.idx-row{border-top:1px solid var(--rule);grid-template-columns:60px 1.6fr 1fr 1.6fr 70px 110px;align-items:center;gap:16px;padding:16px 8px;display:grid}.idx-thead{letter-spacing:.14em;color:var(--fg-faint);border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule);padding:10px 8px;font-size:10px}.idx-row{transition:background .24s var(--ease-out), padding .24s var(--ease-out)}.idx-row:last-child{border-bottom:1px solid var(--rule)}.idx-row:hover{background:var(--surface-1);padding-left:20px}.idx-n,.idx-kind,.idx-stack,.idx-year,.idx-status{letter-spacing:.06em;color:var(--fg-mute);font-size:11px}.idx-title{letter-spacing:-.015em;color:var(--fg);font-size:18px;font-weight:600}.idx-status{align-items:center;gap:6px;display:inline-flex}.idx-status-dot{background:var(--fg-faint);border-radius:50%;width:6px;height:6px}.idx-status-live .idx-status-dot{background:var(--ok)}.idx-status-beta .idx-status-dot{background:var(--amber)}.idx-status-draft .idx-status-dot{background:var(--warn)}@media (width<=960px){.idx-thead,.idx-row{grid-template-columns:60px 1fr 80px}.idx-kind,.idx-stack,.idx-year{display:none}}.stack{background:var(--ink-0);color:var(--cream-0);padding:var(--s-24) var(--margin) var(--s-20);margin:var(--s-16) 0 0;border-top:1px solid #f0eee914;border-bottom:1px solid #f0eee914}.stack>*{max-width:var(--page-max);margin-left:auto;margin-right:auto}.stack .section-head,.stack .section-head .overline,.stack .section-head-title{color:var(--cream-0)}.stack .section-head .sec-idx{color:var(--accent)}.stack-em{color:var(--cream-0);font-style:italic;font-weight:500}.stack-sub{color:#f0eee98c;letter-spacing:.08em;margin:-10px 0 var(--s-10);font-size:12px}.graph-wrap{width:100%;height:500px;margin-top:var(--s-8);position:relative;overflow:hidden}.graph-hint{text-align:center;color:#8c8c8c;letter-spacing:.14em;margin:14px 0 0;font-size:11px}.graph-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.graph-vignette{pointer-events:none;background:radial-gradient(ellipse at center, transparent 45%, #0b0b0dbf 95%), linear-gradient(to right, var(--ink-0), transparent 6%, transparent 94%, var(--ink-0)), linear-gradient(to bottom, var(--ink-0), transparent 6%, transparent 94%, var(--ink-0));position:absolute;inset:0}.graph-tip{letter-spacing:.08em;color:var(--cream-0);pointer-events:none;z-index:2;white-space:nowrap;background:#141416f2;border:1px solid #f2870559;padding:6px 10px;font-size:10px;display:none;position:absolute}.graph-tip strong{font-family:var(--ff-sans);letter-spacing:-.01em;text-transform:none;margin-bottom:2px;font-size:12px;font-weight:600;display:block}.graph-tip span{color:#f0eee999}.stack-legend{letter-spacing:.14em;color:#8c8c8c;padding-top:var(--s-8);margin-top:var(--s-10);border-top:1px solid #f0eee90f;flex-wrap:wrap;justify-content:center;gap:22px;font-size:10px;display:flex}.stack-legend span{align-items:center;gap:8px;display:inline-flex}.lg{border:1px solid;border-radius:50%;width:9px;height:9px;display:inline-block}.lg-lang{background:#f2870538;border-color:#f28705}.lg-fw{background:#f2f2f21a;border-color:#f2f2f2d9}.lg-be{background:#60a5fa1f;border-color:#93c5fdbf}.lg-data{background:#14b8a624;border-color:#2dd4bfbf}.lg-infra{background:#ef444424;border-color:#fca5a5b3}.lg-tool{background:#94a3b81a;border-color:#cbd5e18c}.lg-design{background:#8b5cf62e;border-color:#a78bfacc}.lg-shell{background:#22c55e24;border-color:#4ade80bf}@media (width<=720px){.graph-wrap{height:360px}.stack-legend{gap:12px;font-size:9px}}.contact{background:var(--ink-0);color:var(--cream-0);padding:var(--s-24) var(--margin) var(--s-16);margin-top:var(--s-24);border-top:1px solid #f0eee914;position:relative;overflow:hidden}.contact-inner{z-index:1;max-width:var(--page-max);gap:var(--s-12);flex-direction:column;margin:0 auto;display:flex;position:relative}.contact-top{gap:var(--s-16);grid-template-columns:1fr min(400px,38%);align-items:center;display:grid}.contact-left{gap:var(--s-12);flex-direction:column;display:flex}.contact-visual{width:calc(100% + var(--margin));margin-right:calc(-1 * var(--margin));aspect-ratio:1;justify-self:end;place-items:center;display:grid;position:relative}.contact-globe{opacity:.45;pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0}.contact-globe>div,.contact-globe iframe{background:0 0}.contact-globe::selection{background:0 0}.contact-globe ::selection{background:0 0}.contact-orbit{z-index:1;aspect-ratio:1;border-radius:50%;place-items:center;width:clamp(200px,24vw,300px);display:grid;position:relative}.contact-orbit-ring{border:1px solid #f0eee91a;border-radius:50%;position:absolute}.contact-orbit-ring:first-child{inset:0}.contact-orbit-ring:nth-child(2){border-color:#f0eee912;inset:12%}.contact-orbit-ring:nth-child(3){border-color:#f0eee90d;inset:24%}.contact-orbit-track{border-radius:50%;animation:16s linear infinite orbit-spin;position:absolute;inset:0}.contact-orbit-dot{background:var(--amber);border-radius:50%;width:7px;height:7px;margin-left:-3.5px;position:absolute;top:-3px;left:50%;box-shadow:0 0 10px 1px #f2870580}@keyframes orbit-spin{to{transform:rotate(360deg)}}.contact-orbit-core{z-index:2;aspect-ratio:1;background:var(--accent);width:46%;color:var(--on-accent);letter-spacing:.08em;transition:transform .32s var(--ease-out), box-shadow .32s var(--ease-out);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:11px;display:flex;position:relative;box-shadow:0 10px 34px #f2870547}.contact-orbit:hover .contact-orbit-core{transform:translateY(-3px)scale(1.03);box-shadow:0 16px 42px #f2870566}.contact-orbit:active .contact-orbit-core{transform:scale(.97)}.contact-orbit:focus-visible{outline:none}.contact-orbit:focus-visible .contact-orbit-core{outline:2px solid var(--accent);outline-offset:4px}@media (width<=900px){.contact-visual{width:min(78vw,320px);margin:var(--s-4) auto 0;justify-self:center}.contact-globe{opacity:.35}}@media (prefers-reduced-motion:reduce){.contact-globe{display:none}.contact-orbit-track{animation:none}}.cc-card{font-family:var(--ff-mono);font-size:var(--fs-13);background:var(--ink-2);color:var(--cream-2);will-change:height;border:1px solid #f0eee912;border-radius:12px;padding:1.25rem 1.5rem;line-height:1.65;position:relative;box-shadow:0 8px 32px #00000059}.cc-card .cc-waapi,.cc-card.cc-show .cc-animejs{position:relative;top:0;left:0}.cc-card .cc-animejs,.cc-card.cc-show .cc-waapi{position:absolute;top:1.25rem;left:1.5rem}.cc-card .cc-waapi span,.cc-card.cc-show .cc-animejs span{display:inline-block}.cc-card .cc-animejs span,.cc-card.cc-show .cc-waapi span{display:none}pre.cc-waapi,pre.cc-animejs{white-space:pre;margin:0}.cc-fn{color:#7bb872}.cc-str{color:var(--amber)}.cc-var{color:var(--cream-0)}.cc-kw{color:#f0eee980}.cc-op{color:#f0eee947}@media (width<=900px){.contact-top{grid-template-columns:1fr}.cc-card{display:none}}.contact-display{letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(2.75rem,7vw,5.5rem);font-weight:700;line-height:.98}.contact-arrow{color:var(--amber);margin-left:.08em;font-size:.75em}.contact-grid{gap:var(--s-10);padding-top:var(--s-10);border-top:1px solid #f0eee91a;grid-template-columns:1.6fr 1fr 1fr 1.1fr;display:grid}.contact-brand{gap:var(--s-4);flex-direction:column;max-width:32ch;display:flex}.contact-brand-lockup{align-self:flex-start;align-items:center;gap:10px;display:inline-flex}.contact-brand-logo{width:30px;height:30px;display:block}.contact-brand-name{letter-spacing:.02em;font-size:14px;font-weight:700}.contact-blurb{color:#f0eee999;max-width:34ch;margin:0;font-size:13px;line-height:1.65}.contact-links{gap:10px;margin:12px 0 0;padding:0;font-size:16px;list-style:none;display:grid}.contact-based{color:#f0eee9b3;margin-top:12px;font-size:13px;line-height:1.6}.site-footer{padding-top:var(--s-10);letter-spacing:.14em;color:#f0eee980;border-top:1px solid #f0eee91a;justify-content:space-between;font-size:11px;display:flex}@media (width<=720px){.contact-grid{gap:var(--s-6);grid-template-columns:1fr 1fr}.contact-grid>.contact-brand{grid-column:1/-1;max-width:none}.contact-grid>:last-child{padding-top:var(--s-4);border-top:1px solid #f0eee90f;grid-column:1/-1}.site-footer{grid-template-columns:1fr auto;gap:6px 0;display:grid}.site-footer>:nth-child(2){order:3;grid-column:1/-1}.site-footer>:nth-child(3){order:2}}.site-header{padding-top:env(safe-area-inset-top,0px)}.site-header.island{padding-top:calc(16px + env(safe-area-inset-top,0px))}footer,.contact{padding-bottom:max(var(--s-8), env(safe-area-inset-bottom,0px))}.hamburger-btn{cursor:pointer;background:0 0;border:none;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:0;display:none}.site-header.over-dark .hamburger-btn{color:#f2f2f2}.site-header.island .hamburger-btn{color:var(--cream-0)}.hamburger-line{width:18px;height:1.5px;transition:transform .3s var(--ease-out), opacity .2s var(--ease-out);transform-origin:50%;background:currentColor;display:block}.hamburger-btn[aria-expanded=true] .hamburger-line:first-child{transform:translateY(6.5px)rotate(45deg)}.hamburger-btn[aria-expanded=true] .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger-btn[aria-expanded=true] .hamburger-line:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}@media (width<=960px){.hamburger-btn{display:flex}}.mobile-menu-overlay{z-index:99;justify-content:center;align-items:center;gap:var(--s-10);transition:transform .3s var(--ease-out);padding:var(--s-20) var(--s-6);padding-top:calc(env(safe-area-inset-top,0px) + 80px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 48px);pointer-events:none;background:#0b0b0d;flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto;transform:translateY(-100%)}.mobile-menu-overlay.open{pointer-events:auto;transform:translateY(0)}.mobile-menu-nav{align-items:center;gap:var(--s-8);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.mobile-menu-nav a{letter-spacing:-.03em;color:var(--cream-0);transition:color .2s var(--ease-out);font-size:32px;font-weight:700;text-decoration:none}.mobile-menu-nav a:hover{color:var(--amber)}.mobile-menu-theme-toggle{font-family:var(--ff-mono);letter-spacing:.1em;color:var(--cream-0);opacity:.55;cursor:pointer;background:0 0;border:.5px solid #f2f2f233;border-radius:999px;padding:8px 20px;font-size:12px;transition:opacity .2s}.mobile-menu-theme-toggle:hover{opacity:.85}.mobile-menu-status{font-family:var(--ff-mono);letter-spacing:.14em;color:var(--amber);align-items:center;gap:8px;font-size:11px;display:inline-flex}@media (width>=961px){.mobile-menu-overlay{display:none}}@media (width<=960px){.site-header.island{padding-inline:16px}.site-header.island .site-header-shell{width:100%;max-width:none;padding:4px 12px}.site-header.island .site-header-row{height:44px}.site-header.island .site-meta .theme-toggle{display:none}.site-header.island .contact-cta{padding:5px 10px;font-size:11px}}@media (width<=640px){.site-header{padding:0 16px}.site-header .site-clock,.site-header .theme-toggle,.site-header .contact-cta{display:none}.site-header .site-meta{gap:0}.site-header .site-header-row{gap:12px;height:56px}.site-header.island{padding-inline:12px}.site-header.island .site-header-shell{width:100%;max-width:none;padding:4px 12px}.site-header.island .site-header-row{height:44px}.brand-text{white-space:nowrap}}@media (width<=767px){.hero{min-height:100svh;padding-bottom:80px}.hero-portrait{display:none!important}.hero-scroll-hint{display:none}.hero-client{letter-spacing:.14em;font-size:11px}}@media (width<=640px){.hero{height:100svh;min-height:0;padding-top:clamp(64px,18svh,168px);padding-bottom:calc(62px + env(safe-area-inset-bottom,0px));justify-content:flex-start}.hero-inner{flex:auto;row-gap:20px;min-height:0}.hero-grid{display:none}.hero-marquee{margin:20px calc(-1 * var(--margin)) 0;flex:none;position:static}.hero-portrait{height:calc(100svh - 130px - env(safe-area-inset-bottom,0px));object-position:18% 44%;opacity:.64;width:62%;top:0;right:-8%;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 58%);mask-image:linear-gradient(90deg,#0000 0%,#000 58%);display:block!important}.hero-scroll-hint{color:#f0eee99e;margin-top:auto;padding-top:8px;display:flex}.hero-scroll-line{max-width:112px}}@media (width<=767px){.rail-scroll{scroll-snap-type:none;overflow-x:visible}.rail-track{gap:var(--s-6);padding-left:var(--margin);padding-right:var(--margin);flex-direction:column;width:auto;display:flex}.proj-card{scroll-snap-align:none;flex:none;grid-template-rows:auto auto;width:100%;height:auto}.proj-card-media{aspect-ratio:16/9;height:auto}.rail-end{flex:none;width:100%;height:auto;min-height:180px}.work-controls,.work-head-meta .work-counter,.work-head-meta .work-progress{display:none}}@media (width>=768px) and (width<=1279px){.rail-scroll{scroll-snap-type:none;overflow-x:visible}.rail-track{gap:var(--s-6);padding-left:var(--margin);padding-right:var(--margin);grid-template-columns:1fr 1fr;width:auto;display:grid}.proj-card{scroll-snap-align:none;flex:none;width:100%;height:auto}.proj-card-media{aspect-ratio:16/9;height:auto}.rail-end{flex:none;width:100%;height:auto;min-height:260px}}@media (width<=767px){.svc{min-height:unset;padding:var(--s-8) var(--s-6)}.svc-ghost{font-size:96px}.graph-wrap{height:320px}}.graph-hint-touch,.gt-wrap{display:none}@media (width<=767px){.graph-hint-touch{display:block}.graph-hint-mouse{display:none}.gt-wrap{justify-content:center;align-items:center;gap:8px;margin:10px auto 0;display:flex}.gt-label{letter-spacing:.16em;color:var(--fg-faint);text-align:right;min-width:4.5em;font-size:9px}.gt{background:var(--ink-3);border:1px solid var(--rule-strong);cursor:pointer;border-radius:999px;flex-shrink:0;width:2.6em;height:1.4em;transition:border-color .25s,background .25s;display:inline-block;position:relative}.gt:has(.gt-input:checked){border-color:var(--amber);background:var(--amber-soft)}.gt-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.gt-thumb{background:var(--fg-faint);width:.9em;height:.9em;transition:left .25s var(--ease-out), background .25s ease;border-radius:50%;position:absolute;top:50%;left:.2em;transform:translateY(-50%)}.gt-input:checked~.gt-thumb{background:var(--amber);left:calc(100% - 1.1em)}}.graph-hand-hint{display:none}@media (width<=767px){.graph-hand-hint{pointer-events:none;z-index:2;width:28px;height:28px;animation:1.2s ease-in-out infinite hand-bounce;display:flex;position:absolute;bottom:16px;right:16px}.graph-hand-hint svg{width:100%;height:100%}}@keyframes hand-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.idx-row-wrap{border-top:1px solid var(--rule)}.idx-row-wrap:last-child{border-bottom:1px solid var(--rule)}.idx-row-wrap .idx-row{border-top:0}.idx-row-wrap .idx-row:last-child{border-bottom:0}.idx-row-detail{padding:var(--s-3) var(--s-2);letter-spacing:.06em;color:var(--fg-mute);font-size:11px;font-family:var(--ff-mono);background:var(--surface-1);gap:var(--s-3);border-top:1px solid var(--rule);grid-template-columns:1fr 1fr;display:none}.idx-row-wrap.expanded .idx-row-detail{display:grid}.idx-row-detail .idx-detail-label{letter-spacing:.14em;text-transform:uppercase;color:var(--fg-faint);margin-bottom:4px;font-size:10px}.idx-expand-icon{color:var(--fg-faint);transition:transform .2s var(--ease-out);place-self:center end;font-size:16px;line-height:1;display:none}.idx-row-wrap.expanded .idx-expand-icon{transform:rotate(90deg)}.idx-sort-btns{align-items:baseline;gap:10px;display:inline-flex}.idx-sort-select{background:var(--surface-1);color:var(--fg);border:1px solid var(--rule-strong);font-family:var(--ff-mono);letter-spacing:.08em;cursor:pointer;padding:4px 8px;font-size:11px;display:none}@media (width<=767px){.idx-thead,.idx-row{grid-template-columns:48px 1fr 90px 20px;min-height:56px}.idx-kind,.idx-stack,.idx-year{display:none}.idx-expand-icon{display:flex}.idx-row{cursor:pointer}.idx-sort-btns{display:none}.idx-sort-select{display:block}.site-footer{padding-bottom:max(var(--s-10), env(safe-area-inset-bottom,0px))}.boot-list{font-size:12px}.boot-title{font-size:14px}}.tweaks{z-index:200;background:var(--surface-1);border:1px solid var(--rule-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:300px;transition:transform .42s var(--ease-out);padding:18px;position:fixed;bottom:24px;right:24px;transform:translateY(calc(100% + 40px))}.tweaks.open{transform:translateY(0)}.tweaks h4{letter-spacing:.14em;font-size:12px;font-family:var(--ff-mono);margin:0 0 12px}.tweak-row{border-top:1px solid var(--rule);grid-template-columns:1fr 1fr;align-items:center;gap:8px;padding:8px 0;font-size:12px;display:grid}.tweak-row:first-of-type{border-top:0}.tweak-row label{letter-spacing:.04em;font-family:var(--ff-mono);color:var(--fg-mute);text-transform:uppercase;font-size:11px}.tweak-btn-group{gap:4px;display:flex}.tweak-btn{border:1px solid var(--rule-strong);letter-spacing:.08em;font-size:10px;font-family:var(--ff-mono);flex:1;padding:4px 8px}.tweak-btn.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}@keyframes sheet-slide-up{0%{opacity:0;translate:0 20px}to{opacity:1;translate:0}}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}.diag-sheet-overlay{z-index:199;-webkit-backdrop-filter:blur(4px);background:#0000008c;animation:.2s forwards overlay-fade;position:fixed;inset:0}.diag-sheet{z-index:200;background:var(--surface-2);border:1px solid var(--rule-strong);--kb-offset:0px;max-width:520px;transform:translateY(calc(-1 * var(--kb-offset)));border-bottom:none;border-radius:16px 16px 0 0;margin:0 auto;padding:24px 20px 16px;transition:transform .15s ease-out;animation:.28s cubic-bezier(.16,1,.3,1) forwards sheet-slide-up;position:fixed;bottom:0;left:0;right:0}@media (width<=640px){.diag-sheet{max-width:none;bottom:calc(62px + env(safe-area-inset-bottom,0px))}}.diag-sheet-title{font-family:var(--ff-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 8px;font-size:11px}.diag-sheet-sub{color:var(--fg-mute);margin:0 0 20px;font-size:13px;line-height:1.55}.diag-sheet-form{gap:8px;margin-bottom:12px;display:flex}.diag-sheet-input{background:var(--surface-3);border:1px solid var(--rule-strong);min-width:0;font-family:var(--ff-mono);color:var(--fg);border-radius:8px;outline:none;flex:1;padding:10px 14px;font-size:13px;transition:border-color .18s,box-shadow .18s}.diag-sheet-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #f2870526}.diag-sheet-input::placeholder{color:var(--fg-faint)}.diag-sheet-btn{background:var(--accent);color:var(--on-accent);font-family:var(--ff-mono);letter-spacing:.04em;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;flex-shrink:0;padding:10px 16px;font-size:12px;transition:opacity .18s}.diag-sheet-btn:active{opacity:.8}.diag-sheet-close{width:100%;font-family:var(--ff-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-faint);cursor:pointer;text-align:center;background:0 0;border:none;padding:6px 0;font-size:10px;transition:color .18s;display:block}.diag-sheet-close:active{color:var(--fg-mute)}@keyframes loader_5191{0%{opacity:0}to{opacity:1}}.spinner{width:50px;height:50px;position:relative}.spinner-sq{background:var(--amber);width:10px;height:10px;margin-top:-5px;margin-left:-5px;position:absolute;top:50%;left:50%}.spinner-sq:first-child{margin-top:-25px;margin-left:-25px;animation:.675s ease-in-out infinite alternate loader_5191}.spinner-sq:nth-child(2){margin-top:-25px;animation:.675s ease-in-out 75ms infinite alternate loader_5191}.spinner-sq:nth-child(3){margin-top:-25px;margin-left:15px;animation:.675s ease-in-out .15s infinite loader_5191}.spinner-sq:nth-child(4){margin-left:-25px;animation:.675s ease-in-out .225s infinite loader_5191}.spinner-sq:nth-child(5){animation:.675s ease-in-out .3s infinite loader_5191}.spinner-sq:nth-child(6){margin-left:15px;animation:.675s ease-in-out .375s infinite loader_5191}.spinner-sq:nth-child(7){margin-top:15px;margin-left:-25px;animation:.675s ease-in-out .45s infinite loader_5191}.spinner-sq:nth-child(8){margin-top:15px;animation:.675s ease-in-out .525s infinite loader_5191}.spinner-sq:nth-child(9){margin-top:15px;margin-left:15px;animation:.675s ease-in-out .6s infinite loader_5191}.speed-dial{z-index:150;width:52px;height:52px;position:fixed;bottom:24px;right:24px}@media (width<=640px){.speed-dial{display:none}}.speed-dial-trigger{z-index:1;background:var(--accent);width:52px;height:52px;color:var(--on-accent);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .26s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;display:flex;position:relative;box-shadow:0 4px 18px #f2870559,0 1px 4px #0000002e}.speed-dial-trigger.is-open:not(.is-back-to-top){transform:rotate(45deg)}.speed-dial-trigger:hover{box-shadow:0 6px 24px #f287057a,0 2px 6px #0003}.speed-dial-trigger:active{transform:scale(.92)}.speed-dial-trigger.is-open:not(.is-back-to-top):active{transform:rotate(45deg)scale(.92)}.speed-dial-icon{justify-content:center;align-items:center;transition:opacity .2s,transform .2s;display:flex;position:absolute}.speed-dial-icon-plus{opacity:1;transform:none}.speed-dial-icon-arrow{opacity:0;transform:translateY(6px)}.speed-dial-trigger.is-back-to-top .speed-dial-icon-plus{opacity:0;transform:rotate(90deg)scale(.6)}.speed-dial-trigger.is-back-to-top .speed-dial-icon-arrow{opacity:1;transform:none}.speed-dial-item{opacity:0;pointer-events:none;width:40px;height:40px;transition:transform .18s,opacity .15s;position:absolute;bottom:6px;right:6px;transform:translate(0)scale(.4)}.speed-dial-item.is-visible{transform:translate(var(--sd-x), var(--sd-y)) scale(1);opacity:1;transition:transform .3s cubic-bezier(.34, 1.56, .64, 1) var(--sd-delay,0s), opacity .22s ease var(--sd-delay,0s);pointer-events:auto}.speed-dial-btn{background:var(--surface-2);border:1px solid var(--rule-strong);width:40px;height:40px;color:var(--fg);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;transition:background .16s,color .16s,transform .15s;display:flex;box-shadow:0 2px 10px #0000002e}.speed-dial-btn:hover{background:var(--surface-3);color:var(--accent);transform:scale(1.1)}.speed-dial-btn:active{transform:scale(.93)}.speed-dial-label{white-space:nowrap;font-family:var(--ff-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-mute);background:var(--surface-2);border:1px solid var(--rule);opacity:0;pointer-events:none;border-radius:4px;padding:3px 8px;font-size:10px;transition:opacity .15s;position:absolute;top:50%;right:calc(100% + 10px);transform:translateY(-50%)}.speed-dial-item.is-visible .speed-dial-label{opacity:1;transition:opacity .18s ease calc(var(--sd-delay,0s) + 80ms)}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:9999}@media (prefers-reduced-motion:reduce){::view-transition-group(root){animation:none!important}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}}.bottom-nav{display:none}@media (width<=640px){.bottom-nav{z-index:98;background:var(--bg);border-top:1px solid var(--rule);padding-bottom:env(safe-area-inset-bottom,0px);will-change:transform;display:block;position:fixed;bottom:0;left:0;right:0}.bottom-nav-inner{align-items:stretch;height:62px;padding:0 2px;display:flex}.bottom-nav-item{color:var(--fg-mute);cursor:pointer;font-family:inherit;font-size:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:3px;padding-bottom:10px;text-decoration:none;transition:color .18s;display:flex}.bottom-nav-item.is-active{color:var(--accent)}.bottom-nav-item:active{opacity:.7}.bottom-nav-label{font-family:var(--ff-mono);letter-spacing:.06em;text-transform:uppercase;font-size:9px;line-height:1}.diag-btn-wrap{justify-content:center;align-items:center;display:flex;position:relative}.diag-dot{background:var(--accent);border:1.5px solid var(--bg);border-radius:50%;width:6px;height:6px;position:absolute;top:-2px;right:-5px}.bottom-nav-fab{-webkit-tap-highlight-color:transparent;flex:1;justify-content:center;align-items:center;text-decoration:none;display:flex}.fab-circle{background:var(--surface-2);width:52px;height:52px;color:var(--fg-mute);border-radius:50%;justify-content:center;align-items:center;transition:background .18s,color .18s,transform .16s,box-shadow .16s;display:flex}.fab-circle.is-active{background:var(--accent);color:var(--on-accent);box-shadow:0 4px 18px #f2870561,0 1px 4px #0000002e}.bottom-nav-fab:active .fab-circle{transform:scale(.93);box-shadow:0 2px 8px #f2870540,0 1px 3px #00000024}body{padding-bottom:calc(62px + env(safe-area-inset-bottom,0px))}}@media print{.bottom-nav{display:none!important}}@media (prefers-reduced-motion:reduce){.bottom-nav,.bottom-nav *{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.logoloop{--logoloop-gap:32px;--logoloop-logoHeight:28px;--logoloop-fadeColorAuto:#fff;position:relative;overflow-x:hidden}.logoloop--vertical{height:100%;display:inline-block;overflow:hidden}.logoloop--scale-hover{padding-top:calc(var(--logoloop-logoHeight) * .1);padding-bottom:calc(var(--logoloop-logoHeight) * .1)}@media (prefers-color-scheme:dark){.logoloop{--logoloop-fadeColorAuto:#0b0b0b}}.logoloop__track{will-change:transform;-webkit-user-select:none;user-select:none;z-index:0;width:max-content;display:flex;position:relative}.logoloop--vertical .logoloop__track{flex-direction:column;width:100%;height:max-content}.logoloop__list{align-items:center;display:flex}.logoloop--vertical .logoloop__list{flex-direction:column}.logoloop__item{margin-right:var(--logoloop-gap);font-size:var(--logoloop-logoHeight);flex:none;line-height:1}.logoloop--vertical .logoloop__item{margin-right:0;margin-bottom:var(--logoloop-gap)}.logoloop__item:last-child{margin-right:var(--logoloop-gap)}.logoloop--vertical .logoloop__item:last-child{margin-right:0;margin-bottom:var(--logoloop-gap)}.logoloop__node{align-items:center;display:inline-flex}.logoloop__item img{height:var(--logoloop-logoHeight);object-fit:contain;width:auto;image-rendering:-webkit-optimize-contrast;-webkit-user-drag:none;pointer-events:none;transition:transform .3s cubic-bezier(.4,0,.2,1);display:block}.logoloop--scale-hover .logoloop__item{overflow:visible}.logoloop--scale-hover .logoloop__item:hover img,.logoloop--scale-hover .logoloop__item:hover .logoloop__node{transform-origin:50%;transform:scale(1.2)}.logoloop--scale-hover .logoloop__node{transition:transform .3s cubic-bezier(.4,0,.2,1)}.logoloop__link{border-radius:4px;align-items:center;text-decoration:none;transition:opacity .2s;display:inline-flex}.logoloop__link:hover{opacity:.8}.logoloop__link:focus-visible{outline-offset:2px;outline:2px solid}.logoloop--fade:before,.logoloop--fade:after{content:"";pointer-events:none;z-index:10;width:clamp(24px,8%,120px);position:absolute;top:0;bottom:0}.logoloop--fade:before{background:linear-gradient(to right, var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)) 0%, #0000 100%);left:0}.logoloop--fade:after{background:linear-gradient(to left, var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)) 0%, #0000 100%);right:0}.logoloop--vertical.logoloop--fade:before,.logoloop--vertical.logoloop--fade:after{width:100%;height:clamp(24px,8%,120px);left:0;right:0}.logoloop--vertical.logoloop--fade:before{background:linear-gradient(to bottom, var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)) 0%, #0000 100%);top:0;bottom:auto}.logoloop--vertical.logoloop--fade:after{background:linear-gradient(to top, var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)) 0%, #0000 100%);top:auto;bottom:0}@media (prefers-reduced-motion:reduce){.logoloop__track{transform:translate(0,0)!important}.logoloop__item img,.logoloop__node{transition:none!important}}
