:root{--ink-code: #3255a4;--ink-art: #ffb511;--paper: #f7f6f2;--paper-soft: #efede7;--paper-mute: #e6e3da;--ink: #1c2030;--ink-soft: #3a3f4f;--rule: #dcd9d1;--rule-strong: #c3bfb4}@media (prefers-color-scheme: dark){:root{--ink-code: #9bb3f2;--ink-art: #ffc84a;--paper: #15171c;--paper-soft: #1c1f26;--paper-mute: #252933;--ink: #ebedf3;--ink-soft: #c3c7d2;--rule: #2a2d35;--rule-strong: #3d414c}}:root{--color-background: var(--paper);--color-background-soft: var(--paper-soft);--color-background-mute: var(--paper-mute);--color-border: var(--rule);--color-border-hover: var(--rule-strong);--color-heading: var(--ink);--color-text: var(--ink-soft);--color-code: var(--ink-code);--color-art: var(--ink-art);--color-accent: var(--ink-code)}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{color:#1c2030;background:var(--color-art)}#app{max-width:1160px;margin:0 auto;padding:0 2rem}a{color:var(--color-accent);text-underline-offset:.25em}a:hover{text-decoration-thickness:2px}a:focus-visible,[tabindex="-1"]:focus-visible{outline:2px solid var(--color-heading);outline-offset:5px}[id]{scroll-margin-top:2rem}h1,h2,h3{color:var(--color-heading);font-weight:600;line-height:1.45}h2{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:2rem}h3{font-size:1.2rem}p{overflow-wrap:anywhere}.site-header,.site-footer{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.75rem 0}.site-header{border-bottom:1px solid var(--color-border)}.brand{display:inline-flex;align-items:center;gap:.6rem;font-size:1.25rem;font-weight:650;color:var(--color-heading);text-decoration:none;letter-spacing:-.04em}nav{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.9rem}nav a{color:var(--color-text);text-decoration:none}.skip-link{position:absolute;top:.5rem;left:1rem;padding:.75rem;background:var(--color-background);transform:translateY(-200%);z-index:1}.skip-link:focus{transform:translateY(0)}.brand .brand-mark{width:1.5rem;height:1.5rem}.hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3rem;padding:6rem 0 5rem}.hero-mark{width:clamp(12rem,24vw,19rem);height:auto}h1{font-size:clamp(2.25rem,5.6vw,4.5rem);letter-spacing:-.035em;line-height:1.3}.hero-copy{margin-top:2rem;font-size:1.1rem;line-height:1.9}.location{margin-top:1rem;font-size:.9rem}.actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.9rem 1.25rem;border:1px solid var(--color-accent);border-radius:4px;text-decoration:none;font-weight:600}.button.primary{color:var(--color-background);background:var(--color-accent)}.button:hover{text-decoration:underline}.page-section{padding:4.5rem 0;border-top:1px solid var(--color-border)}.service-list{display:grid;gap:0}.service-list article{padding:1.75rem 0;border-bottom:1px solid var(--color-border)}.service-list article:first-child{padding-top:0}.service-list p,.process-list p,.about p{margin-top:.75rem}.process-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;padding-left:1.5rem}.process-list li{padding-left:.5rem}.process-list li::marker{color:var(--color-accent);font-weight:600}.about{display:grid;grid-template-columns:1fr 2fr;gap:2rem}.signature{font-size:.85rem;letter-spacing:.08em}.contact{padding:3rem;background:var(--color-background-soft);border:1px solid var(--color-border);border-radius:8px;margin-bottom:4.5rem}.contact p{margin-bottom:1.5rem;max-width:48rem}.contact .email{margin-top:2rem}.contact .contact-note{font-size:.9rem;margin-top:2rem;margin-bottom:0}.site-footer{border-top:1px solid var(--color-border);margin-top:3rem}.footer-links{display:flex;gap:1.5rem}@media (max-width: 640px){#app{padding:0 1.25rem}.site-header{align-items:flex-start;flex-direction:column;gap:1rem}nav{gap:.75rem 1rem}.hero{grid-template-columns:1fr;gap:2rem;padding:3rem 0 4rem}.hero-mark{order:-1;width:6rem}.page-section{padding:3rem 0}.process-list,.about{grid-template-columns:1fr}.contact{padding:2rem 1.25rem}}.brand-mark[data-v-75b8935b]{display:block}.code[data-v-75b8935b]{fill:var(--color-code)}.art[data-v-75b8935b]{fill:var(--color-art)}.paper[data-v-75b8935b]{fill:var(--color-background)}.selected-work[data-v-830a73d2]{grid-column:1 / -1;min-width:0;padding:4.5rem 0;border-top:1px solid var(--color-border)}h2[data-v-830a73d2],h3[data-v-830a73d2],h4[data-v-830a73d2]{color:var(--color-heading);line-height:1.5}h2[data-v-830a73d2]{margin-bottom:1.5rem;font-size:1.8rem}h3[data-v-830a73d2]{font-size:1.4rem}h4[data-v-830a73d2]{margin-bottom:.75rem;font-size:1.15rem}.work-card[data-v-830a73d2]{display:grid;gap:1.5rem;padding:1.5rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background-soft)}figure a[data-v-830a73d2]{display:block;padding:0}img[data-v-830a73d2]{display:block;width:100%;height:auto;border:1px solid var(--color-border)}figcaption[data-v-830a73d2]{margin-top:.75rem;font-size:.85rem}.work-card+.work-card[data-v-830a73d2]{margin-top:1.5rem}.card-preview[data-v-830a73d2]{width:100%;max-width:240px}.card-copy p[data-v-830a73d2],.detail-section p[data-v-830a73d2]{margin-top:1rem}.period[data-v-830a73d2]{margin-bottom:.5rem;font-size:.9rem}.card-copy .period[data-v-830a73d2]{margin-top:0}.technologies[data-v-830a73d2]{font-size:.9rem}.work-link[data-v-830a73d2]{color:var(--color-accent);display:inline-block;margin-top:1rem;text-decoration:underline;text-underline-offset:.2em}a[data-v-830a73d2]:focus-visible{outline:2px solid var(--color-heading);outline-offset:5px}.work-detail[data-v-830a73d2]{max-width:800px;margin:0 auto;scroll-margin-top:2rem;overflow-wrap:anywhere}.work-detail+.work-detail[data-v-830a73d2]{margin-top:4rem;padding-top:4rem;border-top:1px solid var(--color-border)}.detail-header .technologies[data-v-830a73d2]{margin-top:1rem}.detail-section[data-v-830a73d2]{margin-top:2.5rem}.sample-preview[data-v-830a73d2]{max-width:420px;margin-top:1rem}.sample-notice[data-v-830a73d2]{padding:1rem;border-left:3px solid var(--color-border-hover);background:var(--color-background-soft)}.sample-note[data-v-830a73d2]{font-size:.9rem}@media (hover: hover){.work-link[data-v-830a73d2]:hover{background-color:var(--color-background-mute)}}@media (min-width: 640px){.work-card[data-v-830a73d2]{grid-template-columns:200px minmax(0,1fr);gap:2rem}}
