@import url('/assets/fonts.css');
:root{--paper:#f7f4ed;--ink:#1f1f1f;--olive:#6b735e;--taupe:#9c8f7f;--line:#d6d2c8;--muted:#65645c;--serif:'Playfair Display',Georgia,serif;--sans:Montserrat,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--sans)}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.35}button,a{touch-action:manipulation}img,video{display:block;max-width:100%}[hidden]{display:none!important}::selection{background:var(--olive);color:var(--paper)}:focus-visible{outline:2px solid #889b6b;outline-offset:5px}.wrap{width:calc(100% - 120px);max-width:1480px;margin:auto}.eyebrow,.small-label{text-transform:uppercase;font-size:11px;letter-spacing:2px;font-weight:500}.eyebrow{margin:0 0 27px}.skip{position:fixed;top:-100px;left:20px;background:var(--paper);padding:15px;z-index:50}.skip:focus{top:10px}.header{height:100px;padding:0 55px;display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--paper);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.brand{display:flex;flex-direction:column;line-height:1.1}.brand strong{font:600 34px/1.1 var(--serif);letter-spacing:-2px}.brand>span{font-size:9px;letter-spacing:2px;text-transform:uppercase;margin-top:8px}.header nav{display:flex;gap:42px;align-items:center;font-size:13px}.header nav a{padding:12px 0}.header nav a:hover{color:var(--olive)}.header nav a:last-child{border-bottom:1px solid var(--ink)}.header nav a:last-child span{margin-left:36px}.menu-button{display:none}.hero{position:relative;min-height:760px;height:calc(100svh - 100px);max-height:1080px;background:#272922;color:var(--paper);overflow:hidden}.hero>img{position:absolute;width:66%;height:100%;right:0;object-fit:cover;object-position:50% 38%;animation:hero-in 1.3s ease both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#252720 0%,#252720f0 19%,#252720a0 41%,#25272010 72%),linear-gradient(0deg,#1f211fa0,transparent 35%)}.hero-topline,.hero-bottom{position:absolute;left:60px;right:60px;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:10px;letter-spacing:1.8px;text-transform:uppercase}.hero-topline{top:30px;border-bottom:1px solid #ffffff30;padding-bottom:22px}.hero-copy{position:relative;padding:160px 60px 150px;max-width:1000px}.hero-copy>.eyebrow{font-size:10px;color:#d3d6c7;margin-bottom:33px}.hero h1{font:400 clamp(70px,7.3vw,120px)/1.06 var(--serif);letter-spacing:-4px;margin:0 0 32px}.hero h1 em{font-weight:400;color:#e2dac9}.hero-copy>p:not(.eyebrow){max-width:355px;color:#dbdcd4;font-size:15px;line-height:1.9;margin-bottom:37px}.hero-cta{display:inline-flex;gap:40px;align-items:center;font-size:13px;border-bottom:1px solid #deddd3;padding:9px 0 13px}.hero-cta>span{font-size:25px}.hero-cta:hover{color:#c3cfaf}.hero-bottom{bottom:28px}.hero-bottom>a{display:flex;gap:18px;align-items:center}.hero-bottom>a>span{font-size:27px}.hero-bottom>span:first-child{font-size:9px;letter-spacing:1px;color:#d9d9d0}.hero-side{position:absolute;right:20px;top:42%;writing-mode:vertical-rl;text-transform:uppercase;font-size:10px;letter-spacing:3px}.intro{padding:75px 0;display:grid;grid-template-columns:1fr 2fr 1fr;gap:35px;align-items:center;border-bottom:1px solid var(--line)}.intro>.eyebrow{margin:0;font-size:10px}.intro>p:not(.eyebrow){font:400 33px/1.45 var(--serif);margin:0}.intro em{color:var(--olive)}.intro>span{text-align:right;font-size:11px;line-height:1.8;max-width:180px;justify-self:end;color:var(--muted)}.portfolio{padding:105px 0 100px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:44px}h2{font:400 clamp(42px,4.5vw,72px)/1.15 var(--serif);letter-spacing:-2px;margin:0}h2 em{font-weight:400;color:var(--olive)}.section-heading .eyebrow{margin-bottom:22px}.section-heading>p{font-size:13px;color:var(--muted);line-height:1.85;min-width:215px;margin:0 0 7px}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:22px}.filters{display:flex;flex-wrap:wrap;gap:30px}.filters button{font-size:13px;display:flex;align-items:center;gap:9px;background:transparent;border:0;border-bottom:2px solid transparent;padding:21px 0 19px;color:var(--muted);margin-bottom:-1px}.filters button[aria-pressed=true]{color:var(--ink);border-color:var(--ink)}.filters sup{font-size:9px;align-self:flex-start}.gallery-toolbar>span{font-size:11px;color:var(--muted);white-space:nowrap}.reference-note{font-size:11px;color:var(--muted);margin:0 0 32px;line-height:1.8}.gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:75px 45px}.project-card{grid-column:span 6;min-width:0}.project-card:nth-child(3n+1){grid-column:span 7}.project-card:nth-child(3n+2){grid-column:span 5;padding-top:90px}.project-card:nth-child(3n+3){grid-column:3/11}.project-open{padding:0;background:none;border:0;width:100%;text-align:left;display:block}.project-image{position:relative;aspect-ratio:1.05;overflow:hidden;background:#e2ddd2;display:flex;align-items:center;justify-content:center}.project-card:nth-child(3n+2) .project-image{aspect-ratio:.9}.project-card:nth-child(3n+3) .project-image{aspect-ratio:1.7}.project-image>img,.project-image>video{height:100%;width:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.2,1),filter .8s}.project-open:hover .project-image>img{transform:scale(1.045);filter:brightness(.93)}.image-label{position:absolute;top:17px;left:17px;font-size:9px;letter-spacing:1px;text-transform:uppercase;padding:5px 10px;background:var(--paper)}.project-action{position:absolute;bottom:20px;right:20px;color:var(--ink);background:var(--paper);padding:10px 18px;font-size:12px;transform:translateY(4px);opacity:0;transition:opacity .3s,transform .3s}.project-open:hover .project-action,.project-open:focus-visible .project-action{opacity:1;transform:none}.project-meta{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:21px}.project-meta p{font-size:9px;letter-spacing:1.6px;color:var(--muted);margin:0 0 5px}.project-meta h3{font:400 31px/1.25 var(--serif);margin:0;letter-spacing:-.6px}.project-index{color:var(--taupe);font:italic 23px var(--serif)}.empty-gallery{grid-column:1/-1;padding:70px 20px;text-align:center;border-bottom:1px solid var(--line)}.empty-title{font:italic 35px var(--serif)}.empty-gallery>p:last-child{font-size:14px;color:var(--muted)}.loading,.load-error{grid-column:1/-1;font-size:14px;text-align:center;padding:50px 0}.statement{background:#e9e5db;border-block:1px solid #dcd6ca;overflow:hidden}.statement p{font:400 clamp(30px,5.5vw,88px)/1.25 var(--serif);letter-spacing:-2px;text-align:center;white-space:nowrap;margin:30px 0}.statement em{color:var(--olive)}.studio{padding:100px 0;display:grid;grid-template-columns:1fr 1.25fr;gap:100px}.studio-identity{border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.monogram{font:400 220px/.9 var(--serif);letter-spacing:-40px;padding:24px 0 12px;margin-left:-15px}.monogram>span{position:relative;top:35px;left:-15px;color:var(--olive)}.studio-identity>p:not(.eyebrow){font:400 28px/1.3 var(--serif);margin:50px 0 20px}.studio-identity>p em{color:var(--olive)}.studio-identity>.small-label{font-size:10px}.studio-copy h2{font-size:48px;line-height:1.25}.studio-copy>p{color:var(--muted);font-size:15px;line-height:1.95;margin:27px 0}.signature{margin-top:35px}.signature>p{font:italic 29px var(--serif);margin:0 0 7px}.signature>span{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}.services{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;margin-top:45px}.services>span{font-size:12px;padding:15px 0;border-top:1px solid var(--line)}.contact{background:var(--ink);color:var(--paper);padding-top:80px;overflow:hidden}.contact .eyebrow{color:#b6beaa}.contact-heading{display:flex;align-items:center;justify-content:space-between;gap:50px}.contact h2{font-size:clamp(46px,6vw,95px);line-height:1.15}.contact h2 em{color:#bdc6ac}.round-cta{border:1px solid #929783;width:150px;height:150px;flex-shrink:0;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;font-size:12px;margin-right:30px;transition:background .3s,color .3s}.round-cta>span:first-child{font-size:38px;line-height:1}.round-cta:hover{background:var(--paper);color:var(--ink)}.contact-links{display:flex;gap:60px;margin-top:60px}.contact-links a{min-width:200px;display:flex;flex-direction:column;gap:8px;border-top:1px solid #52544b;padding-top:20px}.contact-links small{text-transform:uppercase;letter-spacing:2px;font-size:10px;color:#aeb6a2}.contact-links span{font-size:13px}.footer-wordmark{font:500 clamp(80px,14vw,220px)/1.15 var(--serif);letter-spacing:-.07em;white-space:nowrap;margin:70px 0 35px;text-align:center}footer{border-top:1px solid #53544d;display:flex;justify-content:space-between;gap:25px;padding:25px 0;font-size:10px;color:#c1c2b9}.preview-banner{background:#5b644f;color:white;text-align:center;padding:10px 20px;font-size:12px}.preview-banner a{text-decoration:underline;margin-left:20px}.project-viewer{margin:0;width:100%;max-width:none;height:100dvh;max-height:none;padding:0;background:var(--paper);border:0;color:var(--ink)}.project-viewer[open]{display:flex;flex-direction:column}.project-viewer::backdrop{background:#171916}.viewer-toolbar{height:75px;padding:15px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);flex-shrink:0;font-size:12px}.viewer-toolbar>button{border:0;background:none;font-size:35px;width:44px;height:44px;line-height:1}.viewer-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 340px}.viewer-stage{background:#20221e;display:flex;flex-direction:column;min-height:0}.viewer-media{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:25px}.viewer-media img,.viewer-media video{max-height:100%;max-width:100%;height:auto;width:auto;object-fit:contain}.viewer-media iframe{width:100%;height:100%;border:0}.viewer-controls{display:flex;gap:35px;justify-content:center;align-items:center;color:var(--paper);padding:10px 0 18px;font-size:12px}.viewer-controls button{border:1px solid #a0a495;background:none;color:var(--paper);height:44px;width:44px;font-size:22px}.viewer-info{overflow:auto;padding:35px 28px}.viewer-info h2{font-size:35px;line-height:1.25;letter-spacing:-1px}.viewer-info>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-top:25px}.viewer-thumbnails{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:30px 0}.viewer-thumbnails button{position:relative;aspect-ratio:1;border:2px solid transparent;background:#dfdbd1;padding:0;overflow:hidden;opacity:.6}.viewer-thumbnails button[aria-pressed=true]{border-color:var(--olive);opacity:1}.viewer-thumbnails img,.viewer-thumbnails video{width:100%;height:100%;object-fit:cover}.thumb-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:white;font-size:24px;text-shadow:0 0 10px black}.video-placeholder{font-size:65px;color:var(--olive);display:grid;place-items:center;width:100%;height:100%;background:#dfdbd1}.text-button{background:none;border:0;border-bottom:1px solid var(--ink);padding:8px 0;font-size:12px}.media-error{font-size:14px;color:#aaa;padding:25px}.viewer-info #share-status{font-size:11px}.menu-button{background:none;border:0;font-size:13px;padding:12px}
@keyframes hero-in{from{transform:scale(1.035);opacity:.5}to{transform:none;opacity:1}}
@media(min-width:1800px){.hero-copy{padding-left:max(60px,calc((100vw - 1480px)/2));max-width:1200px}}
@media(max-width:1100px){.wrap{width:calc(100% - 70px)}.header{padding:0 35px}.hero{min-height:690px}.hero-copy{padding:140px 35px 120px}.hero-topline,.hero-bottom{left:35px;right:35px}.hero h1{font-size:83px}.intro{grid-template-columns:1fr 2fr}.intro>span{grid-column:2;justify-self:start;text-align:left}.intro>p:not(.eyebrow){font-size:29px}.gallery{gap:55px 30px}.project-meta h3{font-size:26px}.studio{gap:45px}.studio-copy h2{font-size:40px}.viewer-layout{grid-template-columns:minmax(0,1fr) 285px}.viewer-info{padding:25px 20px}.contact-links{gap:35px}.contact-links a{min-width:0;flex:1}}
@media(max-width:760px){html{scroll-padding-top:78px}.wrap{width:calc(100% - 40px)}.header{height:80px;padding:0 20px;gap:12px}.brand strong{font-size:28px;letter-spacing:-1.5px}.brand>span{font-size:8px;letter-spacing:1.4px}.menu-button{display:block;padding-right:0;white-space:nowrap}.header nav{display:none;position:absolute;left:0;right:0;top:80px;flex-direction:column;align-items:stretch;background:var(--paper);padding:20px;gap:5px;border-bottom:1px solid var(--line)}.header nav.open{display:flex}.header nav a{font-size:16px}.header nav a:last-child{border:0}.hero{height:calc(100svh - 80px);min-height:700px;max-height:950px}.hero>img{width:100%;object-position:57% 40%}.hero-shade{background:linear-gradient(90deg,#1f211f80,transparent 80%),linear-gradient(0deg,#1b2019f5 0%,#20231f75 50%,#20231f10 80%)}.hero-topline{left:20px;right:20px;top:22px;font-size:8px;letter-spacing:1px;padding-bottom:16px}.hero-topline>span:last-child{display:none}.hero-copy{position:absolute;bottom:105px;padding:0 20px;max-width:100%}.hero-copy>.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:17px}.hero h1{font-size:clamp(49px,12vw,82px);letter-spacing:-2.3px;margin-bottom:22px}.hero-copy>p:not(.eyebrow){font-size:13px;line-height:1.8;max-width:315px;margin-bottom:20px}.hero-cta{font-size:12px;padding:5px 0 10px;gap:30px}.hero-side{display:none}.hero-bottom{left:20px;right:20px;bottom:20px;display:flex;flex-wrap:wrap;gap:9px;font-size:8px}.hero-bottom>span:last-child{display:none}.hero-bottom>a{margin-left:auto;font-size:8px;letter-spacing:1px;gap:10px}.hero-bottom>span:first-child{font-size:8px}.intro{padding:43px 0;grid-template-columns:1fr;gap:18px}.intro>.eyebrow{font-size:9px}.intro>p:not(.eyebrow){font-size:27px;letter-spacing:-.3px}.intro>span{grid-column:auto;font-size:10px}.portfolio{padding:65px 0}.section-heading{display:block;margin-bottom:25px}.section-heading .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:20px}.section-heading h2{font-size:44px;letter-spacing:-1.7px}.section-heading>p{font-size:12px;margin:20px 0 0}.gallery-toolbar{gap:0}.filters{gap:20px}.filters button{font-size:11px;padding:17px 0;gap:5px}.filters sup{font-size:8px}.gallery-toolbar>span{display:none}.reference-note{font-size:10px;line-height:1.8}.gallery{grid-template-columns:1fr;gap:38px}.project-card,.project-card:nth-child(3n+1),.project-card:nth-child(3n+2),.project-card:nth-child(3n+3){grid-column:auto;padding-top:0}.project-image,.project-card:nth-child(3n+2) .project-image{aspect-ratio:4/5}.project-card:nth-child(3n+3) .project-image{aspect-ratio:1.15}.project-action{opacity:1;transform:none;bottom:14px;right:14px;font-size:10px;padding:8px 12px}.project-meta h3{font-size:27px}.project-meta p{font-size:8px;letter-spacing:1.2px}.project-meta{gap:15px;padding-top:17px}.image-label{font-size:8px;top:14px;left:14px}.statement p{font-size:clamp(24px,6.3vw,45px);letter-spacing:-1px;margin:23px 0}.studio{padding:65px 0;grid-template-columns:1fr;gap:42px}.studio-identity{border-right:0;border-bottom:1px solid var(--line);padding-bottom:28px}.studio-identity .eyebrow{font-size:9px}.monogram{font-size:145px;letter-spacing:-27px;margin-left:0;padding:8px 0}.monogram>span{left:-7px;top:24px}.studio-identity>p:not(.eyebrow){font-size:26px;margin:30px 0 17px}.studio-copy h2{font-size:39px;letter-spacing:-1.5px}.studio-copy>p{font-size:14px;line-height:1.95;margin:25px 0}.signature>p{font-size:27px}.signature>span{font-size:9px}.services{gap:0 15px}.services>span{font-size:11px;padding:13px 0}.contact{padding-top:55px}.contact .eyebrow{font-size:9px;letter-spacing:1.3px;max-width:260px;line-height:1.8}.contact-heading{display:block}.contact h2{font-size:clamp(37px,9.7vw,65px);letter-spacing:-1.5px}.round-cta{width:100px;height:100px;margin:30px 0 0 auto;font-size:10px;gap:3px}.round-cta>span:first-child{font-size:30px}.contact-links{margin-top:30px;flex-direction:column;gap:20px}.contact-links a{padding-top:14px;gap:4px}.contact-links small{font-size:9px}.contact-links span{font-size:12px}.footer-wordmark{font-size:13.3vw;margin:45px 0 25px;letter-spacing:-.07em}footer{font-size:9px;flex-wrap:wrap;gap:10px 25px;padding:20px 0 30px}footer>span:nth-child(2){order:3;width:100%;font-size:8px}footer>a{margin-left:auto}.viewer-toolbar{height:63px;padding:10px 15px}.viewer-toolbar>span{display:none}.viewer-toolbar>a{font-size:11px}.viewer-layout{display:flex;flex-direction:column;overflow:auto;min-height:0}.viewer-stage{min-height:55dvh;height:55dvh;flex-shrink:0}.viewer-media{padding:12px}.viewer-info{overflow:visible;padding:25px 20px}.viewer-info h2{font-size:29px}.viewer-info .eyebrow{font-size:9px;margin-bottom:14px}.viewer-info>p:not(.eyebrow){font-size:12px;margin-top:18px}.viewer-thumbnails{display:flex;flex-wrap:wrap;margin:20px 0}.viewer-thumbnails button{width:65px;height:65px}.viewer-controls{padding:9px;gap:25px}.viewer-controls button{width:38px;height:38px}.preview-banner{font-size:10px;padding:10px}.preview-banner a{display:block;margin:4px 0 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
