@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-body);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.flex{display:flex}.hidden{display:none}.h-full{height:100%}.min-h-full{min-height:100%}.flex-1{flex:1}.flex-col{flex-direction:column}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#101820;--ink-soft:#3a4a52;--muted:#6a7a82;--paper:#f1f4f6;--paper-2:#e2e8ec;--line:var(--ink)}@supports (color:color-mix(in lab, red, red)){:root{--line:color-mix(in oklab, var(--ink) 12%, transparent)}}:root{--accent:#c45c26;--accent-deep:#9a3f14;--accent-soft:#f3e0d4;--leaf:#1f6f6a;--leaf-soft:#d4ece9;--tech:#1a8f9e;--tech-soft:#d7f0f3;--surface:#fff;--shadow:0 24px 48px #1018201a;--radius:14px;--font-display:var(--font-display-family), "Noto Serif SC", "Songti SC", serif;--font-body:var(--font-body-family), "PingFang SC", "Noto Sans SC", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100%;color:var(--ink);font-family:var(--font-body);background:#eef2f5;margin:0;line-height:1.65}body:before{content:"";pointer-events:none;z-index:0;opacity:.22;background-image:linear-gradient(var(--tech) 1px, transparent 1px), linear-gradient(90deg, var(--tech) 1px, transparent 1px);position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){body:before{background-image:linear-gradient(color-mix(in oklab, var(--tech) 7%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in oklab, var(--tech) 7%, transparent) 1px, transparent 1px)}}body:before{background-size:56px 56px}main,.site-footer{z-index:1;position:relative}a{color:inherit;text-decoration:none}em{font-style:normal}.muted{color:var(--muted)}.container{width:min(1160px,100% - 1.5rem);margin-inline:auto}@media (min-width:768px){.container{width:min(1160px,100% - 2.75rem)}}.site-header{z-index:50;-webkit-backdrop-filter:blur(18px)saturate(1.2);backdrop-filter:blur(18px)saturate(1.2);border-bottom:1px solid var(--ink);background:linear-gradient(#0f1a220a,#0000 100%),#f4f7f9c7;background:linear-gradient(lab(8.51407% -2.9826 -7.21183/.04),#0000 100%),lab(97.0443% -.762343 -1.32977/.78);position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.site-header{border-bottom:1px solid color-mix(in oklab, var(--ink) 7%, transparent)}}.site-header{transition:min-height .25s,background .25s,box-shadow .25s,border-color .25s}.site-header.is-scrolled{border-bottom-color:var(--tech);background:#f4f7f9eb;background:lab(97.0443% -.762343 -1.32977/.92)}@supports (color:color-mix(in lab, red, red)){.site-header.is-scrolled{border-bottom-color:color-mix(in oklab, var(--tech) 18%, transparent)}}.site-header.is-scrolled{box-shadow:0 12px 40px #10182014}.site-header__beam{background:linear-gradient(90deg, transparent 0%, var(--tech) 18%, var(--accent) 48%, var(--tech) 78%, transparent 100%);height:2px}@supports (color:color-mix(in lab, red, red)){.site-header__beam{background:linear-gradient(90deg, transparent 0%, color-mix(in oklab, var(--tech) 55%, transparent) 18%, var(--accent) 48%, color-mix(in oklab, var(--tech) 55%, transparent) 78%, transparent 100%)}}.site-header__beam{opacity:.85}.site-header__inner{align-items:center;gap:1rem;width:min(1160px,100% - 1.5rem);min-height:4.5rem;margin-inline:auto;transition:min-height .25s;display:flex}@media (min-width:768px){.site-header__inner{width:min(1160px,100% - 2.75rem);min-height:5.25rem}.site-header.is-scrolled .site-header__inner{min-height:4.4rem}}.brand{align-items:center;gap:.85rem;min-width:0;display:inline-flex}.brand__logo{object-fit:cover;width:2.6rem;height:2.6rem;box-shadow:0 0 0 1px var(--ink), 0 4px 14px #1018201a;background:#fff;border-radius:50%;flex:none}@supports (color:color-mix(in lab, red, red)){.brand__logo{box-shadow:0 0 0 1px color-mix(in oklab, var(--ink) 8%, transparent), 0 4px 14px #1018201a}}.brand__logo--footer{width:2.5rem;height:2.5rem;box-shadow:0 0 0 1px #ffffff1f}.site-footer__brand-row{align-items:center;gap:.75rem;display:flex}.brand__text{flex-direction:column;gap:.15rem;min-width:0;line-height:1.15;display:flex}.brand__name{font-family:var(--font-display);letter-spacing:.08em;font-size:1.28rem;font-weight:700}.brand__sub{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tech);font-size:.68rem;display:none}@media (min-width:480px){.brand__sub{display:block}}@media (min-width:768px){.brand__logo{width:3rem;height:3rem}.brand__name{font-size:1.42rem}}.site-nav{color:var(--ink-soft);align-items:center;gap:.35rem;margin-left:auto;display:none}.site-nav__link{letter-spacing:.08em;padding:.7rem .95rem;font-size:.92rem;font-weight:600;transition:color .2s;position:relative}.site-nav__link span{z-index:1;position:relative}.site-nav__link:after{content:"";background:linear-gradient(90deg, var(--tech), var(--accent));transform-origin:0;height:2px;transition:transform .25s;position:absolute;bottom:.45rem;left:.95rem;right:.95rem;transform:scaleX(0)}.site-nav__link:hover{color:var(--ink)}.site-nav__link:hover:after{transform:scaleX(1)}.header-cta{display:none}.menu-toggle{border:1px solid var(--tech);width:2.7rem;height:2.7rem;margin-left:auto}@supports (color:color-mix(in lab, red, red)){.menu-toggle{border:1px solid color-mix(in oklab, var(--tech) 22%, var(--line))}}.menu-toggle{background:#fff;border-radius:10px}@supports (color:color-mix(in lab, red, red)){.menu-toggle{background:color-mix(in oklab, white 88%, var(--tech-soft))}}.menu-toggle{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;display:inline-flex}.menu-toggle span{background:var(--ink);border-radius:999px;width:1.15rem;height:2px;transition:transform .2s,opacity .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(6.5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-nav{border-top:1px solid var(--line);background:linear-gradient(180deg, var(--tech), transparent 40%), #fffffff0}@supports (color:color-mix(in lab, red, red)){.mobile-nav{background:linear-gradient(180deg, color-mix(in oklab, var(--tech) 5%, transparent), transparent 40%), lab(100% -.0000298023 .0000119209/.94)}}.mobile-nav{padding:1rem 1.25rem 1.5rem}.mobile-nav[hidden]{display:none}.mobile-nav nav{gap:.35rem;display:grid}.mobile-nav a{border-bottom:1px solid var(--line);color:var(--ink-soft);letter-spacing:.06em;padding:.9rem .4rem;font-weight:600}.mobile-nav .btn{border-bottom:0;margin-top:.85rem}@media (min-width:960px){.site-nav{display:flex}.header-cta{letter-spacing:.06em;min-width:6.5rem;margin-left:.5rem;display:inline-flex}.menu-toggle,.mobile-nav{display:none!important}}.btn{cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;padding:.85rem 1.35rem;font-size:.95rem;font-weight:600;transition:transform .25s,background .25s,box-shadow .25s;display:inline-flex}.btn--sm{padding:.55rem 1rem;font-size:.875rem}.btn--primary{background:var(--accent);color:#fff;box-shadow:0 10px 24px var(--accent)}@supports (color:color-mix(in lab, red, red)){.btn--primary{box-shadow:0 10px 24px color-mix(in oklab, var(--accent) 28%, transparent)}}.btn--primary:hover{background:var(--accent-deep);transform:translateY(-1px)}.btn--ghost{color:var(--ink);border:1px solid var(--line);background:0 0}.btn--ghost:hover{border-color:var(--accent);background:#fff}@supports (color:color-mix(in lab, red, red)){.btn--ghost:hover{border-color:color-mix(in oklab, var(--accent) 35%, transparent)}}.btn-group{flex-wrap:wrap;gap:.75rem;display:flex}.hero{isolation:isolate;background:radial-gradient(720px 380px at 88% 8%, var(--accent), transparent 60%), radial-gradient(640px 340px at 8% 20%, var(--tech), transparent 58%), linear-gradient(180deg, #f5f8fa 0%, #eef2f5 100%);padding:2.5rem 0 3.25rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.hero{background:radial-gradient(720px 380px at 88% 8%, color-mix(in oklab, var(--accent) 12%, transparent), transparent 60%), radial-gradient(640px 340px at 8% 20%, color-mix(in oklab, var(--tech) 12%, transparent), transparent 58%), linear-gradient(180deg, #f5f8fa 0%, #eef2f5 100%)}}@media (min-width:960px){.hero{align-items:center;min-height:min(88vh,820px);padding:4rem 0 5rem;display:grid}}.hero__backdrop{z-index:-1;background:linear-gradient(115deg, var(--tech) 0%, transparent 42%), radial-gradient(ellipse 80% 60% at 70% 40%, var(--accent), transparent 60%), repeating-linear-gradient(-12deg, transparent, transparent 14px, var(--tech) 14px, var(--tech) 15px);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.hero__backdrop{background:linear-gradient(115deg, color-mix(in oklab, var(--tech) 12%, transparent) 0%, transparent 42%), radial-gradient(ellipse 80% 60% at 70% 40%, color-mix(in oklab, var(--accent) 11%, transparent), transparent 60%), repeating-linear-gradient(-12deg, transparent, transparent 14px, color-mix(in oklab, var(--tech) 4%, transparent) 14px, color-mix(in oklab, var(--tech) 4%, transparent) 15px)}}.hero__backdrop{animation:14s ease-in-out infinite alternate backdrop-drift}@keyframes backdrop-drift{0%{transform:scale(1)translateY(0)}to{transform:scale(1.03)translateY(-1%)}}.hero__grid{align-items:center;gap:2.25rem;width:min(1160px,100% - 1.5rem);margin-inline:auto;display:grid}@media (min-width:768px){.hero__grid{width:min(1160px,100% - 2.75rem)}}@media (min-width:960px){.hero__grid{grid-template-columns:1.15fr .85fr;gap:3rem}}.hero__copy{animation:.75s both rise}.hero__role{color:var(--tech);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;margin:0 0 .85rem;font-size:.82rem;font-weight:600}.hero__brand{font-family:var(--font-display);letter-spacing:.06em;margin:0 0 .9rem;font-size:clamp(2.8rem,10vw,5.2rem);line-height:.95}.hero__headline{font-family:var(--font-display);letter-spacing:.04em;color:var(--ink-soft);margin:0 0 1rem;font-size:clamp(1.25rem,3vw,1.75rem);font-weight:600;line-height:1.35}.hero__support{max-width:34rem;color:var(--ink-soft);margin:0 0 1.6rem;font-size:.98rem}@media (min-width:768px){.hero__support{font-size:1.05rem}}.hero__visual{min-height:220px;animation:.95s .12s both rise}@media (min-width:960px){.hero__visual{min-height:360px}}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.hero-stage{height:100%;min-height:inherit;place-items:center;display:grid;position:relative}.hero-stage__grid{background-image:linear-gradient(var(--tech) 1px, transparent 1px), linear-gradient(90deg, var(--tech) 1px, transparent 1px);position:absolute;inset:8% 4%}@supports (color:color-mix(in lab, red, red)){.hero-stage__grid{background-image:linear-gradient(color-mix(in oklab, var(--tech) 14%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in oklab, var(--tech) 14%, transparent) 1px, transparent 1px)}}.hero-stage__grid{opacity:.55;background-size:28px 28px;-webkit-mask-image:radial-gradient(circle,#000 35%,#0000 78%);mask-image:radial-gradient(circle,#000 35%,#0000 78%)}.hero-stage__glow{filter:blur(28px);pointer-events:none;border-radius:50%;position:absolute}.hero-stage__glow--a{background:var(--accent);width:min(70%,280px);height:min(70%,280px)}@supports (color:color-mix(in lab, red, red)){.hero-stage__glow--a{background:color-mix(in oklab, var(--accent) 30%, transparent)}}.hero-stage__glow--a{animation:6s ease-in-out infinite pulse;top:8%;right:8%}.hero-stage__glow--b{background:var(--tech);width:min(55%,220px);height:min(55%,220px)}@supports (color:color-mix(in lab, red, red)){.hero-stage__glow--b{background:color-mix(in oklab, var(--tech) 32%, transparent)}}.hero-stage__glow--b{animation:7s ease-in-out .8s infinite pulse;bottom:10%;left:12%}@keyframes pulse{50%{opacity:.5}}.hero-stage__frame{z-index:1;aspect-ratio:1.05;border:1px solid var(--tech);place-items:center;gap:1rem;width:min(100%,360px);padding:1.5rem;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.hero-stage__frame{border:1px solid color-mix(in oklab, var(--tech) 28%, transparent)}}.hero-stage__frame{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff8c;background:lab(100% -.0000298023 .0000119209/.55);overflow:hidden}.hero-stage__corner{border-color:var(--accent);border-style:solid;width:1rem;height:1rem;position:absolute}.hero-stage__corner--tl{border-width:2px 0 0 2px;top:-1px;left:-1px}.hero-stage__corner--tr{border-width:2px 2px 0 0;top:-1px;right:-1px}.hero-stage__corner--bl{border-width:0 0 2px 2px;bottom:-1px;left:-1px}.hero-stage__corner--br{border-width:0 2px 2px 0;bottom:-1px;right:-1px}.hero-stage__scan{background:linear-gradient(180deg, transparent, var(--tech), transparent);height:28%;position:absolute;inset-inline:0}@supports (color:color-mix(in lab, red, red)){.hero-stage__scan{background:linear-gradient(180deg, transparent, color-mix(in oklab, var(--tech) 18%, transparent), transparent)}}.hero-stage__scan{pointer-events:none;animation:4.5s ease-in-out infinite scan-sweep}@keyframes scan-sweep{0%{opacity:0;top:-20%}15%{opacity:1}85%{opacity:1}to{opacity:0;top:90%}}.hero-stage__orbit{z-index:1;flex-wrap:wrap;justify-content:center;gap:.55rem;display:flex}.hero-stage__orbit span{font-family:var(--font-mono);letter-spacing:.12em;color:var(--ink-soft);border:1px solid var(--tech);font-size:.78rem;font-weight:600}@supports (color:color-mix(in lab, red, red)){.hero-stage__orbit span{border:1px solid color-mix(in oklab, var(--tech) 25%, transparent)}}.hero-stage__orbit span{background:#ffffffb3;background:lab(100% -.0000298023 .0000119209/.7);padding:.35rem .55rem;animation:.8s both rise}.hero-stage__orbit span:nth-child(2){animation-delay:.12s}.hero-stage__orbit span:nth-child(3){animation-delay:.22s}.hero-stage__mark{font-family:var(--font-display);letter-spacing:.16em;color:var(--ink);margin:0;font-size:clamp(3.5rem,12vw,5.5rem);font-weight:700;position:relative}@supports (color:color-mix(in lab, red, red)){.hero-stage__mark{color:color-mix(in oklab, var(--ink) 12%, transparent)}}.hero-stage__mark{-webkit-user-select:none;user-select:none;z-index:0;line-height:1}.hero-stage__hud{font-family:var(--font-mono);letter-spacing:.12em;align-items:center;gap:.55rem;font-size:.68rem;display:flex;position:absolute;bottom:1rem;left:1rem}.hero-stage__hud em{color:var(--muted)}.hero-stage__hud strong{color:var(--tech);padding-left:.7rem;position:relative}.hero-stage__hud strong:before{content:"";background:var(--tech);width:.35rem;height:.35rem;box-shadow:0 0 8px var(--tech);border-radius:50%;position:absolute;top:50%;left:0;transform:translateY(-50%)}@supports (color:color-mix(in lab, red, red)){.hero-stage__hud strong:before{box-shadow:0 0 8px color-mix(in oklab, var(--tech) 70%, transparent)}}.hero-stage__hud strong:before{animation:1.8s ease-in-out infinite pulse}.section{padding:3.5rem 0;position:relative}@media (min-width:768px){.section{padding:4.5rem 0}}.section--panel{background:#f8f9fb;background:lab(97.9893% -.386953 -1.10973)}.section--panel+.section--panel{border-top:1px solid var(--ink)}@supports (color:color-mix(in lab, red, red)){.section--panel+.section--panel{border-top:1px solid color-mix(in oklab, var(--ink) 6%, transparent)}}.section--stack{background:0 0;padding-block:2.75rem}@media (min-width:768px){.section--stack{padding-block:3.25rem}}.section--balanced{flex-direction:column;justify-content:center;min-height:0;display:flex}.section--projects .container{flex-direction:column;display:flex}@media (min-width:900px){.section--projects .container,.section--balanced{min-height:34rem}}.section--contact{background:radial-gradient(680px 280px at 50% 0%, var(--tech), transparent 70%), linear-gradient(180deg, #121a22 0%, #15222c 100%)}@supports (color:color-mix(in lab, red, red)){.section--contact{background:radial-gradient(680px 280px at 50% 0%, color-mix(in oklab, var(--tech) 14%, transparent), transparent 70%), linear-gradient(180deg, #121a22 0%, #15222c 100%)}}.section--contact{color:#d7e2e8;border-top:1px solid var(--tech)}@supports (color:color-mix(in lab, red, red)){.section--contact{border-top:1px solid color-mix(in oklab, var(--tech) 24%, transparent)}}.section--contact .section__label,.section--contact .section__index{color:var(--tech)}.section--contact .section__rail{background:linear-gradient(90deg, var(--tech), transparent)}@supports (color:color-mix(in lab, red, red)){.section--contact .section__rail{background:linear-gradient(90deg, color-mix(in oklab, var(--tech) 55%, transparent), transparent)}}.section--contact .section__head h2{color:#fff}.section--contact .section__head p{color:#9eb0bb}.section__eyebrow{align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.section__index{font-family:var(--font-mono);letter-spacing:.08em;color:var(--accent);font-size:.78rem;font-weight:600}.section__label{color:var(--tech);font-family:var(--font-body);letter-spacing:.12em;flex:none;margin:0;font-size:.88rem;font-weight:700}.section__rail{background:linear-gradient(90deg, var(--tech), transparent);flex:1;min-width:2rem;height:1px}@supports (color:color-mix(in lab, red, red)){.section__rail{background:linear-gradient(90deg, color-mix(in oklab, var(--tech) 35%, transparent), transparent)}}.section__head{max-width:40rem;margin-bottom:2rem}.section__head--center{text-align:center;margin-inline:auto}.section__head--center .section__eyebrow{justify-content:center}.section__head--center .section__rail{display:none}.section__head h2{font-family:var(--font-display);letter-spacing:.02em;margin:0 0 .75rem;font-size:clamp(1.7rem,3.4vw,2.4rem);line-height:1.22}.section__head p{color:var(--ink-soft);max-width:34rem;margin:0;font-size:1rem}.section__head--center p{margin-inline:auto}.section__top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem 1.5rem;margin-bottom:.5rem;display:flex}.section__top .section__head{margin-bottom:0}.section__link{font-family:var(--font-mono);letter-spacing:.08em;color:var(--tech);border-bottom:1px solid var(--tech);font-size:.82rem;font-weight:600}@supports (color:color-mix(in lab, red, red)){.section__link{border-bottom:1px solid color-mix(in oklab, var(--tech) 45%, transparent)}}.section__link{padding-bottom:.15rem;transition:color .2s,border-color .2s}.section__link:hover{color:var(--accent-deep);border-color:var(--accent)}.section__more{margin-top:1.5rem}.project-filters{border:1px solid var(--tech);background:#ffffffb3;background:lab(100% -.0000298023 .0000119209/.7);flex-wrap:nowrap;gap:.4rem;margin-bottom:1.5rem;padding:.35rem;display:flex}@supports (color:color-mix(in lab, red, red)){.project-filters{border:1px solid color-mix(in oklab, var(--tech) 14%, transparent)}}.project-filters{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto}.project-filters::-webkit-scrollbar{display:none}.project-filters__btn{color:var(--ink-soft);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:4px;flex:none;align-items:center;gap:.45rem;padding:.5rem .75rem;font-size:.84rem;font-weight:600;transition:background .2s,color .2s;display:inline-flex}.project-filters__btn em{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);font-size:.72rem;font-style:normal}.project-filters__btn:hover{color:var(--ink);background:var(--tech)}@supports (color:color-mix(in lab, red, red)){.project-filters__btn:hover{background:color-mix(in oklab, var(--tech) 8%, transparent)}}.project-filters__btn.is-active{background:var(--ink);color:#fff}.project-filters__btn.is-active em{color:var(--tech)}@supports (color:color-mix(in lab, red, red)){.project-filters__btn.is-active em{color:color-mix(in oklab, var(--tech) 80%, white)}}.project-list{border-top:1px solid var(--line);gap:0;margin:0;padding:0;list-style:none;display:grid}@media (min-width:900px){.project-list{border-top:0;grid-template-columns:1fr 1fr;column-gap:1.75rem}.project-list .project-item{border-top:1px solid var(--line)}}.project-item{border-bottom:1px solid var(--line);grid-template-columns:2.5rem 1fr;gap:.7rem;padding:1.1rem .25rem 1.1rem .55rem;transition:background .25s,padding-left .25s;animation:.5s both rise;display:grid;position:relative}.project-item:before{content:"";background:0 0;width:2px;transition:background .25s;position:absolute;top:1rem;bottom:1rem;left:0}.project-item:hover{background:var(--tech)}@supports (color:color-mix(in lab, red, red)){.project-item:hover{background:color-mix(in oklab, var(--tech) 4%, transparent)}}.project-item:hover{padding-left:.8rem}.project-item:hover:before{background:linear-gradient(180deg, var(--accent), var(--tech))}.project-item__index{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink);font-size:.8rem}@supports (color:color-mix(in lab, red, red)){.project-item__index{color:color-mix(in oklab, var(--ink) 22%, transparent)}}.project-item__index{padding-top:.15rem}.project-item:hover .project-item__index{color:var(--tech)}.project-item__meta{flex-wrap:wrap;align-items:center;gap:.55rem .85rem;margin-bottom:.35rem;display:flex}.project-item__type{color:var(--tech);font-family:var(--font-mono);letter-spacing:.08em;font-size:.72rem;font-weight:600}.project-item__year{color:var(--muted);font-family:var(--font-mono);font-size:.72rem}.project-item h3{font-family:var(--font-display);letter-spacing:.02em;margin:0 0 .35rem;font-size:clamp(1.05rem,2vw,1.25rem)}.project-item>.project-item__body>p{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:44rem;margin:0 0 .6rem;font-size:.9rem;line-height:1.6;display:-webkit-box;overflow:hidden}.project-item__stack{flex-wrap:wrap;gap:.3rem .75rem;margin:0;padding:0;list-style:none;display:flex}.project-item__stack li{font-family:var(--font-mono);letter-spacing:.04em;color:var(--muted);font-size:.7rem}.project-item__stack li:before{content:"";background:var(--accent);vertical-align:.1em;border-radius:1px;width:.3rem;height:.3rem;margin-right:.35rem;display:inline-block}.project-more{border:1px dashed var(--tech);width:100%;margin-top:1.25rem}@supports (color:color-mix(in lab, red, red)){.project-more{border:1px dashed color-mix(in oklab, var(--tech) 35%, transparent)}}.project-more{color:var(--tech);font:inherit;font-family:var(--font-mono);letter-spacing:.08em;cursor:pointer;background:#ffffff8c;background:lab(100% -.0000298023 .0000119209/.55);padding:.85rem 1rem;font-size:.82rem;font-weight:600;transition:background .2s,border-color .2s,color .2s}.project-more:hover{border-color:var(--tech);color:var(--ink);background:#fff}@media (min-width:768px){.project-item{grid-template-columns:2.75rem 1fr;gap:.85rem}}.stack-board{gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}@media (min-width:800px){.stack-board{grid-template-columns:repeat(3,1fr);gap:0}.stack-lane+.stack-lane{border-left:1px solid var(--line);margin-left:1.5rem;padding-left:1.5rem}}.stack-lane__head{border-bottom:1px solid var(--tech);gap:.3rem;margin-bottom:1rem;padding-bottom:.85rem;display:grid}@supports (color:color-mix(in lab, red, red)){.stack-lane__head{border-bottom:1px solid color-mix(in oklab, var(--tech) 22%, transparent)}}.stack-lane__head span{font-family:var(--font-body);letter-spacing:.1em;color:var(--tech);font-size:.8rem;font-weight:700}.stack-lane__head strong{font-family:var(--font-display);font-size:1.25rem;font-weight:700}.stack-lane ul{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.stack-lane li{color:var(--ink-soft);padding-left:.85rem;font-size:1.02rem;position:relative}.stack-lane li:before{content:"";background:var(--accent);width:.4rem;height:1px;position:absolute;top:.65em;left:0}.post-board{flex:1;align-content:center;gap:1.25rem;width:100%;min-width:0;display:grid}@media (min-width:900px){.post-board{grid-template-columns:1.15fr .85fr;align-items:stretch;gap:2rem}}.post-feature{background:linear-gradient(145deg, var(--tech), white 55%), white;align-content:start;gap:.85rem;padding:1.25rem 1.1rem;display:grid}@supports (color:color-mix(in lab, red, red)){.post-feature{background:linear-gradient(145deg, color-mix(in oklab, var(--tech) 8%, white), white 55%), white}}.post-feature{border:1px solid var(--tech)}@supports (color:color-mix(in lab, red, red)){.post-feature{border:1px solid color-mix(in oklab, var(--tech) 16%, transparent)}}.post-feature{min-width:0;transition:transform .25s,border-color .25s;position:relative;overflow:hidden}@media (min-width:640px){.post-feature{padding:1.5rem 1.35rem}}.post-feature:before{content:"";background:linear-gradient(180deg, var(--accent), var(--tech));width:3px;position:absolute;inset:0 auto 0 0}.post-feature:hover{border-color:var(--tech);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.post-feature:hover{border-color:color-mix(in oklab, var(--tech) 35%, transparent)}}.post-feature__meta{font-family:var(--font-mono);letter-spacing:.08em;color:var(--muted);flex-wrap:wrap;gap:.5rem .85rem;font-size:.74rem;display:flex}.post-feature__meta span{color:var(--accent);font-weight:700}.post-feature h3{font-family:var(--font-display);letter-spacing:.02em;word-break:break-word;margin:0;font-size:clamp(1.25rem,4.2vw,1.85rem);line-height:1.35}.post-feature p{color:var(--ink-soft);margin:0;font-size:.95rem;line-height:1.7}.post-feature__go{font-family:var(--font-mono);letter-spacing:.1em;color:var(--tech);margin-top:.5rem;font-size:.78rem;font-weight:600}.post-list{min-width:0;margin:0;padding:0;list-style:none}.post-list--compact{border-top:1px solid var(--line)}.post-row{border-bottom:1px solid var(--line);gap:.45rem;min-width:0;padding:1.1rem 0;transition:background .2s;display:grid}.post-row--compact{grid-template-columns:2.25rem minmax(0,1fr);align-items:start;column-gap:.65rem}.post-row__index{font-family:var(--font-mono);color:var(--ink);font-size:.78rem}@supports (color:color-mix(in lab, red, red)){.post-row__index{color:color-mix(in oklab, var(--ink) 24%, transparent)}}.post-row__index{padding-top:.15rem;line-height:1.4}.post-row__topline{color:var(--muted);font-size:.78rem;font-family:var(--font-mono);flex-wrap:wrap;align-items:center;gap:.35rem .45rem;margin-bottom:.2rem;display:flex}.post-row__content{min-width:0}.post-row time,.post-row__meta{color:var(--muted);font-size:inherit;font-family:inherit}.post-row h3{font-family:var(--font-display);word-break:break-word;margin:0 0 .3rem;font-size:clamp(1.05rem,3.4vw,1.18rem);line-height:1.4}.post-row p{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.9rem;line-height:1.6;display:-webkit-box;overflow:hidden}.post-row:hover h3{color:var(--accent-deep)}.post-list--compact .post-row:hover .post-row__index{color:var(--tech)}@media (min-width:768px){.post-row:not(.post-row--compact){grid-template-columns:1fr}.post-row--compact{grid-template-columns:2.5rem minmax(0,1fr);column-gap:.85rem}.post-row h3{font-size:1.15rem}}.about-board__grid{flex:1;align-content:center;gap:2rem;display:grid}@media (min-width:880px){.about-board__grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:3rem}}.about-board__credo{justify-items:start;gap:1rem;display:grid}.about-board__logo{object-fit:cover;width:5rem;height:5rem;box-shadow:0 0 0 1px var(--ink), 0 10px 28px #1018201f;border-radius:50%}@supports (color:color-mix(in lab, red, red)){.about-board__logo{box-shadow:0 0 0 1px color-mix(in oklab, var(--ink) 8%, transparent), 0 10px 28px #1018201f}}.about-board__credo blockquote{font-family:var(--font-display);letter-spacing:.04em;color:var(--ink);margin:0;font-size:clamp(1.55rem,3vw,2.1rem);line-height:1.35}.about-board__credo>p{color:var(--ink-soft);max-width:36rem;margin:0;font-size:1.02rem;line-height:1.75}.about-board__principles{border-top:1px solid var(--line);gap:0;margin:0;padding:0;list-style:none;display:grid}.about-board__principles li{border-bottom:1px solid var(--line);grid-template-columns:2.5rem 1fr;gap:.85rem;padding:1.15rem 0;display:grid}.about-board__principles span{font-family:var(--font-mono);letter-spacing:.08em;color:var(--tech);padding-top:.2rem;font-size:.78rem}.about-board__principles strong{font-family:var(--font-display);margin-bottom:.3rem;font-size:1.2rem;display:block}.about-board__principles p{color:var(--ink-soft);margin:0;font-size:.95rem}.qr-grid{gap:1.25rem;width:min(640px,100%);margin:0 auto;padding:0;list-style:none;display:grid}@media (min-width:560px){.qr-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}.qr-card{list-style:none}.qr-card__panel{border:1px solid var(--tech);background:#ffffff0f;background:lab(100% -.0000298023 .0000119209/.06);justify-items:center;gap:.85rem;padding:1.15rem 1rem 1.25rem;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.qr-card__panel{border:1px solid color-mix(in oklab, var(--tech) 28%, transparent)}}.qr-card__corner{border-color:var(--accent);border-style:solid;width:.85rem;height:.85rem;position:absolute}.qr-card__corner--tl{border-width:2px 0 0 2px;top:-1px;left:-1px}.qr-card__corner--tr{border-width:2px 2px 0 0;top:-1px;right:-1px}.qr-card__corner--bl{border-width:0 0 2px 2px;bottom:-1px;left:-1px}.qr-card__corner--br{border-width:0 2px 2px 0;bottom:-1px;right:-1px}.qr-card__frame{aspect-ratio:1;background:#fff;width:min(100%,200px);padding:.55rem}.qr-card__img{object-fit:contain;width:100%;height:100%;display:block}.qr-card__caption{text-align:center;gap:.2rem;display:grid}.qr-card__caption strong{font-family:var(--font-display);color:#fff;font-size:1.15rem}.qr-card__caption span{color:#93a7b3;font-size:.85rem;font-family:var(--font-mono);letter-spacing:.04em}.prose .qr-card__panel{border-color:var(--line);background:#fff}.prose .qr-card__caption strong{color:var(--ink)}.prose .qr-card__caption span{color:var(--muted)}.page-hero{padding:2.5rem 0 1.25rem}@media (min-width:768px){.page-hero{padding:3.5rem 0 1.5rem}}.page-hero h1{font-family:var(--font-display);letter-spacing:.04em;margin:0 0 .75rem;font-size:clamp(2rem,5vw,3.2rem);line-height:1.15}.page-hero p{max-width:40rem;color:var(--ink-soft);margin:0}.prose{max-width:42rem;color:var(--ink-soft);margin:0 auto 3.5rem;font-size:1.02rem}.prose h2,.prose h3{color:var(--ink);font-family:var(--font-display);margin:2rem 0 .75rem;line-height:1.3}.prose p,.prose ul,.prose ol{margin:0 0 1.1rem}.prose a{color:var(--accent-deep);text-underline-offset:.15em;text-decoration:underline}.prose code{background:var(--paper-2);border-radius:6px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.prose .qr-grid{margin:1.25rem 0 1.75rem}.post-meta{color:var(--muted);flex-wrap:wrap;gap:.75rem 1.25rem;margin:1rem 0 0;font-size:.9rem;display:flex}.tags{flex-wrap:wrap;gap:.4rem;display:flex}.tags span{color:var(--accent-deep);background:var(--accent-soft);border-radius:6px;padding:.2rem .55rem;font-size:.8rem}.site-footer{border-top:1px solid var(--line);background:linear-gradient(180deg, var(--tech), #101820);margin-top:auto;padding:2.5rem 0 2rem}@supports (color:color-mix(in lab, red, red)){.site-footer{background:linear-gradient(180deg, color-mix(in oklab, var(--tech) 12%, #101820), #101820)}}.site-footer{color:#d5dde3}.site-footer a{color:#d5e0d7}.site-footer a:hover{color:#fff}.site-footer__inner{gap:1.75rem;width:min(1160px,100% - 1.5rem);margin-inline:auto;display:grid}@media (min-width:768px){.site-footer__inner{width:min(1160px,100% - 2.75rem)}}.site-footer .brand__name{color:#fff;margin:0}.site-footer__tagline{color:#8fa0ab;max-width:28rem;margin:.5rem 0 0;font-size:.92rem}.site-footer__cols{gap:1.25rem;display:grid}@media (min-width:700px){.site-footer__cols{grid-template-columns:repeat(3,1fr)}}.site-footer__cols h3{color:#fff;margin:0 0 .7rem;font-size:.95rem}.site-footer__cols ul{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.site-footer__cols a{color:#8fa0ab;font-size:.9rem}.site-footer__copy{color:#72818c;border-top:1px solid #ffffff1a;flex-wrap:wrap;gap:.5rem 1.25rem;padding-top:1rem;font-size:.85rem;display:flex}.site-footer__copy p{margin:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
