.site-footer__main[data-astro-cid-sz7xmlte]{max-width:34rem}.site-footer__line[data-astro-cid-sz7xmlte]{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:1.5rem;line-height:1.2;letter-spacing:-.01em;margin-bottom:var(--space-sm)}.site-footer__yonder[data-astro-cid-sz7xmlte]{font-size:.92rem;color:var(--ink-muted)}.site-footer__meta[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}@media(max-width:768px){.site-footer__meta[data-astro-cid-sz7xmlte]{align-items:flex-start;text-align:left}}:root{--paper: #f4efe4;--paper-deep: #ebe3d2;--paper-bright: #fbf8f1;--ink: #221c16;--ink-muted: #5e5346;--ink-light: #857662;--rule: #d6c9b0;--rule-strong: #b9a888;--rust: #97522b;--rust-deep: #773e1e;--rust-pale: #cf9068;--rust-wash: #ecd3bf;--umber: #1d1712;--umber-text: #e9dfcb;--umber-muted: #b3a58c;--ochre: var(--rust);--ochre-deep: var(--rust-deep);--gold: var(--rust-pale);--gold-pale: var(--rust-wash);--color-bg: var(--paper);--color-surface: var(--paper-bright);--color-text: var(--ink);--color-text-muted: var(--ink-muted);--color-text-light: var(--ink-light);--color-border: var(--rule);--color-accent: var(--rust);--color-link: var(--rust);--color-link-hover: var(--rust-deep);--font-display: "Fraunces", "Iowan Old Style", Palatino, Georgia, serif;--font-body: "Newsreader", "Iowan Old Style", Palatino, Georgia, serif;--font-label: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-gothic: "Big Shoulders Display", "Arial Narrow", sans-serif;--font-sans: "Libre Franklin", "Franklin Gothic Medium", "Arial Narrow", sans-serif;--font-heading: var(--font-display);--font-mono: var(--font-label);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 5rem;--space-3xl: 8rem;--max-width: 1320px;--max-width-prose: 680px;--gutter: clamp(16px, 4vw, 56px);--grid-gap: clamp(18px, 2.2vw, 32px);--wear: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='w'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.35' numOctaves='3' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 5.75'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23w)'/%3E%3C/svg%3E");--transition: .2s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:18px;scroll-behavior:smooth;background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-optical-sizing:auto;color:var(--ink);background-color:var(--paper);line-height:1.6;overflow-x:clip}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.35;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .55 0 0 0 0 .47 0 0 0 0 .36 0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}img{max-width:100%;height:auto;display:block}a{color:var(--rust);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--rust) 40%,transparent);text-decoration-thickness:1px;text-underline-offset:.18em;transition:color var(--transition),text-decoration-color var(--transition)}a:hover{color:var(--rust-deep);text-decoration-color:currentColor}::selection{background:var(--rust-wash);color:var(--ink)}:focus-visible{outline:2px solid var(--rust);outline-offset:3px}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--gutter)}.prose{max-width:var(--max-width-prose);margin-left:auto;margin-right:auto}h1,h2,h3,h4{font-family:var(--font-display);font-optical-sizing:auto;font-weight:500;line-height:1.12;letter-spacing:-.015em;color:var(--ink)}h1{font-size:clamp(2.3rem,5.6vw,4.1rem);font-weight:900;font-variation-settings:"opsz" 144;line-height:.96;letter-spacing:-.02em}h2{font-size:clamp(1.6rem,3.2vw,2.2rem)}h3{font-size:1.3rem}h1 em,h2 em,h3 em{font-style:italic}h1 em{font-weight:300;letter-spacing:-.01em}p+p{margin-top:var(--space-md)}.label,.field-label{display:inline-block;font-family:var(--font-label);font-size:11px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-light)}.wood{filter:url(#ink)}.pin-rule{display:flex;align-items:center;gap:.6rem;margin-bottom:var(--space-md)}.pin-rule:before{content:"";width:15px;height:15px;flex:none;background:linear-gradient(var(--ink),var(--ink)) center / 1px 100% no-repeat,linear-gradient(var(--ink),var(--ink)) center / 100% 1px no-repeat;opacity:.7}.pin-rule:after{content:"";height:1px;width:3rem;background:var(--rust)}.strip{display:flex;justify-content:space-between;gap:16px;padding:10px var(--gutter);border-bottom:1px solid var(--rule)}.site-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px 24px;min-height:76px;padding:16px max(var(--gutter),calc((100% - var(--max-width)) / 2 + var(--gutter)))}.site-header{position:sticky;top:0;z-index:50}html{scroll-padding-top:84px}.site-header.is-stuck:before{inset:-120px 0 0;background:color-mix(in srgb,var(--paper) 90%,transparent);border-bottom-color:var(--rule-strong)}.site-header:before{content:"";position:absolute;inset:0;border-bottom:1px solid var(--rule);z-index:-1;pointer-events:none;background:color-mix(in srgb,var(--paper) 62%,transparent);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}@media(min-width:901px){main .page-header:before{top:calc(-1 * var(--header-h, 80px))}}.wm{display:inline-flex;align-items:center;gap:16px;font-family:var(--font-sans);font-weight:600;font-size:16px;letter-spacing:.34em;text-transform:uppercase;text-decoration:none;line-height:1;color:var(--ink);white-space:nowrap}.wm:hover{color:var(--ink)}.wm__mark{height:48px;width:auto}.site-nav{display:flex;flex-wrap:wrap;gap:6px clamp(16px,2.6vw,34px);list-style:none}.site-nav a{font-family:var(--font-label);font-size:12px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--ink-muted);padding:4px 0;border-bottom:1px solid transparent}.site-nav a:hover,.site-nav a.active{color:var(--ink);border-bottom-color:var(--rust)}@media(max-width:640px){.strip span:last-child{display:none}.site-nav a{font-size:11px}.wm__mark{height:40px}.wm__name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}.site-footer{max-width:var(--max-width);margin:var(--space-3xl) auto 0;padding:0 var(--gutter) var(--space-xl)}.site-footer__inner{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-lg);padding-top:var(--space-lg);border-top:2px solid var(--ink)}.page-header{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:clamp(210px,21vw,300px);text-align:center;padding:clamp(40px,5vw,72px) 0 clamp(44px,5.5vw,80px);margin-bottom:var(--space-xl);border-bottom:1px solid var(--rule-strong)}.page-header:before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:calc(50% - 57vw);width:114vw;pointer-events:none;opacity:.2;background:url(/images/home/land-left.webp) left var(--art-l, 0%) / auto var(--art-zoom, 100%) no-repeat,url(/images/home/land-right.webp) right var(--art-r, 0%) / auto var(--art-zoom, 100%) no-repeat}.page-header[data-art]{--art-zoom: 165%}.page-header[data-art=lighthouse]{--art-l: 100%;--art-r: 100%}.page-header[data-art=farm]{--art-l: 0%;--art-r: 0%}.page-header[data-art=road]{--art-l: 48%;--art-r: 45%}.page-header>.label{color:var(--rust)}.page-header h1{max-width:15em;text-wrap:balance;-webkit-mask-image:var(--wear);mask-image:var(--wear)}.page-header__subtitle{max-width:34em;font-size:clamp(17px,1.35vw,19px);line-height:1.55;color:var(--ink-muted);text-wrap:balance}time.page-header__subtitle{font-family:var(--font-label);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-light)}@media(max-width:900px){.page-header{min-height:0;padding-bottom:0;border-bottom:0}.page-header:before{position:relative;z-index:0;order:9;left:auto;width:auto;align-self:stretch;height:25vw;margin:10px calc(-1 * var(--gutter)) 0;opacity:1}}.job{display:flex;flex-direction:column;color:var(--ink);text-decoration:none}.job:hover{color:var(--ink)}.job__plate{position:relative;aspect-ratio:4 / 3;display:grid;place-items:center;padding:9%;overflow:hidden;background:var(--paper-deep);border:1px solid var(--ink);border-bottom:0}.job__plate img{max-height:100%;width:auto;height:auto;object-fit:contain;border:1px solid var(--ink);box-shadow:0 1px 0 var(--rule-strong),0 10px 24px #3c2d1e24;transition:transform .5s cubic-bezier(.2,.7,.2,1)}.job:hover .job__plate img{transform:scale(1.02)}.reg{position:absolute;width:18px;height:18px;opacity:.7}.reg:before,.reg:after{content:"";position:absolute;background:var(--ink)}.reg:before{left:50%;top:0;bottom:0;width:1px}.reg:after{top:50%;left:0;right:0;height:1px}.reg:nth-of-type(1){top:10px;left:10px}.reg:nth-of-type(2){top:10px;right:10px}.reg:nth-of-type(3){bottom:10px;left:10px}.reg:nth-of-type(4){bottom:10px;right:10px}.job__no{position:absolute;top:13px;left:36px;right:36px;font-size:10px;letter-spacing:.1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.ticket{flex:1;padding:16px 18px 18px;background:var(--paper-bright);border:1px solid var(--ink);border-top:0}.ticket .kind{color:var(--rust)}.ticket h3{font-size:24px;line-height:1.15;letter-spacing:-.01em;margin:6px 0 8px}.ticket p{font-size:16px;line-height:1.45;color:var(--ink-muted)}.ticket dl{display:grid;grid-template-columns:auto 1fr;gap:3px 14px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--rule-strong)}.ticket dt{color:var(--ink-light)}.ticket dd{font-family:var(--font-label);font-size:12px;color:var(--ink)}.project-grid.project-grid--lead{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid--lead .job__plate{aspect-ratio:16 / 10;padding:7%}.project-grid--lead .ticket h3{font-size:clamp(24px,2.2vw,32px)}@media(max-width:768px){.project-grid.project-grid--lead{grid-template-columns:1fr}}.ledger{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--ink)}.ledger__row{display:grid;grid-template-columns:5rem minmax(0,1.1fr) minmax(0,1.4fr) minmax(0,1fr) 1.5rem;align-items:baseline;gap:0 24px;padding:18px 0;border-top:1px solid var(--rule-strong);color:var(--ink);text-decoration:none}.ledger li:first-child .ledger__row{border-top:0}.ledger__year{color:var(--ink-light)}.ledger__name{font-family:var(--font-display);font-weight:600;font-size:clamp(20px,1.9vw,26px);line-height:1.15;letter-spacing:-.01em}.ledger__what{color:var(--ink-muted)}.ledger__note{color:var(--rust)}.ledger__go{color:var(--rust);text-align:right;transition:transform .25s}.ledger__row:hover{color:var(--ink)}.ledger__row:hover .ledger__name{color:var(--rust)}.ledger__row:hover .ledger__go{transform:translate(4px)}.ledger__ask{margin-top:var(--space-md);color:var(--ink-muted)}@media(max-width:768px){.ledger__row{grid-template-columns:3.5rem minmax(0,1fr) 1.25rem;gap:2px 14px;padding:16px 0}.ledger__what,.ledger__note{grid-column:2}.ledger__note:empty{display:none}.ledger__go{grid-column:3;grid-row:1}}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap)}@media(max-width:1000px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.project-detail{margin-top:var(--space-lg)}.project-detail__meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-md) var(--space-xl);max-width:60rem;margin:0 auto var(--space-xl);padding:18px 24px;background:var(--paper-bright);border:1px solid var(--ink)}.meta-item{display:flex;flex-direction:column;gap:var(--space-xs)}.meta-label{font-family:var(--font-label);font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--ink-light)}.meta-value{font-family:var(--font-label);font-size:13px;color:var(--ink)}.project-detail__hero{margin-bottom:var(--space-xl);text-align:center}.proof-sheet{position:relative;display:grid;place-items:center;padding:clamp(34px,6%,80px);background:var(--paper-deep);border:1px solid var(--ink)}.proof-sheet img{max-height:78vh;width:auto;border:1px solid var(--ink);box-shadow:0 1px 0 var(--rule-strong),0 14px 32px #3c2d1e29}.project-detail__hero-link{display:block}.project-detail__hero-link img{transition:opacity var(--transition)}.project-detail__hero-link:hover img{opacity:.92}.project-detail__live-cta{display:inline-block;margin-top:var(--space-md);font-family:var(--font-label);font-size:12px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.project-detail__body{font-size:1.08rem}.project-detail__body h2{font-size:1.7rem;margin:var(--space-xl) 0 var(--space-md)}.project-detail__body p{margin-bottom:var(--space-md)}.project-detail__body ul{margin:0 0 var(--space-md) 1.2rem}.project-detail__body li{margin-bottom:var(--space-sm)}.project-detail__gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:var(--grid-gap);margin-top:var(--space-xl)}.project-detail__gallery img{width:100%;border:1px solid var(--ink)}.work-section{margin-top:var(--space-2xl)}.work-section:first-of-type{margin-top:var(--space-lg)}.work-section__title{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-family:var(--font-gothic);font-weight:800;font-size:clamp(26px,3vw,38px);line-height:1;letter-spacing:.05em;text-transform:uppercase;padding-bottom:10px;border-bottom:2px solid var(--ink);margin-bottom:28px}.work-section__title a{font-family:var(--font-label);font-size:11px;font-weight:400;letter-spacing:.16em;text-decoration:none}.blog-list{margin-top:0;max-width:var(--max-width-prose);margin-left:auto;margin-right:auto}.blog-item{padding:var(--space-lg) 0;border-bottom:1px solid var(--rule)}.blog-item:first-child{padding-top:0}.blog-item__date{font-family:var(--font-label);font-size:.66rem;letter-spacing:.1em;color:var(--ink-light);font-variant-numeric:tabular-nums}.blog-item__title{font-size:1.45rem;margin:var(--space-xs) 0}.blog-item__title a{color:var(--ink);text-decoration:none}.blog-item__title a:hover{color:var(--rust)}.blog-item__excerpt{font-size:1rem;color:var(--ink-muted);line-height:1.55}.post-body{max-width:var(--max-width-prose);margin-left:auto;margin-right:auto;margin-top:var(--space-lg);font-size:1.08rem}.post-body h2{margin-top:var(--space-xl);margin-bottom:var(--space-md)}.post-body h3{margin-top:var(--space-lg);margin-bottom:var(--space-sm)}.post-body p{margin-bottom:var(--space-md)}.post-body ul,.post-body ol{margin-bottom:var(--space-md);padding-left:var(--space-lg)}.post-body li{margin-bottom:var(--space-sm)}.post-body blockquote{border-left:2px solid var(--rust);padding-left:var(--space-md);color:var(--ink-muted);font-style:italic;margin:var(--space-lg) 0}.post-body code{font-family:var(--font-mono);font-size:.82em;background:var(--paper-deep);padding:.15em .35em}.post-body pre{background:var(--umber);color:var(--umber-text);padding:var(--space-md) var(--space-lg);overflow-x:auto;margin:var(--space-lg) 0}.post-body pre code{background:none;padding:0;color:inherit}.post-body img{margin:var(--space-lg) 0;border:1px solid var(--ink)}.about-content{max-width:var(--max-width-prose);margin-left:auto;margin-right:auto;margin-top:var(--space-xl)}.about-content p{margin-bottom:var(--space-md);font-size:1.1rem}.contact-content{max-width:var(--max-width-prose);margin-left:auto;margin-right:auto}.contact-content p{margin-bottom:var(--space-md)}.contact-links{list-style:none;margin-top:var(--space-lg)}.contact-links li{padding:var(--space-sm) 0;border-bottom:1px solid var(--rule)}.contact-links a{display:flex;justify-content:space-between;align-items:center;font-size:1rem}.contact-links .label{color:var(--ink-muted);font-size:.66rem}.recommendations{max-width:var(--max-width-prose);margin-left:auto;margin-right:auto}.recommendation{padding:var(--space-lg) 0;border-bottom:1px solid var(--rule)}.recommendation:first-child{padding-top:0}.recommendation__text{font-size:1.05rem;line-height:1.7;color:var(--ink);white-space:pre-line}.recommendation__footer{display:flex;flex-direction:column;gap:var(--space-xs);margin-top:var(--space-md)}.recommendation__name{font-style:normal;font-family:var(--font-display);font-size:1.1rem;color:var(--ink)}.recommendation__title{font-size:.92rem;color:var(--ink-muted);line-height:1.4}.recommendation__meta{font-family:var(--font-label);font-size:.64rem;letter-spacing:.08em;color:var(--ink-light)}.back-link{display:inline-block;font-family:var(--font-label);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted);text-decoration:none;margin-top:var(--space-md)}.back-link:hover{color:var(--ink)}.button{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-label);font-size:12px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;padding:12px 20px;background:var(--ink);color:var(--paper-bright);border:1.5px solid var(--ink);border-radius:0;cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition)}.button:hover{background:var(--rust);border-color:var(--rust);color:var(--paper-bright)}.button--ghost{background:transparent;color:var(--ink)}.button--ghost:hover{background:var(--ink);border-color:var(--ink);color:var(--paper-bright)}@media(max-width:768px){html{font-size:17px}:root{--space-lg: 1.25rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4.5rem}.project-grid,.project-detail__gallery{grid-template-columns:1fr}.site-footer__inner{flex-direction:column;align-items:flex-start;gap:var(--space-md)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.section{margin-top:var(--space-3xl)}.section h2{margin:.4rem 0 var(--space-lg);max-width:20ch}.label--gold{color:var(--rust-pale)}.plate{margin:0}.plate img{width:100%;background:var(--paper-deep);border:1px solid var(--ink);padding:8px;box-shadow:0 1px 0 var(--rule-strong),0 10px 24px #3c2d1e24}.plate figcaption{display:flex;gap:.75rem;align-items:baseline;margin-top:.7rem;font-size:.92rem;color:var(--ink-muted);line-height:1.4}.plate figcaption .label{flex:none;color:var(--rust)}.textlink{display:inline-block;font-family:var(--font-label);font-size:12px;letter-spacing:.14em;text-transform:uppercase}.band{margin-top:var(--space-3xl);margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:var(--umber);color:var(--umber-text);padding:var(--space-3xl) 0}.band__inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--gutter)}.band h2,.band h3{color:var(--umber-text)}.band h2 em{color:var(--rust-pale)}.band p{color:var(--umber-muted)}.cta-box{margin-top:var(--space-3xl);text-align:center;padding:var(--space-2xl) var(--space-lg);border:1px solid var(--ink);background:var(--paper-bright)}.cta-box h2{margin:0 auto var(--space-sm)}.cta-box p{color:var(--ink-muted);margin-bottom:var(--space-lg);font-size:1.1rem}.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}.js .reveal.is-in{opacity:1;transform:none}@media(max-width:768px){.band{padding:var(--space-2xl) 0}}
