@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@500;700&family=Space+Grotesk:wght@500;600;700&display=swap";:root{color-scheme:light;--bg: #f7f9f7;--paper: #fbfcf8;--paper-soft: #eef4f2;--ink: #101310;--muted: #5d665f;--line: #d8ded8;--line-strong: #a9b4aa;--accent: #b6e214;--accent-dark: #5f7d00;--secondary: #d9e8f4;--footer: #07151b;--footer-soft: #0d222a;--footer-line: #29404a;--rail-muted: #7a837b;--focus-ring: rgba(182, 226, 20, .75);--grid-line: rgba(16, 19, 16, .035);--accent-shadow: rgba(95, 125, 0, .18);--accent-soft: rgba(182, 226, 20, .45);--accent-fill: #e5f6a5;--code-bg: #081419;--code-line: #203038;--code-ink: #dbe8e5;--chart-blue: #6d9ed0;--success: #248253;--booking-wash: #e9f1df;--booking-glow-green: rgba(49, 114, 84, .18);--booking-glow-blue: rgba(114, 157, 211, .3);--labre-paper-top: #f7fbff;--labre-paper-bottom: #edf5f7;--status-released-bg: rgba(182, 226, 20, .34);--status-released-border: rgba(95, 125, 0, .22);--status-released-ink: #375200;--status-prerelease-bg: rgba(114, 157, 211, .22);--status-prerelease-border: rgba(109, 158, 208, .34);--status-prerelease-ink: #244f7a;--status-private-bg: rgba(8, 20, 25, .08);--status-private-border: rgba(8, 20, 25, .18);--status-private-ink: #596260;--secondary-line: #bfd2df;--contact-paper-top: #f8fbff;--contact-paper-bottom: #edf4f7;--contact-line: #ccd8df;--contact-shadow: rgba(20, 42, 56, .12);--input-line: #b9c6ca;--arch-bg: #09161b;--arch-line: #39535e;--arch-ink: #f5fbf8;--arch-muted: #98aeb7;--footer-ink: #edf6f3;--footer-muted: #b6c6c4;--footer-bottom: #9fb1b1;--terminal-bg: #061016;--terminal-line: #13262f;--terminal-ink: #d5e3dd;--shadow: 0 22px 60px rgba(16, 19, 16, .12);--font-display: "Space Grotesk", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-sans: var(--font-body);--font-mono: "JetBrains Mono", "SFMono-Regular", ui-monospace, monospace;--max: 1180px;--gutter: 32px;--radius: 8px;font-family:var(--font-body);background:var(--bg);color:var(--ink);line-height:1.5;font-weight:400}html{overflow-x:clip}*{box-sizing:border-box}body{margin:0;min-width:320px;overflow-x:clip;background:linear-gradient(90deg,var(--grid-line) 1px,transparent 1px) 0 0 / 94px 94px,var(--bg)}body,button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,input,select,textarea{border:0}button{cursor:pointer}img,svg{display:block}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.section-shell{max-width:var(--max);margin:0 auto;padding:28px var(--gutter) 66px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:42px;font-size:.87rem;margin-bottom:56px}.brand{flex:0 0 auto;font-weight:700;font-size:1rem;white-space:nowrap}.nav-links{display:flex;align-items:center;gap:26px;color:var(--ink)}.nav-links a{position:relative;padding-block:6px;white-space:nowrap}.nav-links a:after,.text-links a:after,.footer-bottom a:after{background:var(--accent);bottom:0;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:right;transition:transform .18s ease;width:100%}.nav-links a:hover:after,.nav-links a.active:after,.text-links a:hover:after,.footer-bottom a:hover:after{transform:scaleX(1);transform-origin:left}.hero{display:flex;flex-direction:column;background:var(--paper);box-shadow:0 0 0 1px var(--line)}.hero-grid{display:grid;grid-template-columns:48px minmax(0,1.08fr) minmax(300px,.8fr);gap:28px;align-items:start}.rail{border-right:1px solid var(--line);color:var(--rail-muted);display:grid;font-family:var(--font-mono);font-size:.82rem;gap:28px;justify-items:start;min-height:290px;padding-right:16px;position:relative}.rail:after,.row-marker:after{background:var(--accent);content:"";position:absolute}.rail:after{bottom:0;height:42px;right:-1px;width:2px}.hero-copy{max-width:720px;min-width:0}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--font-display);font-weight:700;line-height:.98;min-width:0;overflow-wrap:anywhere}h1{font-size:clamp(3.15rem,4.55vw,4.95rem);max-width:880px}h2{font-size:clamp(2.4rem,5vw,4.7rem)}h3{font-family:var(--font-display);font-size:1.35rem;line-height:1.2;min-width:0;overflow-wrap:anywhere}.slash{color:var(--accent-dark);display:inline-block;font-weight:700;margin-left:.12em}.hero-copy p,.section-heading p,.services-copy>p,.about-grid>p,.case-hero p{color:var(--muted);font-size:1.05rem;max-width:560px;margin-top:22px}.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.button{align-items:center;border-radius:var(--radius);display:inline-flex;font-size:.9rem;font-weight:700;gap:10px;justify-content:center;min-height:50px;padding:0 20px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;white-space:nowrap}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--accent);box-shadow:0 10px 20px var(--accent-shadow);color:var(--ink)}.button.secondary{background:var(--paper);border:1px solid var(--line-strong);color:var(--ink)}.button.full{width:100%}.hero-artifact{min-height:360px;position:relative}.code-artifact,.code-mini{background:var(--code-bg);border:1px solid var(--code-line);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--code-ink);font-family:var(--font-mono);font-size:.84rem;line-height:1.75;overflow:hidden;padding:34px 28px;white-space:pre-wrap;overflow-wrap:anywhere}.code-artifact{min-height:270px}.code-artifact:before{color:var(--accent);content:"SchedulerCanvas.swift";display:block;font-size:.76rem;margin-bottom:18px}.scheduler-artifact{background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius);bottom:-30px;box-shadow:var(--shadow);max-width:250px;padding:18px 18px 20px;position:absolute;right:0;transform:rotate(-2deg);width:52%}.status-pill{background:var(--accent-soft);border-radius:999px;float:right;font-size:.7rem;font-weight:700;padding:3px 8px}.scheduler-artifact strong,.scheduler-artifact p{display:block}.scheduler-artifact p{font-size:1.35rem;font-weight:700;margin-top:8px}.scheduler-row,.scheduler-total,.ledger-row{border-top:1px solid var(--line);display:flex;font-size:.72rem;gap:8px;justify-content:space-between;margin-top:12px;padding-top:10px}.scheduler-total{font-size:.82rem;font-weight:700}.next-up{align-items:end;display:grid;grid-template-columns:1fr auto;gap:4px 18px;margin-top:clamp(48px,7vw,88px)}.next-up span{color:var(--muted)}.next-up strong{font-size:.95rem}.round-link{align-items:center;border:1px solid var(--line-strong);border-radius:50%;display:inline-flex;grid-row:1 / span 2;height:42px;justify-content:center;width:42px}.section-lead{align-items:end;border-top:1px solid var(--line-strong);display:flex;justify-content:space-between;margin-top:40px;padding-top:26px}.section-lead h2{font-size:clamp(2rem,4vw,3.35rem)}.section-lead a,.section-index,.back-link{color:var(--muted);font-family:var(--font-mono);font-size:.82rem}.work-section,.experience-section,.services-section,.case-shell,.not-found{background:var(--paper);box-shadow:0 0 0 1px var(--line);margin-top:28px}.section-heading{margin-bottom:52px}.section-heading h2{margin-top:0}.project-list{display:grid;gap:0}.project-row{border-top:1px solid var(--line);display:grid;grid-template-columns:48px minmax(230px,320px) minmax(0,1fr);gap:28px;padding:36px 0;position:relative}.project-row:last-child{border-bottom:1px solid var(--line)}.row-marker{color:var(--muted);font-family:var(--font-mono);font-size:.9rem;padding-top:8px;position:relative}.row-marker:after{height:calc(100% - 42px);left:18px;top:42px;width:2px}.artifact{align-self:start;aspect-ratio:1.45 / 1;background:var(--paper-soft);border:2px solid var(--ink);border-radius:var(--radius);min-width:0;overflow:hidden;position:relative;width:100%}.artifact.large{aspect-ratio:1.35 / 1;min-height:310px}.ledger-artifact,.booking-artifact,.labre-artifact{height:100%;padding:18px}.artifact-topline{align-items:center;color:var(--muted);display:flex;font-size:.68rem;gap:8px;justify-content:space-between}.dot,.availability span{background:var(--accent);border-radius:50%;display:inline-block;height:9px;width:9px}.ledger-artifact strong{display:block;font-size:1.35rem;margin-top:20px}.ledger-artifact small{color:var(--accent-dark);font-weight:700}.sparkline{border-bottom:2px solid var(--chart-blue);height:44px;margin:4px 0 14px auto;position:relative;width:42%}.sparkline:before{border-top:2px solid var(--chart-blue);content:"";height:20px;left:0;position:absolute;top:18px;transform:skewY(-18deg);width:100%}.schedule-grid{border-top:1px solid var(--line);display:grid;gap:8px;margin:18px 0 10px;padding-top:14px}.schedule-row{align-items:center;display:grid;gap:10px;grid-template-columns:44px 1fr}.schedule-row span{color:var(--muted);font-family:var(--font-mono);font-size:.68rem}.schedule-row em{background:var(--paper);border:1px solid var(--line);border-radius:5px;display:block;height:24px}.schedule-row em.filled{background:linear-gradient(90deg,var(--accent),var(--accent-fill))}.schedule-row em.half{background:linear-gradient(90deg,var(--secondary) 0 48%,transparent 48% 52%,var(--secondary) 52% 100%),var(--paper)}.ledger-row em,.scheduler-row em{color:var(--success);font-style:normal;font-weight:700}.booking-artifact{background:linear-gradient(30deg,var(--booking-glow-green),transparent 45%),linear-gradient(120deg,var(--booking-glow-blue),transparent 42%),var(--booking-wash)}.capacity-bars{display:grid;gap:12px;margin:24px 0}.capacity-bars span{background:linear-gradient(90deg,var(--ink),var(--accent-dark));border-radius:20px;display:block;height:14px}.capability-grid{display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-top:16px}.capability-grid span{background:var(--paper);border:1px solid var(--line);border-radius:6px;font-size:.66rem;padding:8px}.labre-artifact{background:linear-gradient(180deg,var(--labre-paper-top),var(--labre-paper-bottom))}.export-chip{background:var(--code-bg);border-radius:6px;color:var(--code-ink);font-family:var(--font-mono);font-size:.65rem;margin-top:16px;overflow:hidden;padding:10px;text-overflow:ellipsis;white-space:nowrap}.pattern-video-artifact{background:var(--ink);border-color:var(--ink)}.pattern-artifact{align-items:center;background:var(--ink);display:flex;height:100%;justify-content:center;overflow:hidden;padding:0}.pattern-demo-video{background:var(--ink);display:block;height:100%;object-position:center;object-fit:contain;width:100%}.project-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px 12px;min-width:0}.project-status-list{align-items:center;display:flex;flex-wrap:wrap;gap:8px;min-width:0}.project-summary h3{font-size:clamp(1.9rem,3vw,2.55rem);min-width:0;overflow-wrap:anywhere}.project-status{align-items:center;border:1px solid var(--line-strong);border-radius:999px;display:inline-flex;flex:0 1 auto;font-family:var(--font-mono);font-size:.68rem;font-weight:700;gap:7px;line-height:1;max-width:100%;overflow-wrap:anywhere;padding:7px 10px}.project-status:before{background:currentColor;border-radius:50%;content:"";flex:0 0 auto;height:7px;width:7px}.project-status-released{background:var(--status-released-bg);border-color:var(--status-released-border);color:var(--status-released-ink)}.project-status-prerelease{background:var(--status-prerelease-bg);border-color:var(--status-prerelease-border);color:var(--status-prerelease-ink)}.project-status-private{background:var(--status-private-bg);border-color:var(--status-private-border);color:var(--status-private-ink)}.project-summary,.services-copy,.case-hero>div{min-width:0}.project-summary>p{color:var(--muted);margin-top:10px}.meta-grid{display:grid;gap:11px;margin:24px 0 0}dt{color:var(--muted);font-family:var(--font-mono);font-size:.72rem;margin-bottom:3px}dd{margin:0}.meta-grid dd{font-size:.88rem}.text-links{display:flex;flex-wrap:wrap;gap:24px;margin-top:22px}.text-links a,.back-link{align-items:center;display:inline-flex;font-size:.85rem;font-weight:700;gap:6px;position:relative;white-space:nowrap}.text-links.large a{font-size:.95rem}.wide-link{align-items:center;background:var(--secondary);border:1px solid var(--secondary-line);border-radius:var(--radius);display:flex;font-weight:700;gap:10px;justify-content:center;margin-top:34px;min-height:64px;white-space:nowrap}.experience-list{border-top:1px solid var(--line)}.experience-item{border-bottom:1px solid var(--line);display:grid;gap:36px;grid-template-columns:minmax(230px,.62fr) minmax(0,1fr);padding:34px 0}.experience-meta{min-width:0}.experience-meta h3{font-size:clamp(1.45rem,2.2vw,2rem);margin-top:10px}.experience-meta span{color:var(--muted);display:block;margin-top:8px}.experience-item ul{display:grid;gap:11px;list-style:none;margin:0;padding:0}.experience-item li{align-items:flex-start;color:var(--muted);display:flex;gap:10px}.experience-item svg{color:var(--accent-dark);flex:0 0 auto;margin-top:4px}.about-section{padding-block:110px 82px}.about-grid{border-top:1px solid var(--line);display:grid;gap:42px;grid-template-columns:minmax(0,.8fr) minmax(280px,1fr);margin-top:42px;padding-top:38px}.about-grid>p{color:var(--ink);font-size:1.28rem;line-height:1.45;margin-top:0}.principles{display:grid;gap:14px}.principle{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);display:flex;gap:12px;padding:18px}.principle svg,.check-list svg,.fit-column svg{color:var(--accent-dark);flex:0 0 auto}.role-fit-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.fit-column{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);min-width:0;padding:18px}.fit-column h3{font-size:1rem;margin-bottom:12px}.fit-column ul{display:grid;gap:10px;list-style:none;margin:0;padding:0}.fit-column li{align-items:flex-start;color:var(--muted);display:flex;font-size:.9rem;gap:9px}.fit-column svg{margin-top:2px}.services-grid{display:grid;gap:50px;grid-template-columns:minmax(0,1fr) minmax(340px,430px);align-items:start}.services-copy h2{margin-top:0}.service-list{border-top:1px solid var(--line);margin-top:56px}.service-item{border-bottom:1px solid var(--line);display:grid;gap:22px;grid-template-columns:54px 1fr;padding:28px 0}.service-icon{align-items:center;border:2px solid var(--accent);border-radius:50%;color:var(--ink);display:flex;height:44px;justify-content:center;width:44px}.service-item h3{font-size:1.05rem}.service-item p{color:var(--muted);margin-top:7px}.contact-card{background:linear-gradient(180deg,var(--contact-paper-top),var(--contact-paper-bottom));border:1px solid var(--contact-line);border-radius:var(--radius);box-shadow:0 18px 45px var(--contact-shadow);padding:28px}.contact-card h3{margin-bottom:22px}.form-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr}label{color:var(--muted);display:grid;font-size:.78rem;font-weight:700;gap:8px;margin-bottom:16px}input,select,textarea{background:var(--paper);border:1px solid var(--input-line);border-radius:5px;color:var(--ink);font-size:.9rem;min-height:44px;padding:11px 12px;width:100%}textarea{resize:vertical}.counter,.reply-note{color:var(--muted);font-size:.78rem;text-align:right}.reply-note{margin-top:14px;text-align:center}.case-page{background:var(--bg)}.back-link{margin-bottom:36px}.case-hero{display:grid;gap:44px;grid-template-columns:minmax(0,.8fr) minmax(320px,.7fr);align-items:center;border-bottom:1px solid var(--line);padding-bottom:56px}.case-hero h1{font-size:clamp(3rem,6vw,5.4rem);overflow-wrap:anywhere}.case-meta{display:flex;gap:52px;margin:34px 0 0}.case-content{display:grid;gap:0;margin-top:24px;max-width:830px}.case-section{border-top:1px solid var(--line);display:block;padding:24px 0;position:relative}.case-section h2{font-size:1.4rem;overflow-wrap:anywhere}.case-section p,.case-section li{color:var(--muted);overflow-wrap:anywhere}.case-section ul{margin:10px 0 0;padding-left:20px}.check-list{display:grid;gap:8px;list-style:none;padding-left:0!important}.check-list li{align-items:center;display:flex;gap:9px}.architecture-card{background:var(--arch-bg);border-radius:var(--radius);display:grid;gap:18px;grid-template-columns:repeat(5,1fr);margin:20px 0 20px 76px;padding:24px}.arch-node{border:1px solid var(--arch-line);border-radius:6px;color:var(--arch-ink);display:grid;gap:4px;min-height:66px;padding:12px;position:relative}.arch-node:not(:last-child):after{background:var(--accent);content:"";height:2px;position:absolute;right:-18px;top:50%;width:18px}.arch-node small{color:var(--arch-muted)}.stack-strip{align-items:center;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:9px;margin-top:28px;padding-top:24px}.stack-strip>span:first-child{color:var(--muted);font-size:.8rem;margin-right:8px}.tech-chip{background:var(--paper-soft);border:1px solid var(--line);border-radius:5px;font-family:var(--font-mono);font-size:.72rem;padding:7px 10px}.footer{background:var(--footer);color:var(--footer-ink);margin-top:28px}.footer .site-header{margin-bottom:72px}.footer .nav-links,.footer .brand{color:var(--footer-ink)}.footer-inner{max-width:var(--max);margin:0 auto;padding:42px var(--gutter) 54px}.footer-main{border-bottom:1px solid var(--footer-line);display:grid;gap:56px;grid-template-columns:minmax(0,.9fr) minmax(270px,.8fr);padding-bottom:58px}.footer-main h2{font-size:clamp(2rem,4vw,3.4rem);max-width:620px}.footer-main p{color:var(--footer-muted);margin-top:28px}.footer-main p a{color:var(--accent)}.availability{align-items:center;display:flex;gap:10px}.link-hub{display:grid;gap:28px}.footer-link{align-items:center;display:inline-flex;font-weight:700;gap:14px;min-height:44px;white-space:nowrap}.footer-link svg{color:var(--footer-ink);flex:0 0 auto}.footer-link svg:last-child{color:var(--accent);margin-left:auto}.terminal-card{background:var(--terminal-bg);border:1px solid var(--terminal-line);border-radius:var(--radius);color:var(--terminal-ink);font-family:var(--font-mono);grid-column:2;padding:26px}.terminal-card span,.terminal-card code{color:var(--accent)}.terminal-card code{color:var(--terminal-ink);line-height:1.8}.terminal-card span{font-weight:700}.footer-bottom{align-items:center;color:var(--footer-bottom);display:flex;flex-wrap:wrap;font-size:.8rem;gap:28px;justify-content:space-between;padding-top:34px}.footer-bottom nav{display:flex;gap:24px}.footer-bottom a{position:relative;white-space:nowrap}.not-found{min-height:100vh}.not-found h1{margin:22px 0 28px;max-width:760px}.reveal{animation:reveal-up .52s ease both}@keyframes reveal-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}@media(max-width:900px){:root{--gutter: 22px}.site-header{align-items:flex-start;margin-bottom:50px}.nav-links{flex-wrap:wrap;gap:12px 18px;justify-content:flex-end}.hero-grid,.project-row,.experience-item,.services-grid,.about-grid,.role-fit-grid,.case-hero,.footer-main{grid-template-columns:1fr}.rail{display:none}.hero-artifact{min-height:365px}.project-row{padding-left:36px}.project-row>.row-marker{left:0;position:absolute;top:34px}.artifact{max-width:420px}.services-grid,.case-hero{gap:34px}.terminal-card{grid-column:auto}.architecture-card{grid-template-columns:1fr;margin-left:0}.arch-node:not(:last-child):after{bottom:-18px;height:18px;left:50%;right:auto;top:auto;width:2px}}@media(max-width:620px){.section-shell{padding-bottom:58px}.site-header{align-items:flex-start;flex-direction:column;gap:16px}.nav-links{font-size:.78rem;justify-content:flex-start}h1{font-size:2.65rem;line-height:1.02}h2{font-size:2.35rem}.hero-artifact{display:none}.artifact,.artifact.large{max-width:100%}.artifact.large{aspect-ratio:1.18 / 1;min-height:0}.section-lead{align-items:start;gap:16px;flex-direction:column}.form-grid{grid-template-columns:1fr}.footer-bottom{align-items:flex-start;flex-direction:column}}
