:root{--paper:#eeeae2;--cream:#f8f5ef;--ink:#39392f;--muted:#6c6c60;--line:#c6c3b7;--olive:#343c2f;--terra:#995d44;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:74px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--terra);outline-offset:5px}img{display:block;width:100%;object-fit:cover}button{border:0;background:none}p,h1,h2,h3{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1 em,h2 em{font-weight:400}h2{font-size:clamp(38px,4.3vw,66px);letter-spacing:-.045em;line-height:1.08}p{line-height:1.7}.page-width{width:calc(100% - 112px);max-width:1440px;margin-inline:auto}.concept-banner{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--olive);color:#f7f3e8;padding:10px 56px;font-size:11px;letter-spacing:.03em;line-height:1.4}.concept-banner a{border-bottom:1px solid #9caa8c;padding-block:2px;white-space:nowrap}.concept-banner a:hover{color:#e3b69d}.site-header{height:108px;display:flex;justify-content:space-between;align-items:center;margin:0 56px;border-bottom:1px solid var(--line)}.wordmark{font-family:var(--serif);font-size:47px;letter-spacing:-.065em;line-height:1}.wordmark-dot{font-family:var(--sans);font-size:11px;letter-spacing:0;vertical-align:top;display:inline-block;margin:4px 0 0 5px}.site-header nav{display:flex;align-items:center;gap:36px;font-size:12px}.site-header nav a{padding-block:10px}.site-header nav a:hover{color:var(--terra)}.nav-contact{border-bottom:1px solid var(--ink)}.nav-contact span{padding-left:15px}.hero{padding:0 32px}.hero-copy{padding:66px 24px 56px;display:flex;justify-content:space-between;align-items:flex-end;gap:40px;max-width:1440px;margin:auto}.eyebrow{font-size:11px;font-family:var(--sans);font-weight:400;letter-spacing:.14em;text-transform:uppercase;line-height:1.6}.hero .eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:28px}.little-line{display:block;width:25px;height:1px;background:var(--ink)}h1{font-size:clamp(65px,7.8vw,125px);letter-spacing:-.059em;line-height:.97}h1 em{font-size:.91em}.hero-note{width:233px;padding-bottom:9px}.hero-note p{font-size:15px;line-height:1.65}.text-link{font-size:12px;display:inline-flex;align-items:center;justify-content:space-between;gap:34px;border-bottom:1px solid var(--ink);padding:13px 0 9px;transition:color .2s}.text-link:hover{color:var(--terra);border-color:var(--terra)}.hero-note .text-link{margin-top:24px}.hero-image{position:relative;overflow:hidden;margin:0;height:clamp(380px,46vw,690px);background:#b8a386}.hero-image>img{height:100%;object-position:center 53%}.hero-image figcaption{position:absolute;bottom:30px;left:28px;right:28px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.image-index{color:#fff9eb;font-size:11px;letter-spacing:.12em;mix-blend-mode:screen;text-shadow:0 1px 10px #302216}.image-caption{padding:19px 22px;background:var(--cream);display:flex;align-items:center;gap:50px;text-align:left;font-family:var(--serif);font-size:24px;box-shadow:0 6px 24px #2e231718}.image-caption small{font-family:var(--sans);font-size:11px;display:block;margin-top:6px;letter-spacing:.015em;color:var(--muted)}.circle-arrow{height:37px;width:37px;border:1px solid #c0bfb1;border-radius:50%;display:grid;place-items:center;font:18px var(--sans);transition:transform .2s}.image-caption:enabled:hover .circle-arrow{transform:rotate(45deg);background:#e8e1d4}.artwork-label{position:absolute;top:23px;left:28px;color:#f7efe0;background:#39392f7d;font-size:11px;letter-spacing:.13em;padding:7px 9px}.intro{display:grid;grid-template-columns:1fr 2fr;padding-block:114px 119px;border-bottom:1px solid var(--line);gap:40px}.intro>.eyebrow{padding-top:11px}.intro h2{font-size:clamp(42px,4.6vw,71px)}.intro-bottom{margin-top:33px;display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:680px}.intro-bottom p{font-size:13px;color:var(--muted)}.work-section{padding-block:94px 97px;scroll-margin-top:20px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:50px}.section-heading .eyebrow{margin-bottom:15px}.section-heading h2{font-size:clamp(38px,4vw,61px)}.serif-index{font-style:italic;font-size:20px;margin-left:16px;vertical-align:top;display:inline-block;padding-top:4px;letter-spacing:-.025em}.filters{display:flex;gap:8px;padding-bottom:5px}.filters button{font-size:11px;padding:10px 13px;border:1px solid transparent;border-radius:20px;white-space:nowrap}.filters button[aria-pressed=true]{border-color:var(--ink);background:#e3e0d5}.filters button:hover{background:#e3e0d5}.project-grid{display:grid;grid-template-columns:1.17fr .83fr;gap:66px 56px}.project{min-width:0}.project-image{padding:0;width:100%;display:block;overflow:hidden;position:relative;text-align:left;background:#c2b5a3}.project-image img{transition:transform .7s ease;height:100%;object-fit:cover}.project-image:enabled:hover img{transform:scale(1.025)}.project-large .project-image{aspect-ratio:1.15}.project-large .project-image img{object-position:52% center}.project-offset{padding-top:124px}.project-offset .project-image{aspect-ratio:.86}.project-wide{grid-column:1/-1}.project-wide .project-image{aspect-ratio:2.26}.project-wide img{object-position:center 58%}.project-open{position:absolute;bottom:18px;right:18px;background:var(--cream);font-size:11px;padding:12px 14px}.project-caption{display:flex;align-items:baseline;justify-content:space-between;padding-top:19px;gap:15px}.project-caption h3{font-size:28px;letter-spacing:-.025em}.project-caption h3 button{font:inherit;letter-spacing:inherit;padding:0;text-align:left}.project-caption h3 button:enabled:hover{color:var(--terra)}.project-caption p{font-size:11px;margin-top:7px;color:var(--muted);letter-spacing:.015em}.project-number{font:italic 18px var(--serif);color:var(--muted)}.collection-note{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin-top:41px}.project[hidden]{display:none}.project-grid.is-filtered .project-offset{padding-top:0}.project-grid.is-hospitality .project-wide{grid-column:1/-1}.services{background:var(--olive);color:#f1eee4;padding-block:92px 101px}.service-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:10%}.service-intro .eyebrow{color:#c1c7b7;margin-bottom:27px}.service-intro h2{font-size:clamp(42px,4.5vw,66px)}.service-intro>p:not(.eyebrow){font-size:13px;color:#c8cec0;max-width:300px;margin-top:26px}.light-link{border-color:#9ca78f;color:#f1eee4;margin-top:28px}.light-link:hover{color:#e5ba9d;border-color:#e5ba9d}.service-list{padding-top:9px}.service-list details{border-top:1px solid #72806a}.service-list details:last-child{border-bottom:1px solid #72806a}.service-list summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:28px 1fr 17px;gap:16px;align-items:center;padding:26px 0;font-family:var(--serif);font-size:25px;letter-spacing:-.025em}.service-list summary::-webkit-details-marker{display:none}.service-number{font:11px var(--sans);color:#b7c2ab;letter-spacing:0}.details-icon:before{content:'+';font:19px var(--sans);color:#cbd3c1}.service-list details[open] .details-icon:before{content:'−'}.service-list details>div{padding:0 29px 28px 44px}.service-list details p{font-size:12px;line-height:1.8;color:#ccd1c4}.service-tag{display:inline-block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#c1c7b7;margin-top:20px}.process{padding-block:100px 112px}.process-heading{text-align:center}.process-heading .eyebrow{margin-bottom:19px}.process-heading h2{font-size:clamp(37px,4.1vw,60px)}.process-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding:0;margin:56px 0 0}.process-steps li{border-top:1px solid var(--line);padding-top:19px}.process-steps li>span{font-size:11px;letter-spacing:.09em;color:var(--muted)}.process-steps h3{font-size:26px;letter-spacing:-.035em;line-height:1.12;margin-top:27px}.process-steps p{font-size:12px;color:var(--muted);max-width:305px;margin-top:14px}.contact{background:#e0dbcf;border-top:1px solid #d0cbbd;padding-block:98px}.contact-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:9%}.contact .eyebrow{margin-bottom:25px}.contact h2{font-size:clamp(48px,5.1vw,79px)}.contact-intro{font-size:13px;max-width:340px;color:var(--muted);margin-top:29px}.demo-note{font-size:11px;max-width:337px;line-height:1.6;margin-top:28px;color:var(--muted);display:flex;gap:10px}.demo-note span{font-size:16px;line-height:1.2}.contact form{padding-top:13px}.contact label{display:block;font-size:11px;margin-bottom:13px}.contact select,.contact textarea{display:block;background:transparent;border:0;border-bottom:1px solid #aba899;border-radius:0;width:100%;padding:10px 1px 14px;color:var(--ink);font-size:16px;margin-bottom:31px}.contact select{padding-right:25px;min-height:44px}.contact textarea{resize:vertical;min-height:106px;line-height:1.7;margin-bottom:25px}.contact textarea::placeholder{color:#7b7c70;opacity:1}.enquiry-button{display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--olive);color:#f8f5ee;width:100%;padding:19px 22px;font-size:12px}.enquiry-button:hover{background:#4c5744}.enquiry-button span{font-size:18px}.form-caption{font-size:11px;margin-top:11px;color:var(--muted)}.enquiry-result{border:1px solid #aba899;margin-top:27px;padding:23px;animation:appear .25s ease}.enquiry-result .eyebrow{margin-bottom:12px}.enquiry-result h3{font-size:25px;line-height:1.18;margin-bottom:13px}.enquiry-result p:not(.eyebrow){font-size:12px}.enquiry-result .brief-next{margin-top:15px;color:var(--muted);font-size:11px!important}.enquiry-result button{font-size:11px;padding:12px 0 4px;border-bottom:1px solid var(--ink);margin-top:10px}.site-footer{padding-top:65px;padding-bottom:25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:47px;border-bottom:1px solid var(--line)}.footer-top p{font:italic 23px var(--serif);letter-spacing:-.03em}.footer-top .text-link{font-size:11px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:21px;font-size:11px;color:var(--muted)}.footer-bottom a{text-decoration:underline;text-underline-offset:4px}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:var(--cream);padding:15px}.skip-link:focus{top:10px}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.project-dialog{width:min(1060px,calc(100% - 48px));max-height:90dvh;padding:0;border:0;background:var(--cream);color:var(--ink);overflow:auto}.project-dialog::backdrop{background:#1c211dd4;backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:16px;right:16px;z-index:2;background:var(--cream);padding:11px 15px;font-size:11px;display:flex;gap:25px;align-items:center}.dialog-close span{font-size:21px;line-height:1}.dialog-art{height:min(45vh,420px);background:#b7a28a;overflow:hidden}.dialog-art img{height:100%;object-position:center 52%}.dialog-content{padding:35px 44px 25px}.dialog-content h2{font-size:48px;margin:10px 0 20px}.dialog-content>p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:780px}.material-list{display:flex;flex-wrap:wrap;gap:20px;margin-top:25px}.material-list span{display:flex;align-items:center;gap:8px;font-size:11px}.material-list i{width:17px;height:17px;border-radius:50%;border:1px solid #0001}.dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);margin-top:28px;padding-top:20px}.dialog-footer>span{font-size:11px;color:var(--muted)}.dialog-footer button{font-size:11px;padding:6px 0}.dialog-footer button span{margin-left:23px}@keyframes appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}[hidden]{display:none!important}
@media(min-width:1700px){.hero-image{max-width:1600px;margin-inline:auto}.site-header{max-width:1440px;margin-inline:auto}}
@media(max-width:1000px){.page-width{width:calc(100% - 72px)}.concept-banner{padding-inline:36px}.site-header{margin-inline:36px}.site-header nav{gap:25px}.hero{padding-inline:20px}.hero-copy{padding-inline:16px}.hero-note{width:190px}.intro{gap:25px;grid-template-columns:.8fr 1.5fr}.intro-bottom{gap:22px}.section-heading{align-items:flex-start}.filters{gap:0;flex-wrap:wrap;max-width:180px;justify-content:flex-end}.filters button{padding:9px 10px;font-size:11px}.project-grid{gap:48px 32px}.project-offset{padding-top:80px}.service-layout{gap:7%;grid-template-columns:1fr 1.15fr}.service-list summary{font-size:22px;gap:12px}.service-list details>div{padding-left:40px;padding-right:10px}.process-steps{gap:26px}.process-steps h3{font-size:23px}.contact-layout{gap:7%}.contact-intro{max-width:300px}.footer-top p{font-size:19px}.footer-top{gap:22px}}
@media(max-width:700px){html{scroll-padding-top:79px}.page-width{width:calc(100% - 40px)}.concept-banner{padding:9px 20px;font-size:11px;gap:15px;min-height:45px}.concept-banner>span{max-width:171px}.concept-banner a{font-size:11px}.site-header{height:94px;margin-inline:20px;align-items:flex-start;padding-top:21px;position:relative}.wordmark{font-size:38px}.wordmark-dot{font-size:11px}.site-header nav{gap:18px;align-self:center;margin-top:-9px;font-size:11px}.site-header nav a:nth-child(2){display:none}.nav-contact{font-size:0;padding:0!important;border:0}.nav-contact::before{content:'Enquire';font-size:11px}.nav-contact span{font-size:13px;padding-left:5px}.hero{padding-inline:12px}.hero-copy{padding:43px 8px 31px;display:block}.hero .eyebrow{font-size:11px;letter-spacing:.12em;margin-bottom:23px;gap:8px}.little-line{width:17px}h1{font-size:clamp(60px,12.4vw,86px);line-height:.98;letter-spacing:-.06em}h1 em{font-size:.94em}.hero-note{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;width:100%;padding:0;margin-top:27px}.hero-note p{font-size:11px;line-height:1.6}.hero-note .text-link{margin:0;font-size:11px;gap:16px;padding-bottom:6px}.hero-image{height:430px}.hero-image>img{object-position:44% center}.hero-image figcaption{bottom:16px;left:16px;right:16px;gap:10px}.image-index{font-size:11px;white-space:nowrap}.image-caption{font-size:21px;padding:14px 14px;gap:25px}.image-caption small{font-size:11px;margin-top:5px}.circle-arrow{width:29px;height:29px;font-size:15px}.artwork-label{top:15px;left:16px;font-size:11px;padding:6px 7px;letter-spacing:.12em}.intro{display:block;padding-block:65px}.intro>.eyebrow{padding:0;margin-bottom:26px;font-size:11px}.intro h2{font-size:clamp(37px,10vw,45px);text-wrap:balance}.intro h2 br{display:none}.intro-bottom{margin-top:26px;gap:22px}.intro-bottom p{font-size:11px;line-height:1.75}.work-section{padding-block:65px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:42px}.section-heading .eyebrow{font-size:11px;margin-bottom:11px}.serif-index{font-size:16px;margin-left:9px}.filters{justify-content:flex-start;max-width:none;margin-top:24px;gap:5px}.filters button{font-size:11px;padding:9px 12px}.project-grid{display:block}.project{margin-bottom:37px}.project:last-child{margin-bottom:0}.project-offset{padding-top:0;margin-left:44px}.project-large .project-image{aspect-ratio:1.04}.project-offset .project-image{aspect-ratio:.92}.project-wide .project-image{aspect-ratio:1.24}.project-wide img{object-position:44% center}.project-caption{padding-top:14px}.project-caption h3{font-size:26px}.project-caption p{font-size:11px}.project-open{font-size:11px;bottom:12px;right:12px;padding:10px 12px}.project-number{font-size:16px}.collection-note{font-size:11px;line-height:1.65;margin-top:30px;padding-top:17px}.services{padding-block:64px}.service-layout{display:block}.service-intro h2{font-size:49px}.service-intro .eyebrow{font-size:11px;margin-bottom:23px}.service-intro>p:not(.eyebrow){font-size:12px;max-width:310px;margin-top:23px}.service-intro .text-link{font-size:11px;margin-top:19px}.service-list{padding-top:40px}.service-list summary{font-size:24px;padding:22px 0}.service-list details>div{padding-bottom:25px}.service-list details p{font-size:12px}.process{padding-block:66px 70px}.process-heading{text-align:left}.process-heading .eyebrow{font-size:11px;margin-bottom:16px}.process-heading h2{font-size:43px;max-width:320px}.process-steps{display:block;margin-top:32px}.process-steps li{padding-top:17px;margin-top:28px}.process-steps h3{font-size:27px;margin-top:14px}.process-steps p{font-size:12px;max-width:340px;margin-top:11px}.contact{padding-block:64px}.contact-layout{display:block}.contact .eyebrow{font-size:11px;margin-bottom:21px}.contact h2{font-size:58px}.contact-intro{font-size:12px;max-width:325px;margin-top:24px}.demo-note{font-size:11px;max-width:330px;margin-top:22px}.contact form{padding-top:40px}.contact label{font-size:11px}.contact select,.contact textarea{font-size:16px}.form-caption{font-size:11px}.site-footer{padding-top:42px}.footer-top{display:grid;grid-template-columns:1fr auto;gap:22px;padding-bottom:30px}.footer-top p{font-size:17px;grid-column:1/-1;grid-row:2}.footer-top .text-link{font-size:11px;gap:10px;padding-top:0}.footer-bottom{display:block;padding-top:19px;font-size:11px}.footer-bottom a{display:inline-block;margin-top:10px}.project-dialog{width:calc(100% - 24px);max-height:92dvh}.dialog-art{height:280px}.dialog-content{padding:27px 22px 22px}.dialog-content h2{font-size:38px}.dialog-content>p:not(.eyebrow){font-size:12px}.material-list{gap:12px 18px}.material-list span{font-size:11px}.dialog-footer{gap:17px}.dialog-footer>span{font-size:11px;max-width:120px}.dialog-footer button{font-size:11px;white-space:nowrap}.dialog-footer button span{margin-left:12px}.dialog-close{top:12px;right:12px;padding:9px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.enquiry-fallback{padding-top:15px}.enquiry-fallback p{font-size:13px;color:var(--muted);max-width:380px}.enquiry-fallback .text-link{margin-top:20px}

.services :is(a,button,summary):focus-visible,.concept-banner a:focus-visible{outline-color:#f8f5ef}

/* Keep reading-size text and controls consistent at every breakpoint. */
.concept-banner a,.site-header nav,.text-link,.filters button,.project-open,.enquiry-button,.enquiry-result button,.dialog-footer button{font-size:13px}
.hero-note .text-link,.service-intro .text-link,.footer-top .text-link{font-size:13px}
.image-caption small,.project-caption p,.collection-note,.intro-bottom p,.demo-note,.contact label,.form-caption,.footer-bottom,.material-list span,.dialog-footer>span{font-size:12px}
.enquiry-result .brief-next{font-size:12px!important}
.artwork-label{font-size:11px;max-width:calc(100% - 56px);line-height:1.5}
.filters{flex-wrap:wrap}.filters button{min-height:40px}
.project-dialog{overflow:hidden}
.project-dialog[open]{display:flex;flex-direction:column}
.dialog-toolbar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 20px;background:var(--cream);border-bottom:1px solid var(--line)}
.dialog-label{font:11px var(--sans);letter-spacing:.08em;text-transform:uppercase;display:flex;align-items:center;gap:16px}
.dialog-label span{color:var(--muted);letter-spacing:.04em}
.dialog-close{position:static;flex:0 0 auto;font-size:13px;min-height:40px;padding:9px 12px;border:1px solid var(--line);gap:20px}
.dialog-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scroll-padding-top:20px}
.dialog-art{flex-shrink:0}
@media(max-width:1000px){.filters{max-width:220px}}
@media(max-width:700px){.nav-contact{font-size:0}.nav-contact::before{font-size:13px}.concept-banner a{font-size:13px}.hero-note{gap:15px}.hero-note p{font-size:12px}.hero-note .text-link{max-width:155px;gap:12px}.filters{max-width:none;gap:4px}.filters button{padding-inline:11px}.image-caption{gap:18px}.image-caption small{font-size:11px}.hero-image figcaption{gap:8px}.dialog-toolbar{padding:10px 14px;gap:10px}.dialog-label{font-size:11px;gap:10px}.dialog-footer>span{max-width:145px}.dialog-footer button{white-space:normal}.footer-top{gap:18px}.footer-top .text-link{max-width:160px;text-align:right;font-size:12px}.footer-bottom{font-size:11px}.artwork-label{max-width:calc(100% - 32px);letter-spacing:.06em}}

.gallery-fallback{font-size:12px;line-height:1.8;color:var(--muted);padding:0 0 24px;max-width:680px}.gallery-fallback a{text-decoration:underline;text-underline-offset:3px}.project-image:disabled .project-open,.image-caption:disabled .circle-arrow{display:none}[data-project]:disabled{opacity:1;color:inherit;cursor:default}
