:root{color:#11110f;background:#f2f0eb;font-family:Inter,Helvetica Neue,Helvetica,Arial,sans-serif;font-synthesis:none;--bone: #f2f0eb;--ink: #11110f;--muted: #6f6d67;--line: #b8b5ae;--header-height: 5.25rem;--desktop-rail-width: 6rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;background:var(--bone);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:5px}.skip-link{position:fixed;z-index:100;top:.75rem;left:.75rem;padding:.75rem 1rem;transform:translateY(-180%);background:var(--ink);color:var(--bone);font-size:.8125rem;text-decoration:none}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;z-index:20;top:0;display:grid;grid-template-columns:minmax(13rem,1fr) minmax(28rem,2.6fr) minmax(10rem,1fr);align-items:center;min-height:var(--header-height);padding:0 2.5rem;border-bottom:1px solid rgba(17,17,15,.34);background:#f2f0ebf5}.brand-link{display:inline-flex;align-items:center;width:fit-content;min-height:2.75rem;gap:.75rem;text-decoration:none}.brand-mark{display:block;width:2.5rem;height:2.5rem;border-radius:50%;object-fit:cover}.brand-wordmark{font-size:.75rem;font-weight:700;letter-spacing:.32em}.index-list,.mobile-index-list{display:flex;justify-content:center;gap:clamp(1.5rem,3vw,3.5rem);padding:0;margin:0;list-style:none}.index-list a,.mobile-index-list a{display:flex;align-items:baseline;min-height:2.75rem;gap:.5rem;border-bottom:2px solid transparent;color:var(--muted);font-size:.6875rem;font-weight:600;letter-spacing:.08em;line-height:2.75rem;text-decoration:none;text-transform:uppercase;transition:color .18s ease,border-color .18s ease}.index-list a:hover,.index-list a[aria-current=location],.mobile-index-list a:hover,.mobile-index-list a[aria-current=location]{border-bottom-color:currentColor;color:var(--ink)}.index-number{font-family:Georgia,Times New Roman,serif;font-size:.875rem;font-weight:400;letter-spacing:0}.header-note{justify-self:end;margin:0;color:var(--muted);font-size:.625rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.mobile-index{display:none}main{display:block}section{scroll-margin-top:calc(var(--header-height) + 1rem)}.hero{display:grid;grid-template-columns:minmax(0,8.2fr) minmax(15rem,3.8fr);grid-template-rows:1fr auto;column-gap:clamp(3rem,7vw,8rem);min-height:calc(100svh - var(--header-height));padding:clamp(4.5rem,8vh,7rem) clamp(2.5rem,5vw,5.5rem) 2.25rem}.hero-intro{align-self:start}.eyebrow{display:flex;align-items:baseline;gap:1rem;margin:0 0 clamp(2.5rem,6vh,5rem);font-size:.6875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.eyebrow span{color:var(--muted);font-family:Georgia,Times New Roman,serif;font-size:1rem;font-weight:400;letter-spacing:0}.hero h1{max-width:10ch;margin:0;font-family:Iowan Old Style,Baskerville,Georgia,Times New Roman,serif;font-size:clamp(5rem,7.5vw,7rem);font-weight:400;letter-spacing:-.052em;line-height:.88;text-wrap:balance}.hero-byline{align-self:center;max-width:18rem;margin:3.75rem 0 0;font-size:clamp(.875rem,1.05vw,1rem);line-height:1.55}.work-link{grid-column:1 / -1;display:flex;justify-content:flex-end;align-items:center;min-height:3.25rem;margin-top:clamp(4rem,10vh,8rem);border-top:1px solid var(--line);font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.work-link:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.35rem}.selected-work{border-top:1px solid var(--ink)}.project-chapter{--chapter-background: var(--bone);--chapter-foreground: var(--ink);--chapter-muted: var(--muted);--chapter-line: var(--line);position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:clamp(2rem,3.5vw,4.5rem);min-height:max(46rem,calc(100svh - var(--header-height)));padding:clamp(4rem,8vh,7rem) clamp(2.5rem,5vw,5.5rem);overflow:clip;border-bottom:1px solid var(--chapter-line);background:var(--chapter-background);color:var(--chapter-foreground)}.project-chapter-dark{--chapter-background: var(--ink);--chapter-foreground: var(--bone);--chapter-muted: #a7a49d;--chapter-line: #4b4a45}.project-number{position:absolute;top:clamp(1rem,3vh,2.5rem);left:clamp(2rem,4vw,4.5rem);color:var(--chapter-line);font-family:Iowan Old Style,Baskerville,Georgia,Times New Roman,serif;font-size:clamp(7rem,13vw,12rem);font-weight:400;letter-spacing:-.07em;line-height:.8;pointer-events:none}.project-meta{position:relative;z-index:1;grid-column:1 / span 3;align-self:center;padding-top:clamp(4rem,10vh,7rem)}.project-kicker{margin:0 0 2.25rem;color:var(--chapter-muted);font-size:.6875rem;font-weight:650;letter-spacing:.13em;text-transform:uppercase}.project-meta h3{margin:0;font-family:Iowan Old Style,Baskerville,Georgia,Times New Roman,serif;font-size:clamp(3.75rem,5.5vw,6rem);font-weight:400;letter-spacing:-.045em;line-height:.9}.project-type{max-width:13ch;margin:1.25rem 0 0;font-family:Iowan Old Style,Baskerville,Georgia,Times New Roman,serif;font-size:clamp(1.5rem,2vw,2.25rem);font-style:italic;line-height:1.04}.project-action{display:inline-flex;align-items:center;min-height:2.75rem;margin-top:clamp(2.5rem,5vh,4.5rem);border-bottom:1px solid currentColor;font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.project-action:hover{border-bottom-width:2px}.project-video-block{position:relative;z-index:1;grid-column:4 / -1;min-width:0}.project-chapter-media-first .project-meta{grid-column:9 / -1}.project-chapter-media-first .project-video-block{grid-column:1 / span 8;grid-row:1}.project-video-frame{position:relative;width:100%;aspect-ratio:2164 / 1256;overflow:hidden;border:1px solid var(--chapter-line);background:#080808}.project-video,.project-poster{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;object-fit:contain}.project-video{opacity:0}.project-poster{z-index:1;opacity:1;transition:opacity .18s ease}.project-video-frame[data-video-state=playing] .project-video{opacity:1}.project-video-frame[data-video-state=playing] .project-poster{opacity:0;pointer-events:none}.project-video-toolbar{display:flex;justify-content:space-between;align-items:center;min-height:3.25rem;border-bottom:1px solid var(--chapter-line)}.project-video-status{color:var(--chapter-muted);font-size:.625rem;font-weight:650;letter-spacing:.11em;text-transform:uppercase}.project-video-toggle{min-width:4.5rem;min-height:2.75rem;padding:.75rem 0 .75rem 1rem;border:0;background:transparent;color:inherit;font:inherit;font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-align:right;text-transform:uppercase;cursor:pointer}.project-video-toggle:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.3rem}.project-video-fallback{display:flex;justify-content:space-between;gap:1.5rem;margin:0;padding:1rem 0;border-bottom:1px solid var(--chapter-line);color:var(--chapter-muted);font-size:.75rem;line-height:1.5}.project-video-fallback-action{display:inline-flex;align-items:center;min-height:2.75rem;padding-inline:.25rem;color:var(--chapter-foreground);font-weight:650;text-underline-offset:.2rem}.services-section,.contact-section{padding:clamp(5rem,10vh,9rem) clamp(2.5rem,5vw,5.5rem)}.section-index{margin:0;font-size:.6875rem;font-weight:650;letter-spacing:.13em;text-transform:uppercase}.services-section{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(2rem,3.5vw,4.5rem);min-height:82svh;border-bottom:1px solid var(--line);background:var(--bone)}.section-heading-block{grid-column:1 / span 4}.section-heading-block h2{margin:clamp(2.75rem,7vh,5.5rem) 0 0;font-family:Iowan Old Style,Baskerville,Georgia,Times New Roman,serif;font-size:clamp(4rem,6.5vw,6.75rem);font-weight:400;letter-spacing:-.05em;line-height:.9}.services-list{grid-column:6 / -1;align-self:end;margin:0;padding:0;border-top:1px solid var(--line);list-style:none;counter-reset:service}.services-list li{position:relative;padding:clamp(1.6rem,3.5vh,2.75rem) clamp(3.5rem,6vw,6.5rem) clamp(1.6rem,3.5vh,2.75rem) 0;border-bottom:1px solid var(--line);font-family:Iowan Old Style,Baskerville,Georgia,Times New Roman,serif;font-size:clamp(2rem,3vw,3.5rem);letter-spacing:-.035em;line-height:1;counter-increment:service}.services-list li:after{position:absolute;top:50%;right:0;color:var(--muted);content:"0" counter(service);font-family:Inter,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.6875rem;font-weight:650;letter-spacing:.1em;transform:translateY(-50%)}.contact-section{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto auto;gap:clamp(2rem,3.5vw,4.5rem);min-height:92svh;border-bottom:1px solid var(--line);background:var(--bone)}.contact-section .section-index{grid-column:1 / -1;color:var(--muted)}.contact-intro{grid-column:1 / span 7;align-self:center}.contact-about{max-width:38rem;margin:0 0 clamp(2.5rem,5vh,4.5rem);color:var(--muted);font-size:clamp(.875rem,1.15vw,1rem);line-height:1.65}.contact-intro h2{max-width:10ch;margin:0;font-family:Iowan Old Style,Baskerville,Georgia,Times New Roman,serif;font-size:clamp(4rem,6.6vw,7rem);font-weight:400;letter-spacing:-.052em;line-height:.9;text-wrap:balance}.contact-cta{display:block;margin:clamp(2rem,4vh,3rem) 0 0;color:inherit;font-family:Iowan Old Style,Baskerville,Georgia,Times New Roman,serif;font-size:clamp(1.75rem,2.7vw,3rem);font-style:italic;line-height:1.1;text-decoration:none}.contact-cta:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}.contact-channels{grid-column:9 / -1;align-self:end;margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.contact-channels li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:4.75rem;border-bottom:1px solid var(--line)}.contact-channel-label{font-size:.875rem;font-weight:650}.contact-channel-link{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--muted);font-size:.75rem;line-height:1.4;text-align:right;text-decoration-thickness:1px;text-underline-offset:.3rem}.contact-channel-link:hover{color:var(--ink)}.site-footer{display:flex;justify-content:space-between;align-items:center;min-height:7rem;padding:2rem clamp(2.5rem,5vw,5.5rem);background:var(--ink);color:var(--bone)}.footer-wordmark,.footer-meta{margin:0}.footer-wordmark{font-size:.75rem;font-weight:700;letter-spacing:.32em}.footer-meta{color:#a7a49d;font-size:.625rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(min-width:1200px){:root{--header-height: 0rem}.skip-link{left:calc(var(--desktop-rail-width) + .75rem)}.site-header{position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;align-items:stretch;width:var(--desktop-rail-width);min-height:100svh;padding:1.5rem .75rem;overflow-y:auto;border-right:1px solid rgba(17,17,15,.34);border-bottom:0}main,.site-footer{margin-inline-start:var(--desktop-rail-width)}section{scroll-margin-top:1rem}.brand-link{flex-direction:column;width:100%;gap:1.25rem}.brand-wordmark{writing-mode:vertical-rl;text-orientation:upright;line-height:1;letter-spacing:.24em}.desktop-index{display:flex;flex:1;align-items:center}.index-list{flex-direction:column;align-items:stretch;width:100%;gap:.25rem}.index-list a{display:grid;grid-template-columns:1fr;align-content:center;align-items:start;min-height:3.5rem;gap:.2rem;padding:.5rem .25rem .5rem .625rem;border-bottom-color:transparent;border-left:2px solid transparent;line-height:1.15}.index-list a:hover,.index-list a[aria-current=location]{border-bottom-color:transparent;border-left-color:currentColor}.header-note{align-self:center;justify-self:auto;writing-mode:vertical-rl;text-orientation:mixed}}@media(max-width:900px){:root{--header-height: 4.75rem}.site-header{grid-template-columns:minmax(10rem,.8fr) minmax(26rem,2.4fr);padding-inline:1.75rem}.header-note{display:none}.index-list{justify-content:flex-end;gap:1.5rem}.hero{grid-template-columns:1fr;grid-template-rows:auto auto 1fr auto;padding:4.25rem 2.25rem 2rem}.hero h1{max-width:10.5ch;font-size:clamp(4.5rem,10.5vw,5.8rem)}.hero-byline{align-self:start;margin-top:3rem}.work-link{grid-column:1;margin-top:5rem}.project-chapter{grid-template-columns:1fr;align-content:center;gap:3rem;min-height:calc(100svh - var(--header-height));padding:5.5rem 2.25rem 3.5rem}.project-number{top:1.5rem;left:2rem;font-size:8rem}.project-meta,.project-chapter-media-first .project-meta{grid-column:1;grid-row:1;display:grid;grid-template-columns:1fr 1fr;align-items:end;column-gap:2rem;padding-top:3rem}.project-kicker{grid-column:1 / -1;margin-bottom:1.75rem}.project-type{margin-top:0}.project-action{grid-column:2;width:fit-content;margin-top:1.75rem}.project-video-block,.project-chapter-media-first .project-video-block{grid-column:1;grid-row:2}.services-section,.contact-section{padding:5.5rem 2.25rem}.section-heading-block{grid-column:1 / span 5}.services-list{grid-column:6 / -1}.contact-intro{grid-column:1 / span 8}.contact-channels{grid-column:9 / -1}}@media(max-width:760px){:root{--header-height: 4.125rem}.site-header{grid-template-columns:1fr auto;min-height:var(--header-height);padding-inline:1.125rem}.brand-mark{width:2rem;height:2rem}.desktop-index{display:none}.mobile-index{display:block;justify-self:end}.mobile-index summary{min-width:3.75rem;min-height:2.75rem;font-size:.6875rem;font-weight:700;letter-spacing:.12em;line-height:2.75rem;text-align:right;text-transform:uppercase;cursor:pointer;list-style:none}.mobile-index summary::-webkit-details-marker{display:none}.mobile-index[open] nav{position:absolute;top:100%;right:0;left:0;padding:.75rem 1.125rem 1.25rem;border-top:1px solid var(--line);border-bottom:1px solid var(--ink);background:var(--bone)}.mobile-index-list{display:grid;gap:0}.mobile-index-list a{justify-content:space-between;min-height:3rem;border-bottom:1px solid var(--line);font-size:.75rem;line-height:3rem}.mobile-index-list a[aria-current=location]{border-bottom-color:var(--ink);border-bottom-width:2px}.hero{grid-template-rows:auto auto 1fr auto;min-height:calc(100svh - var(--header-height));padding:clamp(2.75rem,7vh,4.25rem) 1.125rem 1.125rem}.eyebrow{margin-bottom:clamp(2rem,5vh,3rem)}.hero h1{max-width:10ch;font-size:clamp(2.75rem,12.7vw,3.5rem);letter-spacing:-.045em;line-height:.92;text-wrap:pretty}.hero-byline{max-width:17rem;margin-top:clamp(2.25rem,6vh,3.5rem);font-size:.875rem}.work-link{min-height:3.5rem;margin-top:3.5rem}.project-chapter{align-content:start;gap:2rem;min-height:calc(100svh - var(--header-height));padding:3.25rem 1.125rem 2.5rem}.project-number{display:none}.project-meta,.project-chapter-media-first .project-meta{display:block;padding-top:0}.project-kicker{margin-bottom:2.5rem}.project-meta h3{font-size:clamp(3.25rem,16vw,4.5rem)}.project-type{max-width:15ch;margin-top:.8rem;font-size:1.45rem}.project-action{min-height:2.75rem;margin-top:1.75rem}.project-video-toolbar{min-height:3rem}.project-video-fallback{display:grid;gap:.75rem}.services-section,.contact-section{display:block;min-height:auto;padding:4.5rem 1.125rem}.section-heading-block h2{margin-top:2.5rem;font-size:clamp(3.25rem,15vw,4.75rem)}.services-list{margin-top:clamp(4rem,12vh,7rem)}.services-list li{padding-block:1.75rem;font-size:clamp(1.9rem,9vw,2.75rem)}.contact-section{padding-top:5rem;padding-bottom:5rem}.contact-intro{margin-top:clamp(4rem,12vh,7rem)}.contact-about{max-width:32rem;margin-bottom:3rem}.contact-intro h2{max-width:9ch;font-size:clamp(3.25rem,14.5vw,4.75rem)}.contact-cta{margin-top:2rem;font-size:1.75rem}.contact-channels{margin-top:clamp(5rem,15vh,8rem)}.contact-channels li{min-height:4.5rem}.contact-channel-link{overflow-wrap:anywhere}.site-footer{min-height:8rem;padding:2rem 1.125rem}.footer-meta{display:grid;gap:.25rem;text-align:right}.footer-meta span{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
