@font-face{font-family:Instrument;src:url('/assets/fonts/instrument-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Instrument;src:url('/assets/fonts/instrument-italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:DM;src:url('/assets/fonts/dm-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:DM;src:url('/assets/fonts/dm-medium.ttf') format('truetype');font-weight:500 700;font-display:swap}
:root{--paper:#f3f2eb;--ink:#293428;--muted:#697064;--line:#d2d5c9;--forest:#2c3b2c;--lime:#dae5b1;--serif:Instrument,Georgia,serif;--sans:DM,Arial,sans-serif;--gutter:clamp(24px,4.2vw,80px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}em{font-weight:400}::selection{background:#d9e7aa;color:#243022}:focus-visible{outline:2px solid currentColor;outline-offset:6px}.skip-link{position:fixed;z-index:50;top:8px;left:8px;transform:translateY(-150%);padding:12px 20px;background:var(--paper);color:var(--ink)}.skip-link:focus{transform:none}
.site-header{height:110px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);position:relative;z-index:5;border-bottom:1px solid var(--line);gap:32px}.site-header.on-image{position:absolute;inset:0 0 auto;color:#fff;border-bottom:1px solid #ffffff38}.wordmark{font:400 52px/.8 var(--serif);letter-spacing:-2.5px;display:block;padding-bottom:7px}.wordmark span{color:inherit}.desktop-nav{display:flex;gap:38px;margin-left:80px}.desktop-nav a{font-size:14px;position:relative;padding:8px 0}.desktop-nav a:after{content:'';position:absolute;left:0;bottom:3px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}.contact-link{border:1px solid currentColor;border-radius:100px;padding:11px 27px;font-size:14px;transition:background .3s,color .3s}.contact-link:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.on-image .contact-link:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.menu-toggle{display:none;background:transparent;border:0;width:44px;height:44px;padding:12px 3px}.menu-toggle span{display:block;height:1px;background:currentColor;margin:7px 0}.mobile-menu{border:0;padding:28px var(--gutter);margin:0;background:var(--forest);color:var(--paper);width:100%;max-width:none;height:100dvh;max-height:none}.mobile-menu::backdrop{background:var(--forest)}.menu-head{display:flex;justify-content:space-between;align-items:center}.menu-close{background:transparent;border:0;padding:10px;font-size:14px}.menu-close span{font-size:26px;margin-left:12px}.mobile-menu nav{display:flex;flex-direction:column;gap:2px;margin:64px 0 40px;font:46px/1.4 var(--serif)}.mobile-menu p{font-size:14px;color:#d6decd}
.hero{height:900px;height:min(950px,100svh);min-height:690px;position:relative;isolation:isolate;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0;z-index:-3;object-position:50% 57%;animation:hero-settle 1.8s ease-out both}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(12,25,16,.33),rgba(16,30,20,.12) 35%,rgba(13,24,15,.57) 100%)}.hero-topline{position:absolute;top:147px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.4px}.hero-copy{position:absolute;left:var(--gutter);right:var(--gutter);bottom:130px;display:flex;align-items:flex-end;justify-content:space-between;gap:40px}.hero h1{font:clamp(88px,9.8vw,170px)/.94 var(--serif);letter-spacing:-.027em;animation:text-in 1s .15s both}.hero h1 em{padding-right:10px}.hero-intro{padding:0 3.4vw 6px 0;font-size:16px;animation:text-in 1s .4s both}.hero-intro p{line-height:1.6;margin-bottom:29px}.light-link{font-size:14px;border-bottom:1px solid #ffffff9a;padding-bottom:8px;transition:border-color .2s}.light-link:hover{border-color:#fff}.hero-bottom{position:absolute;left:var(--gutter);right:var(--gutter);bottom:28px;padding-top:23px;border-top:1px solid #ffffff55;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1px}.scroll-link{display:flex;align-items:center;gap:16px}.scroll-track{display:inline-block;height:25px;width:1px;background:#ffffff45;position:relative;overflow:hidden}.scroll-track:after{content:'';height:12px;width:1px;position:absolute;background:#fff;animation:scroll-line 2.5s ease-in-out infinite}.hero-bottom>span:last-child{font-variant-numeric:tabular-nums}
.section-pad{padding:110px var(--gutter)}.eyebrow{font-size:12px;line-height:1.4;letter-spacing:1.7px;display:block}.small-index{font-size:12px}.display{font:clamp(50px,5.5vw,88px)/1.04 var(--serif);letter-spacing:-.018em}.display em{color:inherit}.intro{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-top:130px;padding-bottom:140px}.section-label{display:flex;flex-direction:column;gap:24px;padding-top:12px}.intro-content .display{max-width:900px}.intro-bottom{display:flex;align-items:flex-end;gap:60px;margin-top:38px}.intro-bottom p{max-width:430px;color:var(--muted);font-size:16px}.text-link{display:inline-flex;flex-direction:column;position:relative;width:max-content;flex-shrink:0;padding-bottom:8px;font-size:14px;line-height:1.4}.link-line{height:1px;position:absolute;bottom:0;left:0;width:100%;background:currentColor;transition:transform .3s;transform-origin:left}.text-link:hover .link-line{transform:scaleX(.5)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:54px}.section-heading .eyebrow{margin-bottom:23px}.section-heading .text-link{margin-bottom:7px}.selected-work{padding-top:0;padding-bottom:125px}.project-grid{display:grid;grid-template-columns:1.4fr 1fr;align-items:start;gap:7.5vw}.project-card-small{padding-top:150px}.project-image{position:relative;overflow:hidden;background:#ccd1c2;aspect-ratio:1.1}.project-card-small .project-image{aspect-ratio:.86}.project-image img{transition:transform .9s cubic-bezier(.22,.7,.3,1),filter .9s}.project-card:hover .project-image img{transform:scale(1.045);filter:brightness(.88)}.project-open{position:absolute;bottom:24px;left:24px;border-radius:100px;padding:11px 20px;background:var(--paper);font-size:13px;opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s}.project-card:hover .project-open,.project-card:focus-visible .project-open{opacity:1;transform:none}.project-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:19px}.project-meta h3{font:32px/1.1 var(--serif)}.project-meta>span{font-size:10px;letter-spacing:.9px;text-align:right;max-width:180px;line-height:1.7}.project-aside{font:38px/1.2 var(--serif);margin:50px 0 0;color:var(--muted)}.philosophy{display:grid;grid-template-columns:1fr 1fr;background:var(--forest);color:var(--paper);min-height:680px}.philosophy-image{min-height:680px}.philosophy-copy{padding:90px clamp(35px,6vw,100px);align-self:center}.philosophy-copy .eyebrow{margin-bottom:50px;color:var(--lime)}.philosophy-copy .display{font-size:clamp(50px,5.3vw,84px)}.philosophy-copy p{max-width:420px;color:#d0d7c9;margin:34px 0}.contact-cta{padding-top:105px;padding-bottom:110px;background:#e7ebdb}.cta-row{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-top:35px}.cta-row .display{font-size:clamp(75px,9vw,140px);line-height:.95}.cta-aside{padding-right:4vw;padding-bottom:6px}.cta-aside p{font-size:16px;margin-bottom:28px}.pill-button{border:1px solid var(--ink);background:transparent;border-radius:50px;padding:15px 28px;display:inline-flex;justify-content:center;align-items:center;font-size:14px;transition:background .3s,color .3s}.pill-button:hover{background:var(--ink);color:var(--paper)}.pill-button.solid{background:var(--ink);color:var(--paper)}.pill-button.solid:hover{background:#465940}
.site-footer{padding:65px var(--gutter) 24px;background:var(--forest);color:var(--paper);overflow:hidden}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px}.footer-top>p:first-child{font:32px/1.1 var(--serif)}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px;font-size:14px}.footer-nav a:hover{text-decoration:underline;text-underline-offset:5px}.footer-location{font-size:13px;justify-self:end;color:#d0d7c9}.footer-wordmark{display:block;font:clamp(150px,26.4vw,460px)/.92 var(--serif);letter-spacing:-.046em;margin:68px 0 35px;width:max-content}.footer-wordmark span{color:var(--lime)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;border-top:1px solid #ffffff30;padding-top:23px;color:#d0d7c9}.back-top{font-size:12px;line-height:1.6;border:0;background:none;padding:6px 0}.back-top span{padding-left:10px}
.reveal{opacity:1}.js-reveal .reveal:not(.revealed){opacity:0;transform:translateY(24px)}.js-reveal .reveal{transition:opacity .8s ease,transform .9s cubic-bezier(.2,.65,.3,1)}
.page-heading{padding-top:85px;padding-bottom:80px}.page-heading>.eyebrow{margin-bottom:42px}.page-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}.page-heading h1{font-size:clamp(70px,8.6vw,136px);line-height:.96}.page-heading-row>p{max-width:350px;font-size:16px;color:var(--muted);margin-bottom:6px}.work-list{padding-top:0}.work-toolbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:22px;gap:25px;margin-bottom:50px}.project-filters{display:flex;gap:12px 28px;flex-wrap:wrap}.project-filters button{border:0;background:none;padding:5px 0;color:var(--muted);font-size:14px;border-bottom:1px solid transparent}.project-filters button[aria-pressed=true]{color:var(--ink);border-color:var(--ink)}.project-filters button span{font-size:12px;margin-left:6px}.project-filters button:hover{color:var(--ink)}#project-count{font-size:12px;color:var(--muted);flex-shrink:0}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px 5vw;align-items:start}.work-grid .project-card:nth-child(2){padding-top:140px}.work-grid .project-card:nth-child(3){width:100%;grid-column:1/-1;display:grid;grid-template-columns:1.4fr 1fr;column-gap:5vw}.work-grid .project-card:nth-child(3) .project-image{grid-row:1/3;aspect-ratio:1.5}.work-grid .project-card:nth-child(3) .project-meta{align-self:end;display:block;margin-top:0}.work-grid .project-card:nth-child(3) .project-meta span{display:block;margin-top:20px;text-align:left}.work-grid .project-card:nth-child(3) h2{font-size:60px}.work-grid .project-image{aspect-ratio:.92}.project-meta h2{font:36px/1.1 var(--serif)}.project-card-foot{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:13px;margin-top:20px}.work-grid .project-card:nth-child(3) .project-card-foot{align-self:start;margin-top:30px}.work-grid.is-filtered .project-card{padding-top:0;grid-column:auto;display:block;width:auto}.work-grid.is-filtered .project-card .project-meta{margin-top:19px;display:flex}.work-grid.is-filtered .project-card .project-meta h2{font-size:36px}.work-grid.is-filtered .project-card .project-meta span{margin-top:0}.work-grid.is-filtered .project-card .project-image{aspect-ratio:1.1}.work-note{margin-top:65px;font-size:13px;color:var(--muted);max-width:540px}.compact-contact{padding:38px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);background:#e7ebdb}.compact-contact p{font:38px/1.2 var(--serif)}
.project-heading{padding-top:50px;padding-bottom:55px}.breadcrumb{display:flex;justify-content:space-between;align-items:center;margin-bottom:50px}.breadcrumb>span{font-size:12px;letter-spacing:1px}.project-heading h1{font-size:clamp(76px,10vw,164px);line-height:1}.project-heading-meta{display:flex;gap:50px;margin-top:30px;font-size:13px;color:var(--muted)}.project-heading-meta span:last-child{margin-left:auto}.image-zoom{display:block;border:0;padding:0;background:var(--forest);width:100%;cursor:zoom-in;position:relative;overflow:hidden}.image-zoom img{transition:transform .8s}.image-zoom:hover img{transform:scale(1.02)}.image-zoom>span{position:absolute;bottom:25px;right:var(--gutter);font-size:12px;color:#fff;background:#15201088;padding:10px 17px;border-radius:50px;backdrop-filter:blur(6px)}.detail-cover{height:clamp(430px,55vw,820px)}.detail-cover img{object-position:50% 55%}.project-story{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-bottom:85px}.story-lead{font-size:20px;line-height:1.6;margin-top:37px;max-width:700px}.story-body{font-size:16px;color:var(--muted);max-width:630px;margin-top:25px}.project-details{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px;border-top:1px solid var(--line);gap:28px;padding-top:22px}.project-details span{font-size:12px;color:var(--muted)}.project-details p{margin-top:20px;font-size:14px}.project-photo-section{padding-top:0}.secondary-photo{height:650px;max-height:70vw}.photo-caption{display:flex;justify-content:space-between;gap:30px;font-size:12px;color:var(--muted);margin-top:18px}.next-project{background:#e7ebdb}.next-project>a{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:30px}.next-project h2{transition:transform .4s}.next-project>a:hover h2{transform:translateX(12px)}.lightbox{max-width:100%;max-height:100%;width:100vw;height:100dvh;border:0;background:#162015f5;color:var(--paper);margin:0;padding:28px var(--gutter)}.lightbox::backdrop{background:#162015}.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:1px}.lightbox-close{color:inherit;background:none;border:0;padding:8px 0 8px 24px;font-size:14px}.lightbox-close span{font-size:23px;padding-left:16px}.lightbox figure{margin:20px 0 0;height:calc(100% - 90px);display:flex;flex-direction:column;gap:17px;align-items:center}.lightbox figure img{object-fit:contain;min-height:0;flex:1}.lightbox figcaption{font-size:13px;text-align:center}
.studio-visual{padding:0 var(--gutter)}.studio-visual-photo{height:clamp(350px,43vw,740px)}.studio-visual-caption{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:25px;margin-top:15px}.studio-prose{max-width:660px;margin-top:40px;columns:2;column-gap:32px;color:var(--muted)}.studio-prose p{margin-bottom:20px;font-size:16px;break-inside:avoid}.studio-values{background:#e7ebdb}.studio-values>.eyebrow{margin-bottom:55px}.value-row{display:grid;grid-template-columns:.35fr 1.1fr 1fr;gap:30px;border-top:1px solid #c7cebb;padding:35px 0;align-items:start}.value-row>span{font-size:12px;padding-top:10px}.value-row h3{font:clamp(36px,4.6vw,64px)/1.05 var(--serif)}.value-row p{font-size:16px;max-width:380px;color:#5b6653}.approach-image{position:relative;height:540px}.approach-image img{object-position:50% 45%;filter:brightness(.6)}.image-pullquote{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;font:clamp(42px,6vw,85px)/1.08 var(--serif);padding:30px}.services .section-heading{padding-bottom:30px}.services .section-heading>p{font-size:16px;color:var(--muted)}.service-item{border-top:1px solid var(--line);padding:25px 0}.service-item:last-child{border-bottom:1px solid var(--line)}.service-item summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:75px 1fr 35px;align-items:center;gap:20px;min-height:80px}.service-item summary::-webkit-details-marker{display:none}.service-number{font-size:12px}.service-item h2{font:clamp(35px,4.8vw,66px)/1.1 var(--serif)}.service-toggle{width:24px;height:24px;position:relative}.service-toggle:before,.service-toggle:after{content:'';height:1px;width:24px;background:var(--ink);position:absolute;top:12px;left:0;transition:transform .3s}.service-toggle:after{transform:rotate(90deg)}.service-item[open] .service-toggle:after{transform:rotate(0)}.service-content{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin:25px 55px 20px 95px}.service-content h3{font:30px/1.25 var(--serif);max-width:300px}.service-content p{font-size:16px;color:var(--muted)}.service-content ul{list-style:none;margin:24px 0 0;padding:0;font-size:14px}.service-content li{padding:8px 0;border-bottom:1px solid var(--line)}.process{background:var(--forest);color:var(--paper)}.process .eyebrow{color:var(--lime)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:75px}.process-grid article{border-top:1px solid #ffffff40;padding-top:20px}.process-grid article>span{font-size:12px;letter-spacing:1px;color:var(--lime)}.process-grid h3{font:40px/1.1 var(--serif);margin:45px 0 20px}.process-grid p{font-size:15px;color:#d0d7c9;max-width:350px}
.contact-page{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-top:80px;padding-bottom:100px}.contact-intro>.eyebrow{margin-bottom:35px}.contact-intro .display{font-size:clamp(60px,6.2vw,96px)}.contact-intro>p{font-size:16px;color:var(--muted);margin-top:35px}.contact-picture{width:60%;height:280px;margin-top:55px}.contact-picture img{object-position:50% 63%}.contact-location{display:flex;justify-content:space-between;align-items:start;gap:30px;margin-top:22px}.contact-location>span{font-size:11px;letter-spacing:1px}.contact-location p{font:26px/1.2 var(--serif);color:var(--muted)}.form-wrap{padding-top:10px}#enquiry-form>h2{font:36px/1.2 var(--serif)}.form-intro{font-size:12px;margin:12px 0 38px;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.form-field{margin-bottom:25px;min-width:0}.form-field label{display:block;font-size:14px;margin-bottom:9px}.form-field label>span{font-size:12px;color:var(--muted)}input:not([type=radio]),textarea{border:0;border-bottom:1px solid #aeb6a5;background:none;border-radius:0;color:var(--ink);width:100%;padding:12px 0;font-size:15px;line-height:1.5}input::placeholder,textarea::placeholder{color:#798173;opacity:1;font-size:14px}input:focus,textarea:focus{outline:none;border-bottom:2px solid var(--ink);padding-bottom:11px}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:#9a3a26}textarea{resize:vertical;min-height:120px}.field-error{font-size:12px;color:#943824;display:block;margin-top:7px;line-height:1.5}.field-error:empty{display:none}.service-choice{padding:0;border:0;margin:3px 0 35px;min-width:0}.service-choice legend{font-size:14px;margin-bottom:15px}.choice-options{display:flex;flex-wrap:wrap;gap:10px}.choice-options label{position:relative;cursor:pointer}.choice-options input{opacity:0;position:absolute;width:1px;height:1px}.choice-options span{display:block;border:1px solid var(--line);border-radius:40px;padding:10px 16px;font-size:13px;transition:background .2s,border-color .2s}.choice-options label:hover span{border-color:var(--ink)}.choice-options input:checked+span{background:var(--ink);color:var(--paper);border-color:var(--ink)}.choice-options input:focus-visible+span{outline:2px solid var(--ink);outline-offset:4px}.form-submit{margin-top:34px}.form-submit .pill-button{min-width:180px}.demo-note{font-size:12px;color:var(--muted);margin-top:16px}.form-status{font-size:13px;color:#943824;margin-top:15px}.form-success{border-top:1px solid var(--line);padding-top:35px}.form-success .display{margin:55px 0 30px;font-size:80px;overflow-wrap:anywhere}.form-success>p:not(.demo-note){font-size:16px;color:var(--muted)}.enquiry-preview{margin:35px 0;border-top:1px solid var(--line);font-size:14px}.enquiry-preview>div{display:flex;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding:15px 0}.enquiry-preview dt{color:var(--muted)}.enquiry-preview dd{margin:0;text-align:right;overflow-wrap:anywhere}.reset-form{margin-top:30px}.not-found{min-height:70vh}.not-found h1{margin:40px 0}.not-found p{margin-bottom:30px;max-width:400px}[hidden]{display:none!important}
@keyframes hero-settle{from{transform:scale(1.045)}to{transform:scale(1)}}@keyframes text-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes scroll-line{0%{transform:translateY(-12px)}70%,100%{transform:translateY(28px)}}
@media(min-width:1700px){.intro,.selected-work{max-width:1900px;margin:auto}}
@media(max-width:1100px){.desktop-nav{margin-left:0;gap:25px}.hero{min-height:700px}.hero-copy{bottom:125px}.hero-intro{padding-right:0}.intro{grid-template-columns:.65fr 2fr;gap:25px}.intro-bottom{gap:35px}.project-meta{flex-direction:column;gap:8px}.project-meta>span{text-align:left;max-width:none}.philosophy-copy{padding:70px 40px}.philosophy,.philosophy-image{min-height:620px}.cta-aside{padding-right:0}.footer-top{grid-template-columns:1fr 1fr}.footer-location{display:none}}
@media(max-width:760px){.site-header{height:88px;gap:24px}.wordmark{font-size:44px}.desktop-nav{display:none}.contact-link{margin-left:auto;font-size:12px;padding:8px 19px}.menu-toggle{display:block}.hero{height:calc(100svh - 16px);min-height:680px;max-height:940px}.hero-topline{top:117px;font-size:10px;letter-spacing:1px}.hero-topline span:last-child{display:none}.hero-image{object-position:57% 50%}.hero-shade{background:linear-gradient(180deg,#0c191057,#101e1433 28%,#0d180f99)}.hero-copy{display:block;bottom:107px}.hero h1{font-size:clamp(70px,13.8vw,108px);line-height:.97;letter-spacing:-.023em}.hero-intro{margin-top:30px;display:flex;align-items:end;justify-content:space-between;gap:20px;font-size:13px}.hero-intro p{margin:0}.light-link{font-size:12px;padding-bottom:4px}.hero-bottom{bottom:24px;padding-top:17px;font-size:9px;letter-spacing:.75px}.hero-bottom>span:first-child{display:none}.scroll-link{gap:12px}.section-pad{padding:75px var(--gutter)}.intro{display:block;padding-top:80px;padding-bottom:80px}.section-label{flex-direction:row;justify-content:space-between;margin-bottom:40px;padding:0}.eyebrow{font-size:11px;letter-spacing:1.3px}.display{font-size:clamp(45px,8.7vw,65px)}.intro-bottom{display:block;margin-top:28px}.intro-bottom p{font-size:15px;line-height:1.75;max-width:480px}.intro-bottom .text-link{margin-top:28px}.section-heading{display:block;margin-bottom:32px}.section-heading .eyebrow{margin-bottom:18px}.section-heading .text-link{margin-top:25px}.selected-work{padding-top:0;padding-bottom:75px}.project-grid{display:block}.project-card{display:block}.project-card-small{padding-top:44px;margin-left:12%}.project-card-large{margin-right:0}.project-card-small .project-image{aspect-ratio:1}.project-meta h3{font-size:29px}.project-meta{margin-top:15px;gap:6px}.project-meta>span{font-size:10px}.project-open{display:none}.project-aside{font-size:32px;margin-top:30px}.philosophy{grid-template-columns:1fr}.philosophy-image{min-height:0;height:460px}.philosophy-copy{padding:55px var(--gutter) 65px}.philosophy-copy .eyebrow{margin-bottom:32px}.philosophy-copy .display{font-size:58px}.philosophy-copy p{font-size:15px;margin:26px 0}.cta-row{display:block;margin-top:30px}.cta-row .display{font-size:clamp(74px,14vw,104px)}.cta-aside{margin-top:35px}.cta-aside p{font-size:15px;margin-bottom:25px}.site-footer{padding:45px var(--gutter) 20px}.footer-top{grid-template-columns:1fr 1fr;gap:20px}.footer-top>p:first-child{font-size:27px}.footer-nav{grid-template-columns:1fr;font-size:13px;gap:6px;justify-self:end}.footer-wordmark{font-size:26vw;margin:60px 0 30px}.footer-bottom{flex-wrap:wrap;gap:12px;font-size:10px}.footer-bottom>span:nth-child(2){order:3;flex-basis:100%}.back-top{margin-left:auto;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-reveal .reveal:not(.revealed){opacity:1;transform:none}::view-transition-group(*),::view-transition-new(*),::view-transition-old(*){animation:none!important}}

@media(max-width:1100px){.page-heading-row>p{font-size:15px;max-width:260px}.contact-page{gap:5vw}.contact-intro .display{font-size:64px}.contact-location{display:block}.contact-location p{margin-top:18px}.form-row{gap:18px}.choice-options{gap:8px}.choice-options span{font-size:12px;padding:10px 13px}.work-grid .project-card:nth-child(3) h2{font-size:48px}.service-content{gap:40px;margin-right:0}.project-heading-meta{gap:25px}.project-story{grid-template-columns:.65fr 2fr}.studio-prose{columns:1}}
@media(max-width:760px){.page-heading{padding-top:58px;padding-bottom:50px}.page-heading>.eyebrow{margin-bottom:35px}.page-heading-row{display:block}.page-heading h1{font-size:clamp(62px,12.3vw,88px)}.page-heading-row>p{margin-top:30px;font-size:15px;max-width:400px}.work-list{padding-top:0}.work-toolbar{align-items:flex-start;gap:15px;margin-bottom:32px}.project-filters{gap:10px 20px}.project-filters button{font-size:13px}.project-filters button span{font-size:11px}#project-count{padding-top:7px;font-size:11px}.work-grid{grid-template-columns:1fr;gap:44px}.work-grid .project-card:nth-child(2){padding-top:0}.work-grid .project-card:nth-child(3){display:block;grid-column:auto}.work-grid .project-card:nth-child(3) .project-meta{margin-top:19px}.work-grid .project-card:nth-child(3) .project-meta span{margin-top:8px}.work-grid .project-card:nth-child(3) h2,.project-meta h2{font-size:34px}.work-grid .project-image,.work-grid .project-card:nth-child(3) .project-image{aspect-ratio:1.05}.work-grid .project-card:nth-child(3) .project-card-foot{margin-top:20px}.work-note{font-size:12px;line-height:1.7;margin-top:45px}.compact-contact{padding:32px var(--gutter);align-items:flex-start;flex-direction:column}.compact-contact p{font-size:34px}.compact-contact .pill-button{padding:11px 24px}.project-heading{padding-top:35px;padding-bottom:32px}.breadcrumb{margin-bottom:38px}.project-heading h1{font-size:clamp(56px,11.6vw,88px)}.project-heading-meta{font-size:12px;gap:12px 20px;flex-wrap:wrap;margin-top:22px}.project-heading-meta span:last-child{margin-left:0}.detail-cover{height:480px;max-height:70svh}.project-story{display:block;padding-top:65px;padding-bottom:55px}.story-lead{font-size:18px;margin-top:28px}.story-body{font-size:15px;margin-top:23px}.project-details{gap:20px;margin-top:35px;grid-template-columns:1fr}.project-details>div{display:flex;align-items:baseline;gap:25px}.project-details p{margin:0}.project-photo-section{padding-top:0;padding-bottom:60px}.secondary-photo{height:390px;max-height:none}.photo-caption{display:block;font-size:12px;line-height:1.6}.photo-caption>span{display:block}.photo-caption>span+span{margin-top:8px;font-style:italic}.next-project>a{display:block}.next-project .display{margin-bottom:25px}.lightbox{padding:20px var(--gutter)}.lightbox-toolbar{font-size:10px}.studio-visual{padding:0 var(--gutter)}.studio-visual-photo{height:380px}.studio-visual-caption{font-size:12px;display:block}.studio-visual-caption>span:last-child{display:none}.studio-prose{margin-top:30px;columns:1}.studio-prose p{font-size:15px}.studio-values>.eyebrow{margin-bottom:35px}.value-row{grid-template-columns:30px 1fr;gap:20px;padding:28px 0}.value-row h3{font-size:40px}.value-row p{grid-column:2;font-size:15px;max-width:450px}.approach-image{height:410px}.image-pullquote{font-size:44px}.services .section-heading{padding:0}.services .section-heading>p{margin-top:24px;font-size:15px}.service-item{padding:18px 0}.service-item summary{grid-template-columns:25px 1fr 22px;gap:12px;min-height:64px}.service-item h2{font-size:32px}.service-content{display:block;margin:18px 0 10px 37px}.service-content h3{font-size:28px;margin-bottom:22px}.service-content p{font-size:15px}.service-content ul{font-size:13px}.process .section-heading>p{margin-top:28px;font-size:15px}.process-grid{display:block;margin-top:45px}.process-grid article+article{margin-top:40px}.process-grid h3{margin:28px 0 17px;font-size:37px}.process-grid p{max-width:500px}.contact-page{grid-template-columns:1fr;gap:50px;padding-top:55px}.contact-intro .display{font-size:68px}.contact-intro>p{font-size:15px;margin-top:25px}.contact-picture,.contact-location{display:none}.form-wrap{padding-top:30px;border-top:1px solid var(--line)}#enquiry-form>h2{font-size:32px}.form-intro{margin-bottom:30px}.form-field label{font-size:13px}.form-row{gap:20px}.choice-options span{font-size:13px}.form-success .display{font-size:68px;margin-top:40px}.form-success{border:0;padding:0}}
@media(max-width:380px){.hero h1{font-size:69px}.hero-intro{font-size:12px;gap:15px}.hero-intro .light-link{font-size:12px}.contact-link{padding:8px 15px}.site-header{gap:15px}.form-row{grid-template-columns:1fr;gap:0}.contact-intro .display{font-size:60px}.project-filters{gap:8px 16px}.footer-top{grid-template-columns:1fr 1fr}}
/* Secondary metadata remains legible, even in a narrow viewport. */
.hero-bottom,.hero-topline,.eyebrow,.project-meta>span,.project-card-foot,.footer-bottom,.back-top,.contact-location>span,.lightbox-toolbar,.project-filters button span,#project-count{font-size:max(12px,.75rem)}
.contact-intro .display em{white-space:nowrap}
@media(min-width:761px) and (max-width:1100px){.contact-intro .display{font-size:clamp(48px,6vw,60px)}}
@media(max-width:760px){.contact-intro .display{font-size:clamp(44px,14.5vw,68px)}}

.project-facts{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:24px 30px;margin:35px 0 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.project-facts dt,.service-terms dt{font-size:12px;color:var(--muted);margin-bottom:6px}
.project-facts dd,.service-terms dd{margin:0;font-size:16px;line-height:1.5}
.project-facts .fact-scope{grid-column:1/-1}
.story-subheading{font:32px/1.2 var(--serif);margin-top:35px}
.story-subheading+.story-body{margin-top:16px}
.service-terms{margin:26px 0 0;display:grid;gap:16px}
.service-terms dd{font-size:15px}
.scope-note{max-width:700px;margin:25px 0 0 auto;color:var(--muted);font-size:14px;line-height:1.65}
.scope-note p+p{margin-top:10px}
.work-note strong{font-weight:500;color:var(--ink)}
.process .section-heading>p{max-width:340px;color:#d0d7c9;font-size:15px}
.approach-image{height:430px}
.services{padding-top:80px;padding-bottom:80px}
.services .section-heading{padding-bottom:0;margin-bottom:30px}
.process{padding-top:85px;padding-bottom:85px}
.process-grid{margin-top:55px}
.contact-area{font-size:14px!important;line-height:1.7;color:var(--muted);margin-top:28px!important;max-width:420px}
.form-field select{width:100%;padding:12px 28px 12px 0;border:0;border-bottom:1px solid #aeb6a5;border-radius:0;color:var(--ink);background:transparent;font-size:16px;line-height:1.5;cursor:pointer}
.form-field select:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.form-submit button:disabled{opacity:.55}
@media(max-width:760px){.project-facts{grid-template-columns:1fr 1fr;gap:22px}.project-facts .fact-scope{grid-column:auto}.project-facts dd{font-size:14px}.story-subheading{font-size:29px;margin-top:30px}.service-terms{grid-template-columns:1fr 1fr;margin-bottom:25px;gap:20px}.service-terms dd{font-size:14px}.approach-image{height:330px}.services{padding-top:60px;padding-bottom:60px}.process{padding-top:65px;padding-bottom:65px}.process-grid{margin-top:40px}.scope-note{font-size:13px}.contact-area{font-size:14px!important;margin-top:22px!important}}

/* Short project notes sit within the same portfolio, without extra detail pages. */
.work-grid .project-note .project-image{aspect-ratio:1.55}
.work-grid .project-note .project-image img{transform:none;filter:none}
.work-grid .project-note .project-meta{display:block;margin-top:22px}
.work-grid .project-note .project-meta h2{font-size:38px}
.work-grid .project-note .project-meta>span{display:block;margin-top:12px;max-width:none;text-align:left}
.project-note .note-brief{font-size:16px;line-height:1.7;color:var(--muted);margin-top:23px;max-width:540px}
.design-note{margin-top:23px;border-bottom:1px solid var(--line)}
.design-note summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;font-size:14px;padding:0 0 16px;min-height:44px;color:var(--ink)}
.design-note summary::-webkit-details-marker{display:none}
.design-note summary>span{position:relative;flex:0 0 20px;height:20px}
.design-note summary>span:before,.design-note summary>span:after{content:'';position:absolute;width:18px;height:1px;background:currentColor;left:1px;top:9px}
.design-note summary>span:after{transform:rotate(90deg);transition:transform .2s}
.design-note[open] summary>span:after{transform:rotate(0)}
.design-note-content{padding:5px 0 25px;font-size:15px;line-height:1.7;color:var(--muted)}
.design-note-content .note-scope{color:var(--ink);font-size:14px;margin-bottom:15px}
.note-deliverable{margin-top:23px}
.note-deliverable>span{display:block;font-size:12px;letter-spacing:.8px;color:var(--ink);margin-bottom:7px;text-transform:uppercase}
.design-note-content .note-reference{font-size:12px;line-height:1.6;font-style:italic;border-top:1px solid var(--line);padding-top:17px;margin-top:23px}
.project-note-wide .project-image img{object-position:50% 73%}
.project-enquiry{margin-top:38px;padding-top:24px;border-top:1px solid var(--line);display:flex;gap:18px 30px;align-items:baseline;flex-wrap:wrap;font-size:14px}
.project-enquiry>p{color:var(--muted)}
@media(min-width:761px){
  .work-grid .project-note-wide{grid-column:1/-1;display:grid;grid-template-columns:1.4fr 1fr;column-gap:5vw;align-items:center}
  .work-grid .project-note-wide .project-image{aspect-ratio:1.35}
  .work-grid .project-note-wide .project-meta{margin-top:0}
  .work-grid.is-filtered .project-note-wide{display:block;grid-column:auto}
  .work-grid.is-filtered .project-note .project-meta{margin-top:22px}
  .work-grid.is-filtered .project-note .project-image{aspect-ratio:1.1}
}
