@font-face{font-family:Fraunces;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/fraunces-normal-latin.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:Fraunces;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/fraunces-normal-latin-ext.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:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-normal-latin.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;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-normal-latin-ext.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}:root{--bg:#f4f1ea;--bg-hero:#efeadf;--surface:#fffdf9;--ink:#16181d;--muted:#565a63;--line:#e2dccf;--chip:#f1ede4;--focus:#c2410c;--gold:#8a6116;--gold-soft:#f4e9cf;--gold-on:#fff;--gold-glow:#d6a84842;--teal:#0f676c;--teal-soft:#dcefec;--teal-on:#fff;--teal-glow:#1f8c8c38;--open:#1e7a46;--closed:#b45309;--waiting:#8a6116;--radius-card:24px;--shadow:0 1px 2px #16181d0f, 0 18px 48px -18px #16181d38;--font-display:"Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-text:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0e1013;--bg-hero:#12151a;--surface:#161a20;--ink:#eceae4;--muted:#a6a9b0;--line:#2a3038;--chip:#1f242b;--focus:#fb923c;--gold:#e3bd6a;--gold-soft:#e3bd6a24;--gold-on:#1b1407;--gold-glow:#e3bd6a2e;--teal:#6fd0c9;--teal-soft:#6fd0c921;--teal-on:#06201f;--teal-glow:#6fd0c929;--open:#5fd394;--closed:#f5a453;--waiting:#e3bd6a;--shadow:0 1px 2px #0006, 0 24px 60px -24px #000000b3}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-text);overflow-wrap:break-word;-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.65}h1,h2,h3,h4{text-wrap:balance;margin:0;line-height:1.15}p{margin:0}a{color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}.container{width:100%;max-width:1160px;padding-left:max(20px, env(safe-area-inset-left,0px));padding-right:max(20px, env(safe-area-inset-right,0px));margin:0 auto}.skip-link{z-index:10;background:var(--ink);color:var(--bg);border-radius:999px;padding:10px 16px;font-weight:600;text-decoration:none;position:absolute;top:-64px;left:16px}.skip-link:focus{top:16px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-header{background:radial-gradient(48rem 26rem at 88% -10%, var(--gold-glow), transparent 70%), radial-gradient(40rem 24rem at -6% 110%, var(--teal-glow), transparent 70%), var(--bg-hero);border-bottom:1px solid var(--line);position:relative;overflow:hidden}.header-bar{justify-content:space-between;align-items:center;gap:16px;padding-top:22px;padding-bottom:22px;display:flex}.wordmark{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.3rem;font-weight:650}.wordmark span{color:var(--muted);font-weight:450}.header-link{color:var(--muted);font-size:.95rem;font-weight:550;text-decoration:none}.header-link:hover{color:var(--ink)}.hero{padding-top:clamp(40px,7vw,88px);padding-bottom:clamp(48px,7vw,92px)}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:16px;font-size:.78rem;font-weight:650}.hero h1{max-width:17ch;font-family:var(--font-display);letter-spacing:-.025em;font-variation-settings:"opsz" 144;font-size:clamp(2.4rem,6vw,4.4rem);font-weight:600}.hero h1 em{color:var(--gold);font-style:italic;font-weight:500}.lede{max-width:58ch;color:var(--muted);margin-top:22px;font-size:clamp(1.05rem,1.6vw,1.2rem)}.hero-status{flex-wrap:wrap;gap:12px;margin:34px 0 0;padding:0;list-style:none;display:flex}.hero-status li{border:1px solid var(--line);background:var(--surface);border-radius:999px;align-items:center;gap:10px;padding:9px 16px;font-size:.92rem;display:inline-flex;box-shadow:0 1px 2px #0000000d}.hero-status-name{font-weight:650}.hero-status-label{color:var(--muted)}.badge-dot{background:var(--waiting);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.status-open .badge-dot,.badge-open .badge-dot{background:var(--open);box-shadow:0 0 0 4px color-mix(in srgb, var(--open) 22%, transparent)}.status-closed .badge-dot,.badge-closed .badge-dot{background:var(--closed)}main{padding-top:clamp(48px,7vw,84px);padding-bottom:clamp(56px,8vw,96px)}main:focus{outline:none}.section-title{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:28px;font-size:.78rem;font-weight:650}.project-list{gap:clamp(28px,4vw,44px);margin:0;padding:0;list-style:none;display:grid}.project-card{--accent:var(--teal);--accent-soft:var(--teal-soft);--accent-on:var(--teal-on);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:minmax(0,1fr);display:grid;position:relative;overflow:hidden}.project-card.accent-gold{--accent:var(--gold);--accent-soft:var(--gold-soft);--accent-on:var(--gold-on)}.project-card:before{content:"";z-index:1;background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 30%, transparent));height:4px;position:absolute;inset:0 0 auto}.project-media{aspect-ratio:16/10;background:var(--chip);min-width:0;max-width:100%;position:relative;overflow:hidden}.project-image{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.7,.2,1);display:block}.project-image.focus-left{object-position:12% 50%}.project-image.focus-right{object-position:88% 50%}.project-card:hover .project-image{transform:scale(1.035)}.project-image-fallback{font-family:var(--font-display);color:var(--accent);background:var(--accent-soft);place-items:center;font-size:4rem;display:grid}.project-body{flex-direction:column;gap:16px;min-width:0;padding:clamp(24px,3.4vw,44px);display:flex}.project-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.project-heading h3{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.7rem,2.8vw,2.2rem);font-weight:600}.badge{border:1px solid var(--line);background:var(--bg);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:5px 12px;font-size:.82rem;font-weight:650;display:inline-flex}.tagline{font-size:1.12rem;font-weight:560;line-height:1.45}.highlight-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.highlight-list li{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:5px 12px;font-size:.86rem;font-weight:600}.description{max-width:65ch;color:var(--muted)}.tech-heading{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:6px;font-size:.72rem;font-weight:700}.tech-list{flex-wrap:wrap;gap:8px;margin:-6px 0 0;padding:0;list-style:none;display:flex}.tech-list li{border:1px solid var(--line);background:var(--chip);border-radius:8px;padding:3px 10px;font-size:.84rem}.project-action{margin-top:8px}.button{background:var(--accent);color:var(--accent-on);border-radius:999px;align-items:center;gap:10px;padding:13px 24px;font-weight:650;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.button:hover{box-shadow:0 10px 24px -10px var(--accent);transform:translateY(-1px)}.button-arrow{transition:transform .16s}.button:hover .button-arrow{transform:translate(3px)}.action-note{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--line));background:var(--accent-soft);border-left-width:4px;border-radius:12px;margin-top:8px;padding:14px 18px;font-size:.95rem}.site-footer{border-top:1px solid var(--line);padding-top:32px;padding-bottom:max(40px, env(safe-area-inset-bottom,0px));color:var(--muted);font-size:.9rem}.site-footer p{max-width:70ch}@media (width>=900px){.project-card{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}.project-media{aspect-ratio:auto;min-height:380px}.project-media .project-image{position:absolute;inset:0}.project-list>li:nth-child(2n) .project-media{order:2}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-image,.button,.button-arrow{transition:none}.project-card:hover .project-image,.button:hover,.button:hover .button-arrow{transform:none}}
