/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:"DM Sans", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-charcoal:#2a2a2c;--color-chalk:#f7f6f3;--color-graphite:#5f5f62;--color-tape-brass:#b09155;--color-background:var(--color-chalk);--color-foreground:var(--color-charcoal);--font-display:"Playfair Display", Georgia, serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.italic{font-style:italic}}@font-face{font-family:DM Sans;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/dm-sans-latin.woff2)format("woff2")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/playfair-display-latin.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page-pad:clamp(24px, 5vw, 72px);--header-height:72px}html{scroll-behavior:smooth;background:var(--color-charcoal)}body{background:var(--color-background);min-width:320px;color:var(--color-foreground);font-family:var(--font-sans);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,button,a{font-family:var(--font-sans)}a{color:inherit}::selection{background:var(--color-tape-brass);color:var(--color-charcoal)}:focus-visible{outline:3px solid var(--color-charcoal);outline-offset:3px}.skip-link{z-index:30;background:var(--color-chalk);color:var(--color-charcoal);padding:10px 14px;font-size:14px;font-weight:600;text-decoration:none;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.site-header :focus-visible,.section--dark :focus-visible,.contact__details :focus-visible,.site-footer :focus-visible{outline-color:var(--color-chalk)}section{scroll-margin-top:var(--header-height)}.site-shell{background:var(--color-chalk);min-height:100dvh;overflow:clip}.site-header{z-index:20;min-height:var(--header-height);padding:10px var(--page-pad);border-bottom:1px solid #f7f6f32e;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.site-header{border-bottom:1px solid color-mix(in srgb, var(--color-chalk) 18%, transparent)}}.site-header{background:var(--color-charcoal);color:var(--color-chalk)}.site-header__brand{width:max-content;text-decoration:none}.wordmark{flex-direction:column;gap:2px;width:max-content;display:flex}.wordmark__name{font-family:var(--font-display);letter-spacing:.14em;font-size:21px;font-weight:600;line-height:26px}.wordmark__descriptor{letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-weight:400;line-height:13px}.site-nav{align-items:center;gap:clamp(24px,3vw,44px);display:flex}.mobile-nav{display:none;position:relative}.mobile-nav summary{border:1px solid #f7f6f35c;justify-content:center;align-items:center;min-width:58px;min-height:40px;display:flex}@supports (color:color-mix(in lab, red, red)){.mobile-nav summary{border:1px solid color-mix(in srgb, var(--color-chalk) 36%, transparent)}}.mobile-nav summary{color:var(--color-chalk);cursor:pointer;letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:600;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav__links{width:min(240px, calc(100vw - (2 * var(--page-pad))));border:1px solid #f7f6f333;padding:8px;display:grid;position:absolute;top:calc(100% + 12px);right:0}@supports (color:color-mix(in lab, red, red)){.mobile-nav__links{border:1px solid color-mix(in srgb, var(--color-chalk) 20%, transparent)}}.mobile-nav__links{background:var(--color-charcoal)}.mobile-nav__links a{min-height:46px;color:var(--color-chalk);align-items:center;padding:0 14px;font-size:14px;text-decoration:none;display:flex}.mobile-nav__links a+a{border-top:1px solid #f7f6f324}@supports (color:color-mix(in lab, red, red)){.mobile-nav__links a+a{border-top:1px solid color-mix(in srgb, var(--color-chalk) 14%, transparent)}}.site-nav a{padding:10px 0;font-size:13px;font-weight:400;line-height:18px;text-decoration:none;position:relative}.site-nav a:after{background:var(--color-tape-brass);content:"";transform-origin:100%;height:1px;transition:transform .18s;position:absolute;bottom:5px;left:0;right:0;transform:scaleX(0)}.site-nav a:hover:after,.site-nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.site-header__cta{justify-self:end}.button{letter-spacing:.16em;text-transform:uppercase;border:1px solid;justify-content:center;align-items:center;min-height:46px;padding:14px 24px;font-size:12px;font-weight:600;line-height:16px;text-decoration:none;transition:background-color .18s,color .18s,transform .18s;display:inline-flex}.button:active{transform:translateY(1px)}.button--light{border-color:var(--color-chalk);background:var(--color-chalk);color:var(--color-charcoal)}.button--light:hover{color:var(--color-chalk);background:0 0}.button--dark{border-color:var(--color-charcoal);background:var(--color-charcoal);color:var(--color-chalk)}.button--dark:hover{color:var(--color-charcoal);background:0 0}.hero{height:clamp(620px, calc(100dvh - var(--header-height)), 960px);background:var(--color-chalk);grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);display:grid}.hero__copy{min-width:0;padding:clamp(56px, 8vw, 112px) var(--page-pad);grid-template-rows:auto 1fr;display:grid}.hero__signature{flex-direction:column;gap:3px;display:flex}.hero__signature strong{font-family:var(--font-display);font-size:25px;font-weight:500;line-height:31px}.hero__signature span{color:var(--color-graphite);letter-spacing:.08em;font-size:11px;line-height:15px}.hero__body{align-self:center}.hero h1,.section h2,.contact h2{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;margin:0;font-weight:500}.hero h1{max-width:11ch;font-size:clamp(52px,5.6vw,82px);line-height:.98}.hero__body>p{max-width:470px;color:var(--color-graphite);text-wrap:pretty;margin:28px 0 0;font-size:clamp(16px,1.25vw,19px);font-weight:350;line-height:1.6}.hero__actions{align-items:center;gap:28px;margin-top:38px;display:flex}.text-link{padding:10px 0;font-size:13px;font-weight:500;line-height:18px;text-decoration:none;position:relative}.text-link:after{background:var(--color-charcoal);content:"";height:1px;transition:transform .18s;position:absolute;bottom:6px;left:0;right:0}.text-link:hover:after{transform:translateY(3px)}.hero__media{background:var(--color-charcoal);grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;margin:0;display:grid}.hero__image-frame{min-height:0;position:relative;overflow:hidden}.hero__image-frame img{object-fit:cover;object-position:center 48%;width:100%;height:100%;position:absolute;inset:0}.hero__media figcaption{color:var(--color-chalk);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:18px 24px;font-size:11px;line-height:16px;display:flex}.hero__media figcaption span:last-child{color:#f7f6f3a3}@supports (color:color-mix(in lab, red, red)){.hero__media figcaption span:last-child{color:color-mix(in srgb, var(--color-chalk) 64%, transparent)}}.section{padding:clamp(80px, 8vw, 120px) var(--page-pad)}.section__intro{max-width:760px}.section__intro h2,.contact h2{font-size:clamp(44px,4.5vw,64px);line-height:1.04}.section__intro>p{max-width:590px;color:var(--color-graphite);text-wrap:pretty;margin:24px 0 0;font-size:17px;font-weight:350;line-height:1.65}.service-list{border-top:1px solid #2a2a2cb8;margin-top:clamp(64px,8vw,104px)}@supports (color:color-mix(in lab, red, red)){.service-list{border-top:1px solid color-mix(in srgb, var(--color-charcoal) 72%, transparent)}}.service-row{border-bottom:1px solid #2a2a2c38;grid-template-columns:80px minmax(220px,1fr) minmax(280px,.82fr);align-items:center;gap:24px;padding:32px 0;display:grid}@supports (color:color-mix(in lab, red, red)){.service-row{border-bottom:1px solid color-mix(in srgb, var(--color-charcoal) 22%, transparent)}}.service-row__index{color:var(--color-graphite);letter-spacing:.16em;font-size:11px;font-weight:600;line-height:16px}.service-row h3{font-family:var(--font-display);margin:0;font-size:clamp(30px,3vw,42px);font-weight:500;line-height:1.1}.service-row p{max-width:430px;color:var(--color-graphite);text-wrap:pretty;margin:0;font-size:15px;font-weight:350;line-height:1.65}.section--dark{background:var(--color-charcoal);color:var(--color-chalk)}.section--dark .section__intro>p{color:#f7f6f3ad}@supports (color:color-mix(in lab, red, red)){.section--dark .section__intro>p{color:color-mix(in srgb, var(--color-chalk) 68%, transparent)}}.work-grid{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:26px;margin-top:clamp(64px,8vw,104px);display:grid}.work-piece{grid-template-rows:minmax(0,1fr) auto;min-width:0;margin:0;display:grid}.work-piece--1{grid-row:1/3;min-height:720px}.work-piece--2,.work-piece--3{min-height:347px}.work-piece__image{background:var(--color-charcoal);min-height:0;overflow:hidden}.work-piece img{object-fit:cover;width:100%;height:100%}.work-piece--1 img{object-position:center}.work-piece--3 img{object-position:center 38%}.work-piece figcaption{justify-content:space-between;align-items:baseline;gap:24px;padding-top:14px;display:flex}.work-piece figcaption span:first-child{font-family:var(--font-display);font-size:22px;font-weight:500;line-height:28px}.work-piece figcaption span:last-child{color:var(--color-tape-brass);letter-spacing:.17em;text-transform:uppercase;font-size:10px;font-weight:600;line-height:14px}.contact{grid-template-columns:.92fr 1.08fr;min-height:580px;display:grid}.contact__portrait{min-width:0;padding:64px var(--page-pad);background:var(--color-chalk);flex-direction:column;justify-content:center;align-items:center;gap:24px;display:flex}.contact__portrait img{aspect-ratio:1;object-fit:contain;opacity:.92;width:min(66%,320px)}.contact__portrait>div{flex-direction:column;align-items:center;gap:5px;display:flex}.contact__portrait strong{font-family:var(--font-display);font-size:28px;font-weight:500;line-height:34px}.contact__portrait span{letter-spacing:.2em;text-transform:uppercase;font-size:11px;line-height:14px}.contact__details{min-width:0;padding:clamp(56px, 6vw, 88px) var(--page-pad);background:var(--color-charcoal);color:var(--color-chalk);flex-direction:column;justify-content:center;display:flex}.contact__lead{color:#f7f6f3ad;max-width:490px;margin:22px 0 0}@supports (color:color-mix(in lab, red, red)){.contact__lead{color:color-mix(in srgb, var(--color-chalk) 68%, transparent)}}.contact__lead{text-wrap:pretty;font-size:16px;font-weight:350;line-height:1.6}.contact-list{max-width:560px;margin:48px 0 0}.contact-list>div{border-top:1px solid #f7f6f333;grid-template-columns:92px minmax(0,1fr);gap:24px;padding:15px 0;display:grid}@supports (color:color-mix(in lab, red, red)){.contact-list>div{border-top:1px solid color-mix(in srgb, var(--color-chalk) 20%, transparent)}}.contact-list>div:last-child{border-bottom:1px solid #f7f6f333}@supports (color:color-mix(in lab, red, red)){.contact-list>div:last-child{border-bottom:1px solid color-mix(in srgb, var(--color-chalk) 20%, transparent)}}.contact-list dt{color:var(--color-tape-brass);letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:600;line-height:20px}.contact-list dd{margin:0;font-size:16px;font-weight:350;line-height:1.5}.contact-list a{text-underline-offset:4px;text-decoration-color:#0000;transition:text-decoration-color .18s}.contact-list a:hover{-webkit-text-decoration-color:var(--color-tape-brass);-webkit-text-decoration-color:var(--color-tape-brass);-webkit-text-decoration-color:var(--color-tape-brass);text-decoration-color:var(--color-tape-brass)}.contact__cta{align-self:flex-start;margin-top:36px}.site-footer{min-height:128px;padding:36px var(--page-pad);background:var(--color-charcoal);color:var(--color-chalk);grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;display:grid}.site-footer p{color:#f7f6f3ad;margin:0}@supports (color:color-mix(in lab, red, red)){.site-footer p{color:color-mix(in srgb, var(--color-chalk) 68%, transparent)}}.site-footer p{font-size:12px;line-height:16px}.site-footer p:last-child{justify-self:end}@media (width<=900px){.site-header{grid-template-columns:1fr auto auto;gap:12px}.site-nav{display:none}.mobile-nav{display:block}.hero{grid-template-columns:1fr;height:auto}.hero__copy{min-height:560px;padding-top:72px;padding-bottom:72px}.hero__media{height:clamp(500px,78vw,660px);min-height:0}.service-row{grid-template-columns:60px minmax(180px,.8fr) minmax(240px,1fr)}.work-grid{grid-template-rows:auto;grid-template-columns:1fr}.work-piece--1,.work-piece--2,.work-piece--3{grid-row:auto;min-height:0}.work-piece__image{aspect-ratio:4/3}.work-piece--1 .work-piece__image{aspect-ratio:4/5}.contact{grid-template-columns:1fr}.contact__portrait{min-height:420px}.site-footer{grid-template-columns:1fr}.site-footer p:last-child{justify-self:start}}@media (width<=640px){:root{--page-pad:24px;--header-height:68px}.site-header{padding-inline:var(--page-pad)}.wordmark__name{font-size:18px;line-height:22px}.wordmark__descriptor{font-size:10px;line-height:12px}.site-header__cta{letter-spacing:.12em;min-height:40px;padding:11px 13px;font-size:10px}.hero__copy{min-height:500px;padding-block:64px;padding-inline:var(--page-pad)}.hero h1{max-width:10.5ch;font-size:clamp(46px,13.5vw,58px)}.hero__body>p{max-width:34ch;margin-top:22px;font-size:16px}.hero__actions{flex-wrap:wrap;gap:20px;margin-top:30px}.hero__media{height:520px;min-height:0}.section__intro h2,.contact h2{font-size:44px}.service-list,.work-grid{margin-top:52px}.service-row{grid-template-columns:40px 1fr;gap:10px 16px;padding:26px 0}.service-row p{grid-column:2}.work-grid{gap:42px}.work-piece figcaption{gap:12px}.work-piece figcaption span:first-child{font-size:20px}.contact__portrait{min-height:360px;padding-block:48px;padding-inline:var(--page-pad)}.contact__portrait img{width:min(74%,250px)}.contact__details{padding-block:72px;padding-inline:var(--page-pad)}.contact-list{margin-top:38px}.contact-list>div{grid-template-columns:72px minmax(0,1fr);gap:16px}.site-footer{min-height:168px;padding-block:42px;padding-inline:var(--page-pad);gap:18px}}@media (width<=360px){:root{--page-pad:16px;--header-height:60px}.site-header{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding-block:8px}.wordmark__name{letter-spacing:.1em;font-size:16px;line-height:20px}.wordmark__descriptor{display:none}.mobile-nav summary{min-width:52px}.mobile-nav__links{top:calc(var(--header-height) + 8px);right:var(--page-pad);left:var(--page-pad);width:auto;position:fixed}.site-header__cta{letter-spacing:.08em;white-space:nowrap;padding-inline:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
