@font-face{font-family:Inter Variable;font-style:normal;font-weight:100 900;font-display:optional;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2");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:Inter Variable;font-style:normal;font-weight:100 900;font-display:optional;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2)format("woff2");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;font-style:normal;font-weight:400;font-display:optional;src:url(/_astro/jetbrains-mono-latin-400-normal.V6pRDFza.woff2)format("woff2");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;font-style:normal;font-weight:500;font-display:optional;src:url(/_astro/jetbrains-mono-latin-500-normal.BWZEU5yA.woff2)format("woff2");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{color-scheme:dark;--bg:#08090b;--surface:#0f1113;--surface-raised:#16181c;--text:#f5f5f7;--muted:#a1a1a6;--accent:#4da3ff;--accent-soft:#4da3ff24;--accent-ink:#06111f;--border:#ffffff1a;--border-strong:#fff3;--control-border:#ffffff3d;--danger:#ff7a70;--ok:#30d158;--light-red:#ff5f57;--light-yellow:#febc2e;--light-green:#28c840;--wall-a:#0d1b2e;--wall-b:#101e29;--wall-c:#161220;--glass:#121519bd;--material:#181b1fad;--material-strong:#1c1f24f0;--window-shadow:0 1px 2px #00000042, 0 12px 32px -12px #00000070, 0 32px 80px -24px #00000094, inset 0 1px 0 #ffffff14;--dock-shadow:0 18px 60px #00000075, 0 4px 14px -6px #0006, inset 0 1px 0 #ffffff1f;--toast-shadow:0 12px 40px -12px #0000008c, 0 2px 8px #0000004d, inset 0 1px 0 #ffffff1a;--font-display:var(--font-body);--font-body:-apple-system, BlinkMacSystemFont, "Inter Variable", "Inter", "Segoe UI", Roboto, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--page-gutter:clamp(20px, 5vw, 76px);--content-width:1200px;--reading-width:720px;--radius-sm:5px;--radius-md:10px;--radius-lg:14px;--text-body:clamp(1.025rem, .98rem + .24vw, 1.1rem);--text-small:.875rem;--text-mono:clamp(.76rem, .73rem + .13vw, .84rem);--text-eyebrow:clamp(.72rem, .7rem + .1vw, .8125rem);--text-h3:clamp(1.25rem, 1.05rem + .9vw, 1.75rem);--text-h2:clamp(1.75rem, 1.2rem + 2.2vw, 3rem);--text-display:clamp(3rem, 8.8vw, 7.4rem);--section:clamp(64px, 9vw, 128px);--section-tight:clamp(44px, 6vw, 88px);--gap:clamp(18px, 2.6vw, 36px);--measure:66ch;--ease:cubic-bezier(.22, 1, .36, 1);--speed:.24s;--header-height:68px;--shell-height:30px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg);overflow-x:hidden}body{background:var(--bg);min-height:100svh;color:var(--text);font-family:var(--font-body);font-size:var(--text-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(at 76% 7%,#366c7b1f,#0000 32rem);margin:0;line-height:1.6;overflow-x:hidden}#main,#main>*,.container,.container>*{min-width:0}body.menu-open{overflow:hidden}img,svg,video{max-width:100%;display:block}img{height:auto}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.arrow-icon--down{transform:rotate(90deg)}.arrow-icon--up{transform:rotate(-90deg)}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.028em;text-wrap:balance;font-weight:500;line-height:1.08}p{max-width:var(--measure)}[hidden]{display:none!important}[id],a,button,input,select,textarea,summary{scroll-margin-top:24px}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:200;background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-sm);transition:transform var(--speed) var(--ease);padding:12px 16px;font-weight:600;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.mono{font-family:var(--font-mono);font-size:var(--text-mono);letter-spacing:.01em;font-weight:400;line-height:1.5}.muted{color:var(--muted)}.lead{letter-spacing:-.01em;max-width:56ch;font-size:clamp(1.125rem,1rem + .5vw,1.375rem);line-height:1.5}.small{font-size:var(--text-small);line-height:1.5}.container{width:min(100% - (2 * var(--page-gutter)), var(--content-width));margin-inline:auto}.container--narrow{max-width:var(--reading-width)}.section{padding-block:var(--section)}.section--tight{padding-block:var(--section-tight)}.section--tight-2{padding-block:var(--section-tight);border-top:1px solid var(--border)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px 48px;margin-bottom:clamp(36px,5vw,68px);display:flex}.section-head h2{letter-spacing:-.045em;max-width:16ch;font-size:clamp(2rem,3.8vw,3.4rem)}.section-head__meta{max-width:44ch;color:var(--muted);font-size:var(--text-small);border-left:1px solid var(--border-strong);padding-left:14px;line-height:1.55}.section-head__meta a{text-underline-offset:.18em;min-height:44px;transition:color var(--speed) var(--ease);align-items:center;gap:8px;text-decoration:underline 1px;display:inline-flex}.section-head__meta a:hover,.section-head__meta .link:hover{color:var(--accent)}.link{color:var(--text);text-decoration:underline 1px;text-decoration-color:var(--border-strong);text-underline-offset:.2em;transition:color var(--speed) var(--ease), text-decoration-color var(--speed) var(--ease)}.link:hover{color:var(--accent);text-decoration-color:var(--accent)}.btn{border:1px solid var(--control-border);border-radius:var(--radius-md);min-height:46px;color:var(--text);letter-spacing:-.005em;text-align:center;transition:background-color var(--speed) var(--ease), border-color var(--speed) var(--ease), color var(--speed) var(--ease), box-shadow var(--speed) var(--ease), transform var(--speed) var(--ease);background:0 0;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:.9375rem;font-weight:560;line-height:1.2;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px #ffffff0d,0 2px 4px #00000038}.btn:hover{background:var(--surface-raised);border-color:var(--text);box-shadow:inset 0 1px #ffffff12,0 5px 12px #0000003d}.btn:active{background:var(--surface);transform:translateY(1px)}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:inset 0 1px #ffffff73,0 2px 4px #0000003d}.btn--primary:hover{background:#b7e5ed;border-color:#b7e5ed;box-shadow:inset 0 1px #ffffff8c,0 5px 14px #00000047}.btn--primary:active{background:#84c8d8}.btn--primary:focus-visible{outline-color:var(--text)}.btn--small{min-height:44px;font-size:var(--text-small);padding:8px 14px}.status{font-family:var(--font-mono);font-size:var(--text-mono);color:var(--muted);align-items:center;gap:8px;line-height:1.4;display:inline-flex}.status:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px}.site-header{z-index:20;border-bottom:1px solid var(--border);backdrop-filter:blur(16px);background:#08090beb;position:relative}.site-header__inner{min-height:var(--header-height);align-items:center;gap:20px;display:flex}.wordmark{font-family:var(--font-body);letter-spacing:-.03em;white-space:nowrap;flex:none;align-items:baseline;padding-block:14px;font-size:1.25rem;font-weight:680;line-height:1;display:inline-flex}.site-nav__link{color:var(--muted);font-family:var(--font-mono);font-size:var(--text-mono);transition:color var(--speed) var(--ease);padding:8px 6px;line-height:1.2;position:relative}.site-nav__link:hover,.site-nav__link[aria-current=page]{color:var(--text)}.site-nav__link[aria-current=page]:after{content:"";background:var(--accent);height:1px;position:absolute;bottom:0;left:6px;right:6px}.header-actions{align-items:center;gap:10px;display:flex}.header-contact{border:1px solid var(--control-border);border-radius:var(--radius-md);min-height:44px;font-family:var(--font-mono);font-size:var(--text-mono);transition:border-color var(--speed) var(--ease), color var(--speed) var(--ease);align-items:center;padding:6px 14px;display:inline-flex}.header-contact:hover{border-color:var(--text);color:var(--text)}.menu-toggle{border:1px solid var(--control-border);border-radius:var(--radius-sm);min-width:44px;min-height:44px;color:var(--text);font-family:var(--font-mono);font-size:var(--text-mono);background:0 0;justify-content:center;align-items:center;padding:0 12px;display:none}.menu-toggle:hover{border-color:var(--text)}.mobile-menu{border:0;border-left:1px solid var(--border);background:var(--bg);width:100%;max-width:none;height:100dvh;max-height:none;color:var(--text);margin:0;padding:0}.mobile-menu::backdrop{background:#000000a6}.mobile-menu__inner{min-height:100dvh;padding:0 var(--page-gutter) 32px;flex-direction:column;display:flex}.mobile-menu__bar{min-height:var(--header-height);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.mobile-menu__close{border:1px solid var(--control-border);border-radius:var(--radius-sm);min-width:44px;min-height:44px;color:var(--text);font-family:var(--font-mono);font-size:var(--text-mono);background:0 0;justify-content:center;align-items:center;padding:0 12px;display:inline-flex}.mobile-menu__close:hover{border-color:var(--text)}.mobile-menu__nav{flex-direction:column;padding-top:28px;display:flex}.mobile-menu__link{border-bottom:1px solid var(--border);min-height:44px;font-family:var(--font-display);letter-spacing:-.025em;transition:color var(--speed) var(--ease);justify-content:space-between;align-items:baseline;gap:16px;padding:16px 0;font-size:clamp(1.75rem,8vw,2.75rem);font-weight:380;line-height:1.05;display:flex}.mobile-menu__link span{font-family:var(--font-mono);font-size:var(--text-mono);color:var(--muted);font-weight:400}.mobile-menu__link:hover,.mobile-menu__link[aria-current=page]{color:var(--accent)}.mobile-menu__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:28px;display:flex}@view-transition{navigation:auto}::view-transition-old(root){animation:.18s both page-leave}::view-transition-new(root){animation:page-arrive .32s var(--ease) both}@keyframes page-leave{to{opacity:0;transform:translateY(-5px)}}@keyframes page-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.hero{isolation:isolate;padding-block:clamp(64px,9vw,132px) clamp(56px,7vw,96px);position:relative;overflow:hidden}.hero__visual{aspect-ratio:1;grid-area:1/2;width:100%;min-height:clamp(300px,30vw,420px);position:relative}.hero__scene{z-index:0;aspect-ratio:auto;background:radial-gradient(ellipse at 54% 48%, #29718033, transparent 55%), linear-gradient(145deg, #ffffff0a, transparent 52%), var(--surface);pointer-events:none;border:1px solid #9bd7e547;border-radius:8px;width:100%;min-height:0;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 1px #ffffff14,0 24px 80px #00000047}.hero__portrait{z-index:2;width:min(60%,260px);margin:0;position:absolute;bottom:0;right:6%}.hero__scene canvas,.hero__scene-fallback{width:100%;height:100%;position:absolute;inset:0}.hero__scene canvas{display:block}.hero__scene-fallback{transition:opacity .5s var(--ease);background:radial-gradient(#24798b2e,#0000 56%);place-items:center;display:grid;overflow:hidden}.hero__scene[data-scene-ready=true] .hero__scene-fallback{opacity:0}.hero__scene-fallback:before,.hero__scene-fallback:after{aspect-ratio:1;content:"";border:1px solid #9bd7e52e;border-radius:50%;width:82%;position:absolute}.hero__scene-fallback:after{border-color:#ffad7040;width:62%;transform:rotateX(68deg)rotate(-24deg)}.hero__scene-fallback span{aspect-ratio:1;background:radial-gradient(circle at 32% 28%,#f0d4b1,#b86f55 36%,#284955 72%,#10161a);border-radius:50%;width:36%;box-shadow:0 0 90px #5ab7c933}.hero__body>*{animation:hero-enter .76s var(--ease) both}.hero__body>:nth-child(2){animation-delay:80ms}.hero__body>:nth-child(3){animation-delay:.15s}.hero__body>:nth-child(4){animation-delay:.22s}.hero__body>:nth-child(5){animation-delay:.29s}@keyframes hero-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}html[data-motion=on] [data-reveal]{opacity:0;transform:translateY(14px)}html[data-motion=on] [data-reveal].is-in{opacity:1;transition:opacity .56s var(--ease), transform .56s var(--ease);transform:none}@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root),.hero__body>*{animation:none}html[data-motion=on] [data-reveal]{opacity:1;transition:none;transform:none}}.hero:before{z-index:-1;aspect-ratio:1;content:"";pointer-events:none;border:1px solid #9bd7e51a;border-radius:50%;width:min(58vw,760px);position:absolute;top:12%;right:-12rem;box-shadow:0 0 0 4rem #9bd7e505,0 0 0 9rem #9bd7e504}.hero__grid{grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:center;gap:clamp(32px,4vw,56px);display:grid}.hero__body{grid-area:1/1;max-width:100%}.hero__eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.08em}.hero__title{letter-spacing:-.058em;max-width:100%;margin-top:18px;font-size:clamp(3.5rem,8vw,7.3rem);font-weight:360;line-height:.9}.hero__portrait{grid-area:1/2;width:100%;margin:0}.portrait-frame{background:linear-gradient(145deg, #ffffff12, transparent 36%), linear-gradient(145deg, #9bd7e514, transparent 42%), var(--surface);transition:transform var(--speed) var(--ease), box-shadow var(--speed) var(--ease);border:1px solid #9bd7e542;border-radius:8px;margin:0;padding:12px;box-shadow:inset 0 1px #ffffff14,0 2px 5px #0000003d,0 24px 80px #00000052}.portrait-frame__media{border-radius:var(--radius-sm);background:var(--surface-raised);overflow:hidden}.portrait-frame img{width:100%}.portrait-frame__caption{color:var(--muted);font-size:var(--text-mono);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;line-height:1.4;display:flex}.portrait-frame__caption span:first-child{color:var(--text)}.hero__title .line,.hero__title .line>span{display:block}.hero__stop{color:var(--accent)}.hero__copy{color:#c0c9ca;max-width:50ch;margin-top:24px;font-size:clamp(1.0625rem,1rem + .3vw,1.25rem);line-height:1.6}.hero__actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.hero__meta{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:clamp(40px,5vw,68px);padding-top:18px;display:flex}.identity-strip{border-block:1px solid var(--border);background:#10161aa6}.identity-strip__row{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;flex-wrap:wrap;justify-content:space-between;gap:10px 28px;padding-block:14px;display:flex}.identity-strip__row span{align-items:center;gap:10px;display:inline-flex}.identity-strip__row span:before{background:var(--accent);content:"";border-radius:50%;width:5px;height:5px}.featured{border:1px solid var(--border);background:linear-gradient(145deg, #ffffff08, transparent 38%), linear-gradient(125deg, #9bd7e50d, transparent 52%), var(--surface);transition:transform var(--speed) var(--ease), box-shadow var(--speed) var(--ease);border-radius:10px;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:clamp(28px,4vw,64px);margin-bottom:clamp(28px,4vw,48px);padding:clamp(24px,3vw,40px);display:grid;box-shadow:inset 0 1px #ffffff0a,0 2px 5px #0000002e,0 18px 42px #0000002e}.featured__label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.featured__copy h3{letter-spacing:-.03em;margin-top:14px;font-size:clamp(1.75rem,1.3rem + 1.8vw,2.75rem)}.featured__copy>p:not(.featured__label){color:var(--muted);margin-top:14px}.featured__copy .mono{color:var(--text);margin-top:14px}.featured__copy .link{align-items:center;min-height:44px;margin-top:10px;display:inline-flex}.featured__diagram{border:1px solid var(--border);background:linear-gradient(145deg,#ffffff05,#0000 40%),#0b1115;border-radius:8px;padding:clamp(14px,2.5vw,28px);box-shadow:inset 0 1px #ffffff08,0 12px 30px #0003}.featured__diagram figcaption{color:var(--muted);max-width:52ch;margin-top:12px}.project-list{flex-direction:column;display:flex}.project-list__head{display:none}.project-row{border-bottom:1px solid var(--border);transition:background-color var(--speed) var(--ease), border-color var(--speed) var(--ease);grid-template-columns:44px minmax(0,1fr) auto;align-items:baseline;gap:4px 18px;margin-inline:-14px;padding:22px 14px;display:grid}.project-row__index{color:var(--muted)}.project-row__body{flex-direction:column;gap:6px;display:flex}.project-row__name{font-family:var(--font-display);letter-spacing:-.025em;transition:color var(--speed) var(--ease);font-size:clamp(1.25rem,1rem + .7vw,1.625rem);font-weight:460;line-height:1.2}.project-row__summary{color:var(--muted);font-size:var(--text-small);max-width:70ch;line-height:1.55}.project-row__side{text-align:right;flex-direction:column;align-items:flex-end;gap:6px;display:flex}.project-row__type,.project-row__availability,.project-row__stack{color:var(--muted)}.project-row__summary{max-width:46ch;color:var(--muted);font-size:var(--text-small);line-height:1.5}.project-row__arrow{color:var(--muted);transition:transform var(--speed) var(--ease), color var(--speed) var(--ease)}.project-row:hover .project-row__name{color:var(--accent)}.project-row:hover{background:#9bd7e50a}.project-row:hover .project-row__arrow{color:var(--text);transform:translate(4px)}.filter-bar{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.filter-btn{border:1px solid var(--control-border);border-radius:var(--radius-sm);min-height:44px;color:var(--muted);font-family:var(--font-mono);font-size:var(--text-mono);transition:color var(--speed) var(--ease), border-color var(--speed) var(--ease), background-color var(--speed) var(--ease);background:0 0;padding:8px 14px}.filter-btn:hover{color:var(--text);border-color:var(--text)}.filter-btn[aria-pressed=true]{background:var(--surface-raised);border-color:var(--text);color:var(--text)}.filter-count{color:var(--muted);margin-bottom:26px}.empty-state{border-top:1px solid var(--border);color:var(--muted);padding:40px 0 8px}.empty-state .link{align-items:center;min-height:44px;display:inline-flex}.projects-note{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:40px;display:flex}.projects-note .link{align-items:center;min-height:44px;display:inline-flex}.route-diagram{--flow-accent:#9bd7e5;isolation:isolate;border:1px solid var(--border);background:radial-gradient(at 54% 30%,#9bd7e514,#0000 58%),linear-gradient(145deg,#11191d,#0b1013 72%);border-radius:12px;width:100%;padding:clamp(16px,2.4vw,26px);position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0d,0 2px 5px #0000003d,0 18px 42px #00000040}.route-diagram__head{border-bottom:1px solid #a2adb224;justify-content:space-between;align-items:center;gap:12px;padding-bottom:15px;display:flex}.route-diagram__eyebrow,.route-diagram__concept{letter-spacing:.09em;font-size:.62rem}.route-diagram__eyebrow{color:var(--text)}.route-diagram__concept{color:var(--muted);text-align:right}.route-diagram__flow{grid-template-columns:minmax(90px,.78fr) 42px minmax(145px,1.12fr) 48px minmax(185px,1.4fr);align-items:center;gap:clamp(7px,1vw,12px);padding-top:clamp(18px,2.2vw,26px);display:grid}.route-diagram__node{background:linear-gradient(145deg,#ffffff0a,#0000 44%),linear-gradient(155deg,#1a2429,#12191d 68%);border:1px solid #34434a;border-radius:8px;flex-direction:column;justify-content:center;gap:9px;min-width:0;min-height:138px;padding:clamp(13px,1.5vw,18px);display:flex;position:relative;box-shadow:inset 0 1px #ffffff0f,0 2px 3px #00000047,0 10px 22px #0000002e}.route-diagram__client{min-height:112px}.route-diagram__gateway{background:linear-gradient(145deg,#ffffff0f,#0000 42%),radial-gradient(at 10% 0,#9bd7e526,#0000 68%),linear-gradient(155deg,#18262b,#11181c 74%);border-color:#9bd7e57a;min-height:148px;box-shadow:inset 0 1px #ffffff14,0 0 0 1px #9bd7e50a,0 4px 8px #00000047,0 16px 28px #0000003d}.route-diagram__index{color:var(--flow-accent);letter-spacing:.07em;align-items:baseline;gap:7px;font-size:.62rem;line-height:1.5;display:flex}.route-diagram__index span{color:var(--muted)}.route-diagram__node strong{color:var(--text);letter-spacing:-.025em;font-size:clamp(.95rem,1.3vw,1.12rem);line-height:1.2}.route-diagram__gateway strong{color:var(--flow-accent);font-size:clamp(1.08rem,1.6vw,1.38rem)}.route-diagram__node>span:not(.route-diagram__index):not(.route-diagram__gateway-foot){color:var(--muted);font-size:.74rem;line-height:1.45}.route-diagram__gateway-foot{color:#c1dce1;letter-spacing:.035em;margin-top:1px;font-size:.55rem;line-height:1.45}.route-diagram__connector{flex-direction:column;align-items:center;gap:8px;min-width:0;display:flex}.route-diagram__connector-line{background:linear-gradient(90deg,#43535a,#9bd7e5a6);width:100%;height:1px;position:relative}.route-diagram__connector-line:before{content:"";opacity:0;animation:route-flow 3.6s var(--ease) infinite;background:linear-gradient(90deg,#0000,#9bd7e5b3,#0000);position:absolute;inset:-3px 0}.route-diagram__connector-line:after{border-top:1px solid var(--flow-accent);border-right:1px solid var(--flow-accent);content:"";width:7px;height:7px;position:absolute;top:-3px;right:0;transform:rotate(45deg)}.route-diagram__connector-label{color:var(--muted);letter-spacing:.05em;font-size:.55rem}.route-diagram__connector--branch .route-diagram__connector-line{background:linear-gradient(90deg,#9bd7e5a6,#43535a)}.route-diagram__connector--branch .route-diagram__connector-line:before{animation-delay:1.8s}@keyframes route-flow{0%{opacity:0;transform:translate(-60%)}30%,70%{opacity:.8}to{opacity:0;transform:translate(60%)}}.route-diagram__providers{gap:8px;min-width:0;display:grid}.route-diagram__providers-heading{color:var(--muted);letter-spacing:.07em;justify-content:space-between;align-items:center;gap:8px;margin-bottom:1px;font-size:.62rem;display:flex}.route-diagram__provider-count{color:#74848b;font-size:.58rem}.route-diagram__provider{background:linear-gradient(145deg,#ffffff08,#0000 55%),linear-gradient(110deg,#161f23,#11171a);border:1px solid #43535a99;border-radius:7px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;min-height:52px;padding:7px 9px;display:grid;box-shadow:inset 0 1px #ffffff0a,0 3px 8px #0000002e}.route-diagram__provider--fallback{background:linear-gradient(145deg,#9bd7e512,#0000 60%),linear-gradient(110deg,#172126,#11171a);border-color:#9bd7e57a}.route-diagram__provider-mark{color:#dce3e3;background:linear-gradient(145deg,#263238,#182126);border:1px solid #43535a;border-radius:6px;place-items:center;width:28px;height:28px;font-size:.68rem;display:grid;box-shadow:inset 0 1px #ffffff12,0 2px 3px #0000003d}.route-diagram__provider--fallback .route-diagram__provider-mark{color:var(--flow-accent);border-color:#9bd7e58c}.route-diagram__provider-copy{min-width:0}.route-diagram__provider strong,.route-diagram__provider small{overflow-wrap:anywhere;display:block}.route-diagram__provider strong{color:var(--text);font-size:.74rem;font-weight:600;line-height:1.3}.route-diagram__provider small{color:var(--muted);margin-top:2px;font-size:.64rem;line-height:1.35}.route-diagram__state{color:#98a7ac;letter-spacing:.04em;font-size:.56rem}.route-diagram__provider--fallback .route-diagram__state{color:var(--flow-accent)}@media (width<=760px){.route-diagram__flow{grid-template-columns:minmax(0,1fr);gap:8px}.route-diagram__node,.route-diagram__client,.route-diagram__gateway{min-height:0;padding:14px}.route-diagram__connector{justify-content:center;gap:5px;min-height:40px}.route-diagram__connector-line{background:linear-gradient(#43535a,#9bd7e5a6);width:1px;height:21px}.route-diagram__connector-line:before{width:5px;height:100%;animation-name:route-flow-vertical;inset:0 -2px}.route-diagram__connector-line:after{top:auto;bottom:0;right:-3px;transform:rotate(135deg)}.route-diagram__connector-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.route-diagram__provider{grid-template-columns:32px minmax(0,1fr) auto;gap:10px;padding:9px 11px}.route-diagram__provider strong{font-size:.82rem}.route-diagram__provider small{font-size:.7rem}.route-diagram__state{font-size:.6rem}}@keyframes route-flow-vertical{0%{opacity:0;transform:translateY(-60%)}30%,70%{opacity:.8}to{opacity:0;transform:translateY(60%)}}@media (width<=380px){.route-diagram__head{flex-direction:column;align-items:flex-start;gap:5px}.route-diagram__concept{text-align:left}.route-diagram__provider{grid-template-columns:30px minmax(0,1fr)}.route-diagram__state{grid-column:2;margin-top:-8px}}.capability-grid{gap:var(--gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.capability{border:1px solid var(--border);border-top-color:var(--accent);background:linear-gradient(145deg, #ffffff08, transparent 44%), linear-gradient(145deg, #9bd7e50a, transparent 65%), var(--surface);min-height:230px;transition:transform var(--speed) var(--ease), box-shadow var(--speed) var(--ease);border-radius:9px;flex-direction:column;gap:14px;padding:22px;display:flex;box-shadow:inset 0 1px #ffffff0a,0 3px 8px #0000002e}.capability__index{color:var(--muted);letter-spacing:.08em}.capability h3{font-size:var(--text-h3);letter-spacing:-.02em}.capability p{color:var(--muted)}.capability-more{color:var(--muted);margin-top:28px}.capability-more .link{align-items:center;min-height:44px;display:inline-flex}.philosophy-title{letter-spacing:-.03em;max-width:20ch;font-size:clamp(1.875rem,1.4rem + 2vw,3rem)}.philosophy-body{color:var(--muted);margin-top:20px;font-size:clamp(1.0625rem,1rem + .3vw,1.1875rem);line-height:1.65}.stack-grid{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stack-group{border:1px solid var(--border);border-top:2px solid var(--border-strong);background:linear-gradient(145deg, #ffffff08, transparent 44%), linear-gradient(145deg, #9bd7e508, transparent 65%), var(--surface);transition:transform var(--speed) var(--ease), box-shadow var(--speed) var(--ease);border-radius:8px;padding:18px 16px 20px;box-shadow:inset 0 1px #ffffff0a,0 3px 8px #0000002e}.stack-group h3{font-family:var(--font-mono);font-size:var(--text-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:500}.stack-group ul{font-size:var(--text-small);flex-direction:column;gap:8px;margin-top:14px;line-height:1.5;display:flex}.about-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:clamp(32px,5vw,72px);display:grid}.about-grid__body h2{font-size:var(--text-h2);max-width:18ch}.about-grid__body>p{color:var(--muted);margin-top:18px}.about-actions{margin-top:24px}.about-facts{border-top:1px solid var(--border);flex-direction:column;display:flex}.about-facts>div{border-bottom:1px solid var(--border);grid-template-columns:108px minmax(0,1fr);gap:16px;padding-block:14px;display:grid}.fact__label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding-top:2px}.fact__value{line-height:1.5}.follow-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:clamp(32px,5vw,72px);display:grid}.follow-grid h2{font-size:var(--text-h2);max-width:16ch}.follow-grid>div>p{max-width:52ch;color:var(--muted);margin-top:18px}.page-hero{padding-block:clamp(36px,6vw,72px) clamp(16px,3vw,36px)}.page-hero__eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.page-hero h1{font-size:var(--text-display);letter-spacing:-.04em;max-width:22ch;margin-top:14px;font-weight:360;line-height:1}.page-hero__lead{max-width:62ch;color:var(--muted);margin-top:18px;font-size:clamp(1.0625rem,1rem + .3vw,1.1875rem);line-height:1.6}.page-hero__meta{color:var(--muted);flex-wrap:wrap;gap:10px 24px;margin-top:22px;display:flex}.page-hero+.section--tight{padding-top:clamp(24px,4vw,48px)}.page-hero--about .container{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;column-gap:clamp(32px,5vw,72px);display:grid}.page-hero--about .page-hero__eyebrow{grid-column:1}.page-hero--about h1{grid-column:1;max-width:14ch;font-size:clamp(2.5rem,5.6vw,4.75rem)}.page-hero--about .page-hero__lead{grid-area:1/2/span 2;align-self:end;max-width:46ch;margin-top:0}.page-hero--about .page-hero__meta{grid-area:3/2}.page-hero--services .page-hero__lead,.page-hero--services .page-hero__meta{max-width:54ch;margin-left:auto}.profile-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:clamp(32px,5vw,64px);display:grid}.profile-body{max-width:760px}.profile-portrait{margin-top:6px}.profile-body h2{font-size:var(--text-h2);max-width:22ch}.profile-body>p:not(h2){color:var(--muted);margin-top:16px}.principle-list{flex-direction:column;display:flex}.principle{border-top:1px solid var(--border);grid-template-columns:52px minmax(0,1fr);gap:4px 18px;padding-block:22px;display:grid}.principle:last-child{border-bottom:1px solid var(--border)}.principle__index{color:var(--muted);padding-top:4px}.principle h3{font-size:var(--text-h3);letter-spacing:-.02em}.principle p{color:var(--muted);margin-top:8px}.focus-list{flex-direction:column;display:flex}.focus-list li{border-top:1px solid var(--border);grid-template-columns:52px minmax(0,1fr);gap:4px 18px;padding-block:14px;display:grid}.focus-list li:last-child{border-bottom:1px solid var(--border)}.focus-list .mono{color:var(--muted);padding-top:2px}.profile-links{flex-wrap:wrap;gap:10px 32px;display:flex}.profile-links a{min-height:44px;font-size:var(--text-mono);text-decoration:underline 1px;text-decoration-color:var(--border-strong);text-underline-offset:.25em;transition:color var(--speed) var(--ease), text-decoration-color var(--speed) var(--ease);align-items:center;gap:8px;display:inline-flex}.profile-links span{color:var(--muted)}.profile-links a:hover{color:var(--accent);text-decoration-color:var(--accent)}.identity-list{border-top:1px solid var(--border)}.identity-list>div{border-bottom:1px solid var(--border);background:linear-gradient(90deg,#9bd7e508,#0000 65%);grid-template-columns:minmax(160px,.7fr) minmax(0,1.3fr);gap:16px;padding:18px 16px;display:grid}.identity-list dt{font-family:var(--font-mono);color:var(--text)}.identity-list dd{color:var(--muted)}.journal-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.journal-list--index{max-width:var(--reading-width);grid-template-columns:minmax(0,1fr)}.journal-card{border:1px solid var(--border);border-top-color:var(--accent);background:linear-gradient(145deg, #ffffff08, transparent 44%), linear-gradient(145deg, #9bd7e50a, transparent 70%), var(--surface);min-height:220px;transition:transform var(--speed) var(--ease), box-shadow var(--speed) var(--ease);border-radius:9px;flex-direction:column;align-items:flex-start;padding:24px;display:flex;box-shadow:inset 0 1px #ffffff0a,0 3px 8px #0000002e}.journal-card__meta{color:var(--muted)}.journal-card h2,.journal-card h3{font-family:var(--font-display);font-size:var(--text-h3);margin:12px 0 8px;font-weight:420;line-height:1.15}.journal-card>p:not(.journal-card__meta){color:var(--muted);margin-bottom:16px}.journal-card .link{margin-top:auto}.journal-tags{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.journal-tags li{color:var(--muted)}.journal-hero .breadcrumb{margin-bottom:26px}.journal-progress{z-index:110;top:var(--shell-height,52px);pointer-events:none;height:2px;position:fixed;left:0;right:0}.journal-progress span{background:var(--accent);transform-origin:0;will-change:transform;width:100%;height:100%;display:block;transform:scaleX(0)}.journal-reading{grid-template-columns:minmax(180px, 230px) minmax(0, var(--reading-width));justify-content:center;align-items:start;gap:clamp(28px,6vw,88px);padding-block:clamp(40px,6vw,72px);display:grid}.journal-toc{top:calc(var(--shell-height,52px) + 24px);max-height:calc(100dvh - var(--shell-height,52px) - 48px);border-right:1px solid var(--border);padding-right:16px;position:sticky;overflow-y:auto}.journal-toc__title{color:var(--muted);text-transform:uppercase;margin-bottom:12px}.journal-toc ol{gap:3px;display:grid}.journal-toc a{color:var(--muted);font-size:var(--text-small);transition:color var(--speed) var(--ease);grid-template-columns:24px minmax(0,1fr);gap:8px;padding-block:7px;line-height:1.4;display:grid}.journal-toc a span{color:var(--accent)}.journal-toc a:hover,.journal-toc a[aria-current=location]{color:var(--text)}.journal-toc__status{border-top:1px solid var(--border);color:var(--accent);margin-top:18px;padding-top:12px}.journal-article{max-width:var(--reading-width);min-width:0}.journal-section{border-bottom:1px solid var(--border);padding-bottom:clamp(28px,4vw,48px)}.journal-section+.journal-section{padding-top:clamp(28px,4vw,48px)}.journal-section h2{font-size:var(--text-h3);letter-spacing:-.02em;margin-bottom:12px}.journal-section p{color:var(--muted);margin-top:12px}.journal-code{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-family:var(--font-mono);font-size:var(--text-mono);tab-size:2;margin-top:20px;padding:18px;line-height:1.65;overflow-x:auto}.journal-code-wrap{margin-top:18px;position:relative}.journal-code-wrap .journal-code{margin-top:0;padding-right:92px}.journal-code-copy{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);min-height:34px;color:var(--text);font-family:var(--font-mono);padding:4px 10px;font-size:.75rem;position:absolute;top:8px;right:8px}.journal-code-copy:hover{border-color:var(--accent);color:var(--accent)}.journal-next{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-top:32px;padding-top:20px;display:flex}.journal-next__link{text-align:right;gap:4px;max-width:36ch;display:grid}.journal-next__link span:first-child{color:var(--muted)}.journal-next__link:hover span:last-child{color:var(--accent)}@media (width<=900px){.journal-reading{grid-template-columns:minmax(0,1fr);gap:24px}.journal-toc{border-right:0;border-bottom:1px solid var(--border);max-height:none;padding:0 0 12px;position:static;overflow:hidden}.journal-toc ol{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.journal-toc li{flex:0 0 min(220px,62vw)}.journal-toc a{border:1px solid var(--border);border-radius:var(--radius-sm);height:100%;padding:9px}.journal-toc__status{border-top:0;margin-top:10px;padding-top:0}}.journal-source{color:var(--muted);margin:26px 0}.service-row{border-top:1px solid var(--border);grid-template-columns:52px minmax(0,1fr);gap:4px 18px;padding-block:clamp(32px,4vw,56px);display:grid}.service-row:last-of-type{border-bottom:1px solid var(--border)}.service-row__index{color:var(--muted);padding-top:6px}.service-row h2{letter-spacing:-.025em;font-size:clamp(1.5rem,1.2rem + 1.4vw,2.25rem)}.service-row__lead{max-width:68ch;color:var(--muted);margin-top:12px}.service-row__cols{gap:var(--gap);border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px;padding-top:20px;display:grid}.service-row__label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px;font-weight:500}.includes{font-size:var(--text-small);flex-direction:column;gap:6px;line-height:1.5;display:flex}.includes li{padding-left:16px;position:relative}.includes li:before{content:"-";color:var(--muted);position:absolute;left:0}.service-row__platforms{margin-top:14px}.service-row .link{align-items:center;min-height:44px;margin-top:16px;display:inline-flex}.process-steps{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.process-steps li{border-top:1px solid var(--border-strong);flex-direction:column;gap:10px;padding-top:16px;display:flex}.process-steps .mono{color:var(--muted)}.process-steps h3{font-size:calc(var(--text-h3) - .2rem);letter-spacing:-.02em}.process-steps p{color:var(--muted);font-size:var(--text-small);line-height:1.55}.faq-list{flex-direction:column;display:flex}.faq-item{border-bottom:1px solid var(--border)}.faq-item summary{cursor:pointer;letter-spacing:-.01em;transition:color var(--speed) var(--ease);justify-content:space-between;align-items:baseline;gap:16px;padding:18px 0;font-size:1rem;font-weight:560;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-family:var(--font-mono);color:var(--muted);flex:none;font-weight:400}.faq-item[open] summary:after{content:"-"}.faq-item summary:hover{color:var(--accent)}.faq-item p{color:var(--muted);max-width:70ch;padding-bottom:20px}.contact-layout{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:clamp(32px,5vw,72px);display:grid}.contact-form-wrap h2,.contact-aside h2{font-size:var(--text-h3);letter-spacing:-.02em}.contact-form-wrap>p{color:var(--muted);font-size:var(--text-small);margin-top:10px}.contact-form{border-top:1px solid var(--border);flex-direction:column;gap:18px;margin-top:24px;padding-top:24px;display:flex}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.form-field{flex-direction:column;gap:8px;display:flex}.form-field label{font-family:var(--font-mono);font-size:var(--text-mono);color:var(--muted)}.required-mark{color:var(--accent)}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--control-border);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:46px;color:var(--text);transition:border-color var(--speed) var(--ease);padding:10px 12px;font-size:.9375rem}.form-field textarea{resize:vertical;min-height:132px}.form-field input:hover,.form-field select:hover,.form-field textarea:hover{border-color:var(--text)}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.form-field ::placeholder{color:var(--muted);opacity:1}.form-note{color:var(--muted);font-size:var(--text-small);max-width:60ch;line-height:1.55}.form-status{min-height:1.2em;font-size:var(--text-small);color:var(--accent)}.form-status--error{color:var(--danger)}.brief-ready{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);margin-top:18px;padding:18px}.brief-ready[hidden]{display:none}.brief-ready h3{letter-spacing:-.01em;font-size:1.0625rem}.brief-ready h3:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.brief-ready__status{color:var(--muted);font-size:var(--text-small);margin-top:6px;line-height:1.55}.brief-ready__actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.brief-ready .form-note{margin-top:12px}.channel-list{border-top:1px solid var(--border);flex-direction:column;margin-top:20px;display:flex}.channel-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding-block:8px;display:flex}.channel-list a{min-height:44px;transition:color var(--speed) var(--ease);align-items:center;font-weight:560;display:inline-flex}.channel-list a:hover{color:var(--accent)}.channel-list span{font-family:var(--font-mono);font-size:var(--text-mono);color:var(--muted);overflow-wrap:anywhere}.contact-aside .btn{margin-top:18px}.contact-aside .form-note{margin-top:8px}.next-steps{border-top:1px solid var(--border);margin-top:32px;padding-top:24px}.next-steps h3{letter-spacing:-.01em;font-size:1.0625rem}.next-steps ol{counter-reset:step;flex-direction:column;gap:12px;margin-top:14px;display:flex}.next-steps li{counter-increment:step;padding-left:28px;position:relative}.next-steps li:before{content:counter(step, decimal-leading-zero);font-family:var(--font-mono);font-size:var(--text-mono);color:var(--muted);position:absolute;top:2px;left:0}.next-steps strong{font-weight:600;display:block}.next-steps span{color:var(--muted);font-size:var(--text-small);margin-top:2px;line-height:1.5;display:block}.contact-aside>.mono{margin-top:28px;display:block}.contact-block{border-top:1px solid var(--border)}.contact-block__inner{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:clamp(28px,4vw,64px);padding-block:clamp(44px,6vw,88px);display:grid}.contact-block__title{letter-spacing:-.03em;max-width:20ch;font-size:clamp(1.75rem,1.3rem + 2vw,3rem)}.contact-block__copy{color:var(--muted);margin-top:14px}.contact-block__main .btn{margin-top:24px}.contact-block__details{color:var(--muted);flex-direction:column;align-self:end;gap:14px;display:flex}.contact-block__details .mono{color:var(--muted)}.contact-block__links{flex-direction:column;gap:8px;display:flex}.contact-block__links a{width:fit-content;min-height:44px;text-decoration:underline 1px;text-decoration-color:var(--border-strong);text-underline-offset:.2em;transition:color var(--speed) var(--ease);align-items:center;display:inline-flex}.contact-block__links a:hover{color:var(--accent)}.project-hero{padding-block:clamp(36px,6vw,72px) 0}.breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.breadcrumb a{min-height:44px;transition:color var(--speed) var(--ease);align-items:center;display:inline-flex}.breadcrumb a:hover{color:var(--text)}.breadcrumb__sep{color:var(--border-strong)}.project-hero__meta{color:var(--muted);flex-wrap:wrap;gap:10px 24px;margin-top:20px;display:flex}.project-hero__title{font-size:var(--text-display);letter-spacing:-.04em;max-width:18ch;margin-top:14px;font-weight:360;line-height:1}.project-hero__tagline{max-width:52ch;color:var(--muted);margin-top:14px;font-size:clamp(1.125rem,1rem + .6vw,1.375rem);line-height:1.45}.project-hero__actions{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:12px;margin-top:26px;padding-bottom:clamp(36px,5vw,56px);display:flex}.project-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:clamp(32px,5vw,72px);padding-block:clamp(40px,6vw,72px);display:grid}.project-content{max-width:var(--reading-width)}.project-section{border-bottom:1px solid var(--border);padding-bottom:clamp(28px,4vw,48px)}.project-section+.project-section{padding-top:clamp(28px,4vw,48px)}.project-section h2{font-size:var(--text-h3);letter-spacing:-.02em}.project-section p{color:var(--muted);margin-top:12px}.feature-list{font-size:var(--text-small);flex-direction:column;gap:8px;margin-top:18px;line-height:1.55;display:flex}.feature-list li{color:var(--muted);padding-left:16px;position:relative}.feature-list li:before{content:"-";color:var(--border-strong);position:absolute;left:0}.project-figure{border:1px solid var(--border);background:linear-gradient(145deg, #ffffff08, transparent 42%), var(--surface);border-radius:10px;margin-top:clamp(28px,4vw,48px);padding:clamp(14px,2.5vw,28px);box-shadow:inset 0 1px #ffffff0a,0 3px 8px #0003,0 18px 40px #0000002b}.project-figure figcaption{color:var(--muted);max-width:56ch;margin-top:12px}.project-note{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);margin-top:clamp(24px,3vw,36px);padding:16px 18px}.project-note p{color:var(--muted)}.spec{border-top:1px solid var(--border);flex-direction:column;display:flex;position:sticky;top:24px}.spec__row{border-bottom:1px solid var(--border);grid-template-columns:84px minmax(0,1fr);gap:12px;padding-block:12px;display:grid}.spec__label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding-top:2px}.spec__value{font-size:var(--text-small);overflow-wrap:anywhere;line-height:1.5}.spec__value a{text-underline-offset:.2em;min-height:44px;transition:color var(--speed) var(--ease);align-items:center;text-decoration:underline 1px;display:inline-flex}.spec__value a:hover{color:var(--accent)}.next-project{border-top:1px solid var(--border);transition:color var(--speed) var(--ease);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 32px;margin-top:clamp(16px,3vw,32px);padding:clamp(22px,3vw,36px) 0;display:flex}.next-project .mono{color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.next-project__name{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(1.375rem,1rem + 1vw,2.125rem);font-weight:430}.next-project:hover .next-project__name{color:var(--accent)}.not-found{padding-block:clamp(48px,8vw,110px)}.not-found__grid{grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:clamp(32px,5vw,72px);display:grid}.not-found__portrait{justify-self:end;width:100%;max-width:280px}.not-found__code{color:var(--muted);letter-spacing:.12em;border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:6px 12px;display:inline-block}.not-found__body h1{font-size:var(--text-display);letter-spacing:-.04em;max-width:16ch;margin-top:20px;font-weight:360}.not-found__body>p:not(.not-found__code){color:var(--muted);max-width:52ch;margin-top:16px}.not-found__actions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}@media (hover:hover) and (pointer:fine){.portrait-frame:hover{transform:translateY(-3px);box-shadow:inset 0 1px #ffffff1a,0 3px 8px #0000003d,0 30px 90px #00000061}.capability:hover,.stack-group:hover,.journal-card:hover{transform:translateY(-3px);box-shadow:inset 0 1px #ffffff0f,0 5px 12px #00000038,0 16px 28px #0000002e}}.site-footer{border-top:1px solid var(--border);margin-top:0;padding-block:clamp(44px,6vw,72px) 32px}.footer__top{gap:var(--gap);grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);align-items:start;padding-bottom:clamp(36px,5vw,56px);display:grid}.footer__wordmark{min-height:44px;font-family:var(--font-body);letter-spacing:-.03em;align-items:center;font-size:1.25rem;font-weight:680;display:inline-flex}.footer__wordmark .dot{color:var(--accent)}.footer__desc{color:var(--muted);font-size:var(--text-small);max-width:34ch;margin-top:10px}.footer__nav,.footer__social{font-size:var(--text-small);flex-direction:column;gap:0;display:flex}.footer__nav a,.footer__social a{min-height:44px;color:var(--muted);width:fit-content;transition:color var(--speed) var(--ease);align-items:center;display:inline-flex}.footer__nav a:hover,.footer__social a:hover{color:var(--text)}.footer__bottom{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 28px;padding-top:20px;display:flex}.footer__bottom a{text-underline-offset:.2em;min-height:44px;transition:color var(--speed) var(--ease);align-items:center;text-decoration:underline 1px;display:inline-flex}.footer__bottom a:hover{color:var(--text)}@media (width<=1120px){.hero__grid{grid-template-columns:minmax(0,1fr);gap:0}.hero__visual{grid-area:2/1;justify-self:center;width:min(100%,clamp(280px,52vw,460px));margin:0 auto 24px}.hero__portrait{width:min(58%,250px);right:4%}.hero__body{grid-area:1/1}}@media (width<=1024px){.stack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}.project-layout{grid-template-columns:minmax(0,1fr)}.spec{position:static}.contact-layout,.featured,.about-grid,.follow-grid,.contact-block__inner{grid-template-columns:minmax(0,1fr)}.follow-grid{gap:20px}}@media (width<=900px){.site-nav,.header-contact{display:none}.menu-toggle{display:inline-flex}.header-actions{margin-left:auto}.capability-grid{grid-template-columns:minmax(0,1fr);gap:20px}.profile-grid{grid-template-columns:minmax(0,1fr)}.profile-portrait{width:min(100%,320px);margin:28px auto 0}.page-hero--about .container{display:block}.page-hero--about .page-hero__lead{max-width:62ch;margin-top:18px}.page-hero--about .page-hero__meta{margin-top:22px}.page-hero--services .page-hero__lead,.page-hero--services .page-hero__meta{max-width:62ch;margin-left:0}.service-row{grid-template-columns:minmax(0,1fr)}.service-row__index{padding-top:0}.service-row__cols{grid-template-columns:minmax(0,1fr)}.footer__top{grid-template-columns:minmax(0,1fr);gap:32px}.footer__nav,.footer__social{flex-flow:wrap;gap:8px 24px}.not-found__grid{grid-template-columns:minmax(0,1fr)}.not-found__portrait{justify-self:center;max-width:240px;margin:28px auto 0}}@media (width<=700px){.hero__title{font-size:clamp(2.8rem,12vw,4.35rem)}.project-row{grid-template-columns:36px minmax(0,1fr)}.project-row__side{text-align:left;flex-flow:wrap;grid-column:2;align-items:baseline;gap:8px 14px}.identity-list>div{grid-template-columns:minmax(0,1fr);gap:4px}.journal-list{grid-template-columns:minmax(0,1fr)}.journal-card{min-height:0}.form-row{grid-template-columns:minmax(0,1fr)}.page-hero h1,.project-hero__title{font-size:clamp(2.25rem,9vw,3.25rem)}.about-facts>div{grid-template-columns:minmax(0,1fr);gap:4px}.principle,.focus-list li{grid-template-columns:40px minmax(0,1fr)}.spec__row{grid-template-columns:minmax(0,1fr);gap:4px}}@media (width<=560px){.site-header__inner{gap:10px}.wordmark{font-size:1.05rem}.hero__actions .btn,.project-hero__actions .btn,.about-actions .btn,.not-found__actions .btn{width:100%}.contact-block__links{flex-direction:column;align-items:flex-start}}@media (width<=420px){.stack-grid,.process-steps{grid-template-columns:minmax(0,1fr)}.hero__actions .btn,.not-found__actions .btn{width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.route-diagram__connector-line:before{animation:none!important}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{padding-top:calc(var(--shell-height) + env(safe-area-inset-top));padding-bottom:calc(96px + env(safe-area-inset-bottom))}.wallpaper{z-index:-3;background:var(--bg);pointer-events:none;position:fixed;inset:0;overflow:hidden}.wallpaper:before{background:radial-gradient(88rem 58rem at 14% -8%, var(--wall-a), transparent 62%), radial-gradient(70rem 50rem at 88% 6%, var(--wall-b), transparent 58%), radial-gradient(64rem 64rem at 58% 106%, var(--wall-c), transparent 60%);content:"";transform:translate3d(var(--wall-x,0), var(--wall-y,0), 0);transition:transform 1.2s var(--ease);position:absolute;inset:-12%}.wallpaper:after{content:"";background:radial-gradient(120% 90% at 50% 115%,#00000047,#0000 62%);position:absolute;inset:0}.site-header{z-index:300;height:calc(var(--shell-height) + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);border-bottom:1px solid var(--border);background:var(--glass);backdrop-filter:blur(24px)saturate(1.6);user-select:none;font-size:.8125rem;line-height:1;position:fixed;top:0;left:0;right:0}.site-header__inner{height:var(--shell-height);align-items:center;gap:6px;width:min(100% - 20px,1560px);margin-inline:auto;display:flex}.wordmark{letter-spacing:-.02em;white-space:nowrap;border-radius:4px;align-items:center;height:22px;padding-inline:7px;font-size:.9375rem;font-weight:650;display:inline-flex}.wordmark:hover{background:#ffffff17}.wordmark__dot{color:var(--accent)}.menu-bar__page{height:22px;color:var(--text);white-space:nowrap;border-radius:4px;align-items:center;padding-inline:9px;font-weight:600;display:inline-flex}.site-nav{align-items:center;gap:1px;margin-left:4px;display:flex}.site-nav__link{height:22px;font-family:var(--font-body);color:var(--muted);white-space:nowrap;transition:background-color var(--speed) var(--ease), color var(--speed) var(--ease);border-radius:4px;align-items:center;padding-inline:9px;font-size:.75rem;display:inline-flex}.site-nav__link:hover{color:var(--text);background:#ffffff17}.site-nav__link[aria-current=page]{color:var(--text);font-weight:600}.site-nav__link[aria-current=page]:after{display:none}.header-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.menubar-status{min-height:20px;color:var(--muted);font-family:var(--font-mono);letter-spacing:.02em;white-space:nowrap;border-radius:4px;align-items:center;gap:6px;padding-inline:7px;font-size:.6875rem;display:inline-flex}.header-contact,.spotlight-trigger{height:22px;color:var(--muted);transition:background-color var(--speed) var(--ease), color var(--speed) var(--ease);background:0 0;border:0;border-radius:4px;align-items:center;padding-inline:9px;font-size:.75rem;display:inline-flex}.header-contact:hover{color:var(--text);background:#ffffff17;transform:none}.spotlight-trigger{gap:6px}.spotlight-trigger:hover{color:var(--text);background:#ffffff17;transform:none}.spotlight-trigger svg,.spotlight__search svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.7px;width:15px;height:15px}.spotlight-shortcut{opacity:.75;font-size:.65rem}.menu-bar__clock{min-width:4.4ch;color:var(--muted);font-family:var(--font-mono);text-align:right;white-space:nowrap;font-size:.6875rem}.menu-toggle{display:none}.menubar-progress{background:var(--accent);opacity:.9;height:2px;transform:scaleX(var(--scroll-progress,0));transform-origin:0;will-change:transform;position:absolute;bottom:-1px;left:0;right:0}.app-dock{z-index:290;right:50%;bottom:calc(14px + env(safe-area-inset-bottom));border:1px solid var(--border-strong);background:var(--material);box-shadow:var(--dock-shadow);backdrop-filter:blur(26px)saturate(1.6);user-select:none;border-radius:18px;align-items:end;gap:6px;padding:8px 10px 10px;display:flex;position:fixed;transform:translate(50%)}.dock-item{width:52px;min-height:52px;color:var(--text);transform:translateY(calc((1 - var(--dock-scale,1)) * -8px)) scale(var(--dock-scale,1));transform-origin:bottom;transition:transform .17s var(--ease);border-radius:12px;place-items:center;display:grid;position:relative}.dock-item--near{transform:translateY(-3px)scale(1.07)}.dock-item--nearer{transform:translateY(-5px)scale(1.16)}.dock-item--magnified{transform:translateY(-9px)scale(1.3)}.dock-icon{background:linear-gradient(165deg, #ffffff3d, transparent 46%), linear-gradient(180deg, var(--tile-a,#24435e), var(--tile-b,#101c28) 82%);border:1px solid #ffffff2e;border-radius:10px;place-items:center;width:40px;height:40px;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff52,inset 0 -10px 16px #0000003d,0 5px 10px -4px #0000008c}.dock-item:nth-child(2) .dock-icon{--tile-a:#224863;--tile-b:#0e2233}.dock-item:nth-child(3) .dock-icon{--tile-a:#2a3f57;--tile-b:#101a26}.dock-item:nth-child(4) .dock-icon{--tile-a:#354455;--tile-b:#131a22}.dock-item:nth-child(5) .dock-icon{--tile-a:#31424c;--tile-b:#111a1f}.dock-icon svg{fill:none;stroke:#f2f6f8;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;filter:drop-shadow(0 1px 1px #00000059);width:22px;height:22px}.dock-item__label{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--material-strong);color:var(--text);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .14s var(--ease), transform .14s var(--ease);padding:4px 9px;font-size:.7rem;line-height:1.4;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%,4px)}.dock-item:hover .dock-item__label,.dock-item:focus-visible .dock-item__label{opacity:1;transform:translate(-50%)}.dock-item__active{background:var(--text);opacity:.85;border-radius:50%;width:4px;height:4px;position:absolute;bottom:-6px}main{isolation:isolate}.hero__grid,.page-hero>.container,.project-hero>.container,.not-found__grid{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:linear-gradient(140deg, #ffffff0d, transparent 42%), var(--glass);box-shadow:var(--window-shadow);backdrop-filter:blur(16px)saturate(1.2);padding:clamp(22px,3vw,42px)}.hero{padding-top:clamp(34px,5vw,68px)}.hero:before{display:none}.featured,.journal-card,.capability,.stack-group,.service-row,.project-figure,.project-aside,.contact-form-wrap,.contact-aside{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(145deg, #ffffff0a, transparent 45%), var(--glass);box-shadow:var(--window-shadow);backdrop-filter:blur(14px)saturate(1.2)}.service-row{margin-block:12px;padding-inline:clamp(18px,3vw,34px)}.contact-form-wrap,.contact-aside{padding:clamp(20px,3vw,32px)}.project-aside{padding:18px}.spotlight{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--material-strong);width:min(640px,100vw - 24px);max-height:min(76dvh,690px);color:var(--text);backdrop-filter:blur(28px)saturate(1.5);margin-inline:auto;padding:0;position:fixed;inset:12vh 0 auto;overflow:clip;box-shadow:0 32px 100px #0000008c,inset 0 1px #ffffff14}.spotlight::backdrop{backdrop-filter:blur(5px);background:#00000073}.spotlight[open]{animation:spotlight-in var(--speed) var(--ease)}@keyframes spotlight-in{0%{opacity:0;transform:translateY(-8px)scale(.985)}}.spotlight__inner{padding:10px}.spotlight__search{border-bottom:1px solid var(--border);min-height:50px;color:var(--muted);align-items:center;gap:12px;margin:0 2px;padding-inline:10px;display:flex}.spotlight__search input{width:100%;min-width:0;min-height:46px;color:var(--text);letter-spacing:-.012em;background:0 0;border:0;outline:0;font-size:1.1rem}.spotlight__search input::placeholder{color:var(--muted)}.spotlight__search kbd{font:.65rem var(--font-mono);white-space:nowrap;opacity:.8}.spotlight__results{overscroll-behavior:contain;max-height:min(56dvh,520px);padding-top:4px;overflow-y:auto}.spotlight__group{color:var(--muted);font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;padding:10px 10px 4px;font-size:.625rem;font-weight:400}.spotlight__results a{border-radius:var(--radius-sm);min-height:42px;color:var(--text);font-size:var(--text-small);grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:10px;padding:5px 10px;display:grid}.spotlight__results a:hover,.spotlight__results a:focus-visible{background:#ffffff12}.spotlight__results a.is-active{background:var(--accent);color:var(--accent-ink)}.spotlight__results a span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.spotlight__results a.is-active span{color:var(--accent-ink);opacity:.85}.spotlight__icon{width:26px;height:26px;color:var(--muted);background:#ffffff14;border-radius:7px;flex:none;place-items:center;display:grid}.spotlight__results a.is-active .spotlight__icon{color:var(--accent-ink);background:#0000002e}.spotlight__results a.is-active:hover .spotlight__icon{color:var(--accent-ink)}.spotlight__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:14px;height:14px}.spotlight__results a kbd{font:.62rem var(--font-mono);opacity:0}.spotlight__results a.is-active kbd{opacity:.9}.spotlight__foot{border-top:1px solid var(--border);color:var(--muted);font-family:var(--font-mono);letter-spacing:.02em;flex-wrap:wrap;gap:12px;padding:8px 12px 6px;font-size:.62rem;display:flex}.spotlight__foot kbd{border:1px solid var(--border-strong);background:#ffffff0f;border-radius:3px;padding:1px 4px}.spotlight__empty{color:var(--muted);font-size:var(--text-small);padding:18px 12px}@media (width<=900px){:root{--shell-height:48px}body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.site-header__inner{width:calc(100% - 28px);min-height:var(--shell-height)}.site-nav,.header-contact,.spotlight-shortcut{display:none}.menu-bar__page{display:inline}.header-actions{margin-left:auto}.menu-toggle{border-color:#0000;width:44px;min-width:44px;min-height:44px;padding:0;font-size:0;display:inline-flex}.menu-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.6px;width:20px;height:20px}.spotlight-trigger{background:0 0;border:0;width:44px;min-height:44px;padding:0}.app-dock{min-height:calc(68px + env(safe-area-inset-bottom));padding:4px 8px calc(4px + env(safe-area-inset-bottom));background:#101518eb;border:0;border-top:1px solid #ffffff21;border-radius:0;justify-content:space-around;gap:0;bottom:0;left:0;right:0;transform:none;box-shadow:0 -8px 30px #0003}.dock-item{gap:3px;width:min(20%,72px);min-height:58px;transition:none;transform:none}.dock-icon{width:28px;height:28px;box-shadow:none;border:0;border-radius:6px;background:0 0!important}.dock-icon svg{width:23px;height:23px}.dock-item__label{opacity:1;background:0 0;border:0;padding:0;font-size:.67rem;position:static;transform:none}.dock-item__active{bottom:0}.hero__grid,.page-hero>.container,.project-hero>.container,.not-found__grid{backdrop-filter:blur(10px)}.journal-card,.capability,.stack-group,.featured,.service-row,.project-figure,.project-aside,.contact-form-wrap,.contact-aside{backdrop-filter:none}}@media (width<=560px){.site-header__inner{gap:10px}.menu-bar__clock{font-size:.68rem}.hero__grid,.page-hero>.container,.project-hero>.container,.not-found__grid{padding:18px}}@media (prefers-color-scheme:light){:root{color-scheme:light;--bg:#eef3f4;--surface:#f8fbfb;--surface-raised:#fff;--text:#172126;--muted:#4b5c63;--accent:#176d84;--accent-ink:#fff;--border:#c9d5d8;--border-strong:#82969d;--control-border:#71858d;--glass:#f8fbfbe0}body{background-image:radial-gradient(at 8% 12%,#57a7b624,#0000 36rem),radial-gradient(at 92% 55%,#6d9a9f1c,#0000 42rem),linear-gradient(155deg,#eef3f4 0%,#e4edef 52%,#eef3f4 100%)}.site-header,.app-dock,.spotlight{background-color:#f1f7f8eb}.dock-icon svg{stroke:#21333a}}@media (prefers-reduced-motion:reduce){.dock-item,.dock-item--near,.dock-item--nearer,.dock-item--magnified{transform:none!important}}button,summary,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:not(:disabled){transition:transform .18s var(--ease), border-color .18s var(--ease), background-color .18s var(--ease), box-shadow .18s var(--ease), color .18s var(--ease)}button:not(:disabled):active{transform:translateY(1px)scale(.97)}.featured,.journal-card,.capability,.stack-group,.service-row,.project-figure,.project-aside,.contact-form-wrap,.contact-aside,.quick-look,.spotlight,.mobile-menu{transform-style:preserve-3d;transition:transform .32s var(--ease), border-color .24s var(--ease), box-shadow .32s var(--ease)}.faq-item{transition:background-color .22s var(--ease), border-color .22s var(--ease)}.faq-item[open]{border-color:var(--border-strong);background:linear-gradient(100deg,#9bd7e50a,#0000 80%)}.faq-item[open] summary:after{color:var(--accent)}.project-row,.project-list[data-view=grid] .project-row{transform-style:preserve-3d;transition:transform .26s var(--ease), background-color var(--speed) var(--ease), border-color var(--speed) var(--ease), box-shadow .26s var(--ease)}@media (hover:hover) and (pointer:fine){.featured:hover,.journal-card:hover,.capability:hover,.stack-group:hover,.service-row:hover,.project-figure:hover,.project-aside:hover,.contact-form-wrap:hover,.contact-aside:hover{border-color:var(--border-strong);box-shadow:var(--window-shadow), inset 0 1px 0 #ffffff17;transform:perspective(1100px)translateY(-4px)rotateX(.35deg)}.project-row:hover{transform:perspective(1000px)translateY(-2px)translateZ(4px)}.project-list[data-view=grid] .project-row:hover{border-color:var(--border-strong);box-shadow:var(--window-shadow), inset 0 1px 0 #ffffff14;transform:perspective(900px)translateY(-4px)rotateX(.7deg)}.btn:hover,.header-contact:hover,.site-nav__link:hover{transform:translateY(-2px)}.dock-item:hover .dock-icon{transform:perspective(420px)rotateX(-8deg)translateY(-2px)}.featured:hover .featured__diagram{transform:perspective(1000px)rotateY(-1.5deg)translateZ(6px)}}@media (hover:none) and (pointer:coarse){.project-row:active,.project-list[data-view=grid] .project-row:active,.journal-card:active,.capability:active,.stack-group:active{transform:scale(.992)}.btn:active,.header-contact:active{transform:scale(.97)}}@media (prefers-reduced-motion:reduce){.featured,.journal-card,.capability,.stack-group,.service-row,.project-figure,.project-aside,.contact-form-wrap,.contact-aside,.project-row,.project-list[data-view=grid] .project-row,.dock-icon{transform:none!important}}.finder-layout{grid-template-columns:minmax(180px,230px) minmax(0,1fr);align-items:start;gap:clamp(18px,3vw,32px);display:grid}.finder-sidebar,.finder-main{border-radius:var(--radius-md);background:var(--glass);min-width:0;box-shadow:var(--window-shadow), inset 0 1px 0 #ffffff0f;border:1px solid #ffffff1f}.finder-sidebar{padding:18px 12px}.finder-sidebar__title{color:var(--muted);padding:0 10px 10px}.finder-sidebar .filter-bar{flex-direction:column;gap:3px;display:flex}.finder-sidebar .filter-btn{border-radius:var(--radius-sm);min-height:44px;color:var(--muted);font-size:var(--text-small);text-align:left;background:0 0;border:0;padding:8px 10px}.finder-sidebar .filter-btn[aria-pressed=true]{color:var(--text);background:#9bd7e521}.finder-main{overflow:hidden}.finder-toolbar{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px;display:flex}.finder-search{border:1px solid var(--border);border-radius:var(--radius-sm);min-width:0;min-height:44px;color:var(--muted);background:#0000001f;flex:1;align-items:center;gap:9px;padding-inline:11px;display:flex}.finder-search svg,.finder-view svg,.quick-look__bar svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;flex:none;width:19px;height:19px}.finder-search input{width:100%;min-width:0;min-height:42px;color:var(--text);background:0 0;border:0;outline:0;font-size:1rem}.finder-search input::placeholder{color:var(--muted)}.finder-view{border:1px solid var(--border);border-radius:var(--radius-sm);gap:2px;padding:2px;display:flex}.finder-view button,.quick-look__bar button{border-radius:var(--radius-sm);width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;place-items:center;display:grid}.finder-view button[aria-pressed=true]{color:var(--text);background:#ffffff1a}.filter-count{color:var(--muted);padding:12px 16px}.finder-main .project-list{padding:0 14px 14px}.finder-main .projects-note{margin:8px 14px 16px}.project-list[data-view=grid]{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;display:grid}.project-list[data-view=grid] .project-row{border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff08;flex-direction:column;justify-content:space-between;align-items:stretch;gap:12px;min-height:220px;margin:0;padding:17px;display:flex}.project-list[data-view=grid] .project-row__side{text-align:left;align-items:flex-start}.project-row[hidden]{display:none!important}.quick-look{width:min(540px,100vw - 32px);color:var(--text);background:#151a1d;border:1px solid #ffffff29;border-radius:10px;margin:auto;padding:0;box-shadow:0 24px 80px #00000080,inset 0 1px #ffffff14}.quick-look::backdrop{backdrop-filter:blur(5px);background:#00000094}.quick-look__bar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:56px;padding:6px 12px 6px 20px;display:flex}.quick-look__title{color:var(--muted)}.quick-look__body{padding:clamp(22px,5vw,36px)}.quick-look__body>.mono{color:var(--muted)}.quick-look__body h2{font-size:var(--text-h2);margin-top:10px}.quick-look__body>p:not(.mono){color:var(--muted);margin-top:14px}.quick-look__body .btn{margin-top:22px}@media (width<=900px){.finder-layout{grid-template-columns:minmax(0,1fr)}.finder-sidebar{padding:12px}.finder-sidebar .filter-bar{flex-flow:row;overflow-x:auto}.finder-sidebar .filter-btn{white-space:nowrap;flex:none}}@media (width<=560px){.finder-toolbar{align-items:stretch;gap:8px;padding:9px}.finder-view button{width:42px;min-height:44px}.finder-main .project-list{padding-inline:10px}}
