:root{--paper:#f3efe6;--paper-raised:#faf7f1;--ink:#161513;--ink-soft:#3a3632;--muted:#5c564e;--line:rgba(22,21,19,0.14);--accent:#9d341f;--accent-bright:#c4492c;--frame:#e4dfd4;--shadow:0 30px 70px rgba(22,21,19,0.18);--serif:"Fraunces","Iowan Old Style",Palatino,"Palatino Linotype",serif;--sans:"Outfit","Avenir Next","Segoe UI",sans-serif;--nav-h:76px;--shell:min(1120px,calc(100% - 48px))}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}img{max-width:100%}button,input,textarea{font:inherit}::selection{background:#f0c7bc;color:var(--ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.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}.skip-link{position:absolute;left:16px;top:12px;transform:translateY(-140%);background:var(--ink);color:var(--paper);padding:10px 14px;border-radius:999px;z-index:80;text-decoration:none}.skip-link:focus{transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}}.shell{width:var(--shell);margin:0 auto}.site-header{position:sticky;top:0;z-index:30;height:var(--nav-h);display:flex;align-items:center;background:var(--paper);border-bottom:1px solid transparent}.site-header.is-scrolled{border-bottom-color:var(--line)}.site-header-inner{width:var(--shell);margin:0 auto;display:flex;align-items:center;justify-content:space-between;grid-gap:24px;gap:24px}.brand{display:inline-flex;align-items:center;grid-gap:12px;gap:12px;color:var(--ink);text-decoration:none}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--ink);border-radius:10px;font-family:var(--serif);font-size:15px;letter-spacing:-.03em}.brand-name{font-weight:500;letter-spacing:-.01em}.nav-links{display:flex;align-items:center;grid-gap:28px;gap:28px;list-style:none;margin:0;padding:0}.nav-links a{color:var(--ink-soft);text-decoration:none;font-size:15px;font-weight:500}.nav-links a.is-active,.nav-links a:hover{color:var(--ink)}.nav-links a.is-active{box-shadow:inset 0 -1px 0 var(--accent)}.nav-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;background:transparent;padding:0;position:relative;cursor:pointer}.nav-toggle-bar,.nav-toggle-bar:after,.nav-toggle-bar:before{display:block;width:16px;height:1.5px;background:var(--ink);position:absolute;left:13px;transition:transform .2s ease,opacity .2s ease}.nav-toggle-bar{top:21px}.nav-toggle-bar:after,.nav-toggle-bar:before{content:"";left:0}.nav-toggle-bar:before{top:-6px}.nav-toggle-bar:after{top:6px}.nav-toggle.is-open .nav-toggle-bar{background:transparent}.nav-toggle.is-open .nav-toggle-bar:before{top:0;transform:rotate(45deg)}.nav-toggle.is-open .nav-toggle-bar:after{top:0;transform:rotate(-45deg)}.hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);grid-gap:64px;gap:64px;align-items:end;padding:48px 0 88px}.eyebrow{margin:0 0 16px;font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.hero h1{margin:0;font-family:var(--serif);font-weight:560;font-size:clamp(4.4rem,9vw,7.4rem);line-height:.88;letter-spacing:-.045em}.hero-lede{max-width:38rem;margin:28px 0 0;font-size:1.15rem;line-height:1.55;color:var(--ink-soft)}.hero-actions{display:flex;flex-wrap:wrap;grid-gap:12px;gap:12px;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;grid-gap:8px;gap:8px;min-height:46px;padding:0 18px;border-radius:999px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);text-decoration:none;font-size:15px;font-weight:500;cursor:pointer}.btn:hover{background:var(--accent-bright);border-color:var(--accent-bright);color:#fff}.btn-ghost{background:transparent;color:var(--ink)}.btn-ghost:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.portrait{margin:0}.portrait-frame{position:relative}.portrait-frame:after{content:"";position:absolute;inset:18px -16px -16px 18px;border:1px solid var(--ink);border-radius:18px}.portrait img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 18%;border-radius:18px;background:#ddd8ce}.portrait figcaption{margin-top:22px;max-width:28ch;font-family:var(--serif);font-style:italic;font-weight:460;font-size:1.05rem;line-height:1.4;color:var(--muted)}.section{padding:28px 0 96px}.section-head{max-width:40rem;margin-bottom:36px}.about-copy h2,.contact h2,.not-found h1,.section-head h2{margin:0;font-family:var(--serif);font-weight:560;font-size:clamp(2.4rem,5vw,4rem);line-height:1.02;letter-spacing:-.035em}.lede{margin:16px 0 0;color:var(--ink-soft);font-size:1.08rem}.feature{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.75fr);grid-gap:40px;gap:40px;align-items:center}.dialog-media,.media-button,.media-frame{position:relative;background:var(--frame);overflow:hidden}.media-button{display:block;width:100%;padding:0;border:0;border-radius:18px;cursor:pointer;aspect-ratio:16/10}.dialog-media img,.media-button img,.work-card-open img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}.dialog-media.is-contain img,.media-button.is-contain img,.work-card.is-contain img{object-fit:contain;object-position:center}.media-button img{transition:transform .5s ease}.media-button:hover img{transform:scale(1.035)}.media-button.is-contain:hover img{transform:none}.meta{margin:0 0 10px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.dialog h3,.feature-copy h3,.work-card-title{margin:0;font-family:var(--serif);font-weight:560;letter-spacing:-.03em;line-height:1.05}.feature-copy h3{font-size:clamp(2rem,3vw,2.8rem)}.about-copy p,.contact>p,.dialog-body p,.feature-copy p,.work-card-summary{color:var(--ink-soft)}.feature-copy>p{margin:14px 0 0}.tags{display:flex;flex-wrap:wrap;grid-gap:8px;gap:8px;margin:18px 0 0;padding:0;list-style:none}.tags li{padding:4px 10px;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;grid-gap:10px;gap:10px;margin-top:22px}.work-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:32px 24px;gap:32px 24px;margin-top:36px;padding-top:36px;border-top:1px solid var(--line)}.work-card{min-width:0}.work-card,.work-card-open{display:flex;flex-direction:column}.work-card-open{grid-gap:16px;gap:16px;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.work-card-open .media-frame{display:block;background:var(--frame);border-radius:16px;overflow:hidden;aspect-ratio:16/10}.work-card-open:hover .work-card-title{color:var(--accent)}.work-card-title{display:block;margin-top:8px;font-size:1.7rem;transition:color .2s ease}.work-card-summary{display:block;margin-top:8px;font-size:.98rem}.work-card-visit{align-self:flex-start;margin-top:12px;color:var(--ink);font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--accent)}.work-card-visit:hover{color:var(--accent)}.about-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);grid-gap:72px;gap:72px;align-items:start}.about-copy p{margin:18px 0 0;font-size:1.05rem}.capabilities{margin:8px 0 0}.capabilities div{padding:18px 0;border-top:1px solid var(--line)}.capabilities div:last-child{border-bottom:1px solid var(--line)}.capabilities dt{font-family:var(--serif);font-size:1.45rem;font-weight:560;letter-spacing:-.03em}.capabilities dd{margin:6px 0 0;color:var(--ink-soft)}.contact{padding:40px 0 72px}.contact h2{font-size:clamp(3.2rem,8vw,6.4rem);max-width:10ch}.contact>p{max-width:36rem;margin:18px 0 0;font-size:1.08rem}.contact-links{display:flex;flex-wrap:wrap;grid-gap:18px 36px;gap:18px 36px;margin-top:28px}.contact-links a{font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.5rem);font-weight:560;letter-spacing:-.03em;color:var(--ink);text-decoration:none;border-bottom:2px solid var(--accent-bright)}.contact-links a:hover{color:var(--accent)}.site-footer{border-top:1px solid var(--line)}.site-footer-inner{width:var(--shell);margin:0 auto;padding:22px 0 36px;display:flex;justify-content:space-between;grid-gap:16px;gap:16px;color:var(--muted);font-size:14px}.site-footer a{color:inherit;text-decoration:none}.site-footer a:hover{color:var(--ink)}.dialog-root{position:fixed;inset:0;z-index:60;display:grid;place-items:end center;padding:20px;background:rgba(22,21,19,.5)}.dialog{width:min(780px,100%);max-height:min(90vh,920px);overflow:auto;background:var(--paper-raised);border-radius:22px;box-shadow:var(--shadow)}.dialog-media{background:var(--frame);aspect-ratio:16/9}.dialog-body{padding:28px 28px 32px}.dialog h3{font-size:clamp(2rem,4vw,2.8rem)}.dialog-body p{margin:14px 0 0;font-size:1.02rem}.not-found{min-height:calc(100vh - 180px);display:flex;flex-direction:column;justify-content:center;padding:48px 0 80px}.not-found h1{max-width:12ch}.not-found .btn{align-self:flex-start;margin-top:28px}@media (max-width:860px){:root{--shell:min(1120px,calc(100% - 32px))}.nav-toggle{display:inline-flex;align-items:center;justify-content:center}.nav-links{display:none;position:absolute;top:var(--nav-h);left:0;right:0;flex-direction:column;align-items:flex-start;grid-gap:4px;gap:4px;padding:8px 16px 18px;background:var(--paper);border-bottom:1px solid var(--line)}.nav-links.is-open{display:flex}.nav-links a{display:block;width:100%;padding:12px 8px;font-size:1.15rem}.about-grid,.feature,.hero,.work-grid{grid-template-columns:1fr;grid-gap:28px;gap:28px}.hero{padding-top:28px}.portrait{max-width:420px}.portrait-frame:after{inset:12px -10px -10px 12px}.section{padding-bottom:72px}.site-footer-inner{flex-direction:column}}@media (max-width:560px){.hero h1{font-size:3.6rem}.brand-name{font-size:15px}.dialog-body{padding:22px 18px 24px}.dialog-root{padding:10px;place-items:end center}}
/*# sourceMappingURL=main.30505005.chunk.css.map */