@font-face{font-family:Manrope;src:url('a13d9b41b0a471ce.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('6d37a86241a25d63.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('0b9a8a33cfaa624d.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
:root{--paper:#f3f0e9;--ink:#30342d;--muted:#6f7268;--line:#d6d6ca;--dark:#242820;--olive:#a7b092;--cream:#eeeadf;--serif:'Cormorant Garamond',Georgia,serif;--sans:Manrope,Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}::selection{background:#a7b092;color:#242820}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;border:0}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #a58a5b;outline-offset:5px}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400}h2{font-size:clamp(44px,4.9vw,76px);line-height:1;letter-spacing:-2px;margin-bottom:28px}em{font-weight:400}.eyebrow,.section-kicker{font-size:9px;letter-spacing:1.8px;font-weight:500}.eyebrow{margin-bottom:30px}.skip-link{position:fixed;top:-60px;left:20px;padding:12px;background:var(--paper);z-index:100}.skip-link:focus{top:10px}
.site-header{position:absolute;z-index:20;top:0;left:0;right:0;height:110px;margin:0 4.5%;display:flex;align-items:center;justify-content:space-between;color:var(--cream);border-bottom:1px solid #ffffff27;transition:background .3s,height .3s}.brand{display:flex;gap:11px;align-items:center;flex-shrink:0}.brand img{width:43px;height:43px;border-radius:50%;filter:invert(1);mix-blend-mode:screen}.brand>span{font-size:24px;letter-spacing:3px;font-weight:500}.brand small{display:block;font-size:7px;letter-spacing:3px;margin-top:3px}.desktop-nav{display:flex;gap:32px;font-size:10px;align-items:center}.desktop-nav sup{font-size:7px;margin-left:4px;color:var(--olive)}.desktop-nav a,.header-contact{position:relative}.desktop-nav a:after,.header-contact:after{content:'';height:1px;background:currentColor;position:absolute;bottom:-8px;left:0;width:100%;transform:scaleX(0);transform-origin:left;transition:transform .35s}.desktop-nav a:hover:after,.desktop-nav a.is-current:after,.header-contact:hover:after{transform:scaleX(1)}.header-contact{font-size:10px;display:flex;gap:25px;align-items:center}.arrow{font-size:21px}.menu-toggle{display:none;background:none;color:inherit;width:42px;height:42px;padding:9px}.menu-toggle>span{display:block;height:1px;background:currentColor;margin:7px 0;transition:transform .3s}.site-header.is-fixed{position:fixed;height:78px;margin:0;padding:0 4.5%;background:#242820f5;backdrop-filter:blur(18px);animation:headerIn .35s var(--ease);border-bottom-color:#ffffff17}.scroll-progress{position:absolute;bottom:-1px;left:0;height:2px;width:100%;background:var(--olive);transform-origin:left;transform:scaleX(0);display:none}.is-fixed .scroll-progress{display:block}
.hero{position:relative;isolation:isolate;min-height:800px;height:100svh;max-height:1100px;background:#242820;color:var(--cream);overflow:hidden}.hero-visual{position:absolute;inset:0 0 0 34%;z-index:-3;overflow:hidden}.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% 50%;opacity:0;transform:scale(1.05);transition:opacity 1.25s ease,transform 9s linear}.hero-slide.is-active{opacity:1;transform:scale(1)}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#242820 0%,#242820f5 20%,#242820a6 38%,#24282012 67%),linear-gradient(0deg,#161c1bd1,transparent 27%,transparent 72%,#1e231f58)}.hero-grain{position:absolute;inset:0;z-index:-1;opacity:.055;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23noise)' opacity='.5' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.hero-content{padding:190px 0 110px 8%;position:relative;width:65%}.hero .eyebrow{font-size:8px;letter-spacing:2px;display:flex;align-items:center;gap:12px;margin-bottom:34px}.tiny-line{display:inline-block;width:28px;height:1px;background:var(--olive)}h1{font-size:clamp(85px,8.4vw,140px);line-height:.88;letter-spacing:-4px;margin:0 0 30px}.hero-line{display:block}.hero-line em{color:#c9cfb5}.hero-description{font-size:12px;color:#d2d4c9;line-height:1.8;margin:28px 0}.round-link{display:inline-flex;align-items:center;gap:18px;font-size:10px}.round-arrow{display:grid;place-items:center;width:47px;height:47px;border:1px solid #eeeadf66;border-radius:50%;font-size:24px;transition:background .3s,color .3s,transform .4s}.round-link:hover .round-arrow{background:var(--cream);color:var(--ink);transform:rotate(45deg)}.hero-foot{position:absolute;left:4.5%;right:4.5%;bottom:31px;display:flex;align-items:center;justify-content:space-between;gap:20px}.scroll-cue{font-size:7px;letter-spacing:1.5px;display:flex;gap:12px;align-items:center}.scroll-track{height:33px;width:1px;background:#ffffff33;position:relative;overflow:hidden}.scroll-track:after{content:'';position:absolute;top:0;left:0;right:0;height:12px;background:var(--cream);animation:scrollCue 2.5s ease-in-out infinite}.hero-slide-info{display:flex;gap:14px;align-items:center;margin-left:auto;margin-right:40px}.hero-slide-info>span:first-child{font-family:var(--serif);font-size:28px}.hero-slide-info>span:last-child{font-size:7px;letter-spacing:1.8px}.hero-rule{width:45px;height:1px;background:#ffffff55}.hero-controls{display:flex;gap:6px}.hero-controls button{border:1px solid #ffffff38;background:none;color:#eeeade;width:40px;height:40px;font-size:9px;transition:background .3s}.hero-controls button.is-active{background:var(--cream);color:var(--ink);border-color:var(--cream)}.hero-controls button:hover{background:#eeeadf30}.hero-side{position:absolute;right:24px;top:43%;writing-mode:vertical-rl;font-size:7px;letter-spacing:2.5px}.hero-enter{animation:fadeUp 1.2s .25s both var(--ease)}.hero-line{animation:fadeUp 1.2s both var(--ease)}.hero-line:nth-child(2){animation-delay:.12s}.hero-line:nth-child(3){animation-delay:.24s}
.section-pad{padding:100px 8%}.section-kicker{display:flex;align-items:center;justify-content:space-between;padding-bottom:25px;border-bottom:1px solid var(--line);font-size:8px}.section-kicker>span:last-child{color:var(--muted);font-size:7px}.studio{padding-top:78px;padding-bottom:115px}.studio-grid{display:grid;grid-template-columns:25% 75%;padding-top:70px;gap:0}.studio-mark{display:flex;flex-direction:column;align-items:start;gap:30px;padding-top:14px}.studio-mark img{width:85px;height:85px;mix-blend-mode:multiply;opacity:.8}.studio-mark>span{font-size:7px;letter-spacing:1.2px;line-height:1.8;color:var(--muted)}.studio-copy h2{font-size:clamp(38px,4.8vw,73px);line-height:1.08}.studio-copy h2 em{color:#81856f}.studio-bottom{display:flex;gap:40px;align-items:end;justify-content:space-between;margin-top:35px}.studio-bottom p{font-size:12px;line-height:1.9;max-width:400px;margin:0;color:var(--muted)}.under-link{display:inline-flex;gap:34px;justify-content:space-between;align-items:center;border-bottom:1px solid currentColor;padding:12px 0;font-size:10px;white-space:nowrap}.under-link>span{font-size:20px;transition:transform .3s}.under-link:hover>span{transform:translate(3px,-3px)}
.work{background:#e9e8df;padding-top:76px}.work .section-kicker{border-color:#c9cdbf}.work-heading{display:flex;justify-content:space-between;align-items:end;padding-top:58px}.work-heading h2{font-size:clamp(43px,4.6vw,70px);margin:0}.work-heading>p{font-size:11px;line-height:1.8;color:var(--muted);margin-bottom:7px}.filter-row{display:flex;justify-content:space-between;align-items:center;margin:45px 0 40px}.filters{display:flex;gap:28px}.filters button{padding:10px 0;background:none;color:#75796c;font-size:10px;position:relative}.filters button:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .3s}.filters button.active{color:var(--ink)}.filters button.active:after,.filters button:hover:after{transform:scaleX(1)}.filters sup{font-size:7px;margin-left:3px}.collection-note{font-size:7px;letter-spacing:1.7px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:55px 7%;align-items:start}.project{display:block;background:none;text-align:left;padding:0;min-width:0}.project-image{display:block;position:relative;overflow:hidden;aspect-ratio:1 / 1.03;background:#d0d1c7}.project-large .project-image{aspect-ratio:1 / 1.15}.project-offset{margin-top:105px}.project-image>img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease),filter .6s}.project-overlay{position:absolute;inset:0;background:linear-gradient(0deg,#18221870,transparent 40%);opacity:.7;transition:opacity .5s}.view-circle{position:absolute;left:50%;top:50%;width:85px;height:85px;border-radius:50%;background:#f3f0e9e8;color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:9px;line-height:1.8;letter-spacing:1px;transform:translate(-50%,-40%) scale(.9);opacity:0;transition:transform .5s var(--ease),opacity .3s;backdrop-filter:blur(10px)}.project:hover .view-circle,.project:focus-visible .view-circle{opacity:1;transform:translate(-50%,-50%) scale(1)}.project:hover .project-image>img{transform:scale(1.045)}.project:hover .project-overlay{opacity:1}.project-tag{position:absolute;bottom:20px;left:20px;color:white;font-size:7px;letter-spacing:1.5px}.project-caption{display:flex;align-items:center;justify-content:space-between;padding-top:20px}.project-caption>span:first-child{display:flex;align-items:baseline;gap:15px}.project-number{font-size:8px;color:var(--muted)}.project-title{font-family:var(--serif);font-size:29px;letter-spacing:-.6px}.project-arrow{font-size:22px;transition:transform .3s}.project:hover .project-arrow{transform:translate(3px,-3px)}.project[hidden]{display:none}.project-grid.filtered .project{margin-top:0}.project-grid.filtered .project-image{aspect-ratio:1 / 1.1}.work-bottom{border-top:1px solid #c9cdbf;display:flex;align-items:center;justify-content:space-between;margin-top:65px;padding-top:20px}.work-bottom p{font-family:var(--serif);font-size:28px;margin:0}
.perspective{display:grid;grid-template-columns:1fr 1fr;background:var(--dark);color:var(--cream)}.perspective-photo{position:relative;min-height:740px;overflow:hidden}.perspective-photo>img{position:absolute;width:100%;height:100%;object-fit:cover;transition:opacity .3s}.photo-caption{position:absolute;bottom:30px;left:40px;font-size:7px;letter-spacing:2px;color:white;text-shadow:0 1px 5px #000}.perspective-copy{padding:90px 15% 75px 13%}.perspective-copy>.eyebrow{color:#bfc6b0;font-size:8px}.perspective h2{font-size:clamp(50px,5vw,76px)}.perspective h2 em{color:#bec7a8}.perspective-intro{font-size:11px;color:#b4baa9;margin:28px 0 38px}.principles details{border-top:1px solid #ffffff26}.principles details:last-child{border-bottom:1px solid #ffffff26}.principles summary{list-style:none;display:flex;align-items:center;gap:18px;padding:23px 0;cursor:pointer;font-family:var(--serif);font-size:29px}.principles summary::-webkit-details-marker{display:none}.principles summary>span:first-child{font-family:var(--sans);font-size:8px;color:#b5bca9}.detail-sign{margin-left:auto;position:relative;width:13px;height:13px}.detail-sign:before,.detail-sign:after{content:'';position:absolute;top:6px;left:0;width:13px;height:1px;background:#bec7a8;transition:transform .3s}.detail-sign:after{transform:rotate(90deg)}details[open] .detail-sign:after{transform:rotate(0)}.principles details p{font-size:11px;color:#b5bca9;line-height:1.9;margin:0 0 25px 30px}
.contact{padding-top:80px;padding-bottom:65px}.contact-main{display:flex;align-items:center;justify-content:space-between;padding-top:65px;gap:30px}.contact h2{font-size:clamp(54px,6.2vw,94px);line-height:.99;margin-bottom:0}.contact h2 em{color:#7c836d}.contact-circle{background:none;border:1px solid #929b84;border-radius:50%;width:155px;height:155px;flex-shrink:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;transition:background .4s,color .4s,transform .4s}.contact-circle>span:first-child{font-size:9px;letter-spacing:1.5px}.contact-circle>span:last-child{font-size:40px;font-weight:200}.contact-circle:hover{background:var(--ink);color:var(--cream);transform:rotate(-8deg)}.contact-bottom{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:55px}.contact-bottom p{font-size:11px;line-height:1.8;color:var(--muted);margin:0}.phone{font-family:var(--serif);font-size:25px}
footer{background:var(--dark);color:var(--cream);padding:40px 4.5% 25px;overflow:hidden}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:7px;letter-spacing:1.4px}.footer-home{display:flex;gap:40px}.footer-home span{color:#adb59f;font-size:6px}.footer-word{font-family:var(--sans);font-size:clamp(75px,19.5vw,350px);font-weight:400;line-height:1.2;letter-spacing:-1.15vw;position:relative;text-align:center;padding:25px 0 10px;color:#d9ddcb}.footer-bottom{display:flex;justify-content:space-between;font-size:6px;letter-spacing:1.3px;color:#abb39d;border-top:1px solid #ffffff24;padding-top:22px}
.mobile-menu[hidden]{display:none}.mobile-menu{position:fixed;inset:0;background:var(--dark);z-index:19;color:var(--cream);padding:140px 7% 40px}.mobile-menu nav{display:flex;flex-direction:column}.mobile-menu nav a{font-family:var(--serif);font-size:37px;border-bottom:1px solid #ffffff25;padding:20px 0;display:flex;justify-content:space-between;align-items:center}.mobile-menu nav a>span{font-family:var(--sans);font-size:10px;color:var(--olive)}.mobile-menu>p{font-size:8px;letter-spacing:2px;margin-top:45px}.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-4px) rotate(-45deg)}
dialog{border:0;background:var(--paper);color:var(--ink);padding:0}dialog::backdrop{background:#10150ee8;backdrop-filter:blur(9px)}dialog[open]{animation:dialogIn .35s var(--ease)}.project-dialog{width:min(1100px,94vw);max-width:1100px;max-height:94svh}.viewer-top{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;border-bottom:1px solid var(--line)}.viewer-top>span{font-size:8px;letter-spacing:1.5px}.icon-button{display:grid;place-items:center;width:40px;height:40px;background:none;font-size:20px;transition:background .2s}.icon-button:hover{background:#daddd0}.viewer-layout{display:grid;grid-template-columns:58% 42%}.viewer-photo{background:#d9dbd0;display:grid;place-items:center;min-height:500px}.viewer-photo>img{height:100%;max-height:72svh;width:100%;object-fit:contain}.viewer-copy{display:flex;flex-direction:column;padding:45px 35px 25px}.viewer-copy>.eyebrow{font-size:8px;margin-bottom:25px;color:var(--muted)}.viewer-copy>h2{font-size:48px;letter-spacing:-1px}.viewer-copy>p{font-size:12px;line-height:1.9;color:var(--muted)}.viewer-copy>.under-link{align-self:start}.viewer-enquire{font-size:10px;line-height:1.6;margin-top:auto;padding-top:50px}.viewer-navigation{display:flex;align-items:center;justify-content:space-between;margin-top:30px;border-top:1px solid var(--line);padding-top:15px}.viewer-navigation>span{font-size:10px;letter-spacing:2px}.viewer-note{font-size:8px;padding:14px 24px;margin:0;color:var(--muted)}.enquiry-dialog{padding:50px;width:min(560px,94vw);max-height:94svh}.close-enquiry{position:absolute;top:15px;right:15px}.enquiry-dialog .eyebrow{font-size:8px;margin-bottom:25px}.enquiry-dialog h2{font-size:58px}.enquiry-intro{font-size:12px;color:var(--muted)}form label{display:block;font-size:10px;margin-top:25px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #b8beae;background:transparent;color:var(--ink);border-radius:0;padding:12px 0;outline:none;font-size:12px}input:focus,select:focus,textarea:focus{border-bottom-color:#30342d;box-shadow:0 1px 0 #30342d}textarea{resize:vertical}.solid-button{width:100%;display:flex;justify-content:space-between;align-items:center;padding:18px 20px;margin-top:28px;background:var(--ink);color:var(--cream);font-size:11px}.solid-button:hover{background:#566049}.solid-button>span{font-size:20px}.form-note{font-size:9px;color:var(--muted);line-height:1.7;margin:12px 0 0}
.motion-ready .reveal{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}
@keyframes fadeUp{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes scrollCue{0%{transform:translateY(-14px)}65%,100%{transform:translateY(35px)}}@keyframes headerIn{from{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes dialogIn{from{opacity:0;transform:translateY(15px) scale(.985)}to{opacity:1;transform:none}}
@media(min-width:1700px){.hero-content{padding-top:220px}.section-pad{padding-left:max(8%,calc((100vw - 1450px)/2));padding-right:max(8%,calc((100vw - 1450px)/2))}}
@media(max-width:1100px){.desktop-nav{gap:20px}.header-contact{font-size:9px;gap:12px}.section-pad{padding-left:6%;padding-right:6%}.hero-content{padding-left:7%}.studio-grid{grid-template-columns:22% 78%}.studio-bottom{align-items:start;flex-direction:column;gap:12px}.studio-bottom p{max-width:470px}.perspective-copy{padding:65px 12% 50px 10%}.perspective-photo{min-height:680px}.contact-circle{width:130px;height:130px}.project-title{font-size:26px}.hero-slide-info{margin-right:15px}.viewer-copy{padding:30px 25px}.viewer-copy>h2{font-size:42px}}
@media(max-width:760px){html{scroll-padding-top:90px}.site-header{height:88px;margin:0 6%}.site-header.is-fixed{height:74px;padding:0 6%}.brand img{width:35px;height:35px}.brand>span{font-size:20px;letter-spacing:2.5px}.brand small{font-size:6px;letter-spacing:2.7px}.desktop-nav,.header-contact{display:none}.menu-toggle{display:block}.hero{min-height:750px;max-height:1100px;height:100svh}.hero-visual{inset:0;opacity:.8}.hero-slide{object-position:57% 50%}.hero-shade{background:linear-gradient(90deg,#20261fbb,#20261f20),linear-gradient(0deg,#20261ff5,transparent 55%,#20261f88)}.hero-content{padding:160px 7% 135px;width:100%}.hero .eyebrow{font-size:7px;letter-spacing:1.5px;margin-bottom:38px}h1{font-size:clamp(83px,16vw,120px);letter-spacing:-3px;line-height:.91}.hero-description{font-size:11px;margin:25px 0}.hero-side{display:none}.hero-foot{left:7%;right:7%;bottom:25px;flex-wrap:wrap;gap:18px}.scroll-cue{display:none}.hero-slide-info{margin:0;gap:10px}.hero-slide-info>span:first-child{font-size:24px}.hero-slide-info>span:last-child{font-size:6px;letter-spacing:1px}.hero-rule{width:20px}.hero-controls{gap:4px}.hero-controls button{width:32px;height:32px;font-size:8px}.section-pad{padding:65px 7%}.section-kicker{font-size:7px;letter-spacing:1.1px;padding-bottom:20px}.section-kicker>span:last-child{display:none}.studio-grid{grid-template-columns:1fr;padding-top:40px}.studio-mark{flex-direction:row;align-items:center;gap:22px;padding:0 0 28px}.studio-mark img{width:48px;height:48px}.studio-mark>span{font-size:6px;letter-spacing:1px}.studio-copy h2{font-size:clamp(35px,7.8vw,56px);letter-spacing:-1px;line-height:1.13}.studio-bottom{margin-top:25px;gap:18px}.studio-bottom p{font-size:12px;line-height:1.9}.work-heading{display:block;padding-top:35px}.work-heading h2{font-size:clamp(38px,8.3vw,60px);letter-spacing:-1.5px;line-height:1.06}.work-heading>p{font-size:10px;margin-top:23px}.filter-row{margin:25px 0 30px}.filters{gap:23px}.filters button{font-size:9px}.collection-note{display:none}.project-grid{grid-template-columns:1fr;gap:35px}.project-offset{margin-top:0}.project-image,.project-large .project-image{aspect-ratio:1/1.06}.project-caption{padding-top:15px}.project-title{font-size:27px}.project-tag{font-size:6px;bottom:17px;left:17px}.view-circle{display:none}.work-bottom{align-items:start;flex-direction:column;gap:12px;margin-top:40px}.work-bottom p{font-size:26px}.work-bottom .under-link{font-size:9px}.perspective{grid-template-columns:1fr}.perspective-photo{min-height:0;aspect-ratio:1 / 1.04}.photo-caption{bottom:25px;left:7%;font-size:6px}.perspective-copy{padding:55px 8%}.perspective h2{font-size:62px}.perspective-intro{margin-bottom:28px}.principles summary{font-size:30px}.principles details p{font-size:12px;max-width:350px}.contact-main{padding-top:40px;align-items:start;flex-direction:column;gap:28px}.contact h2{font-size:clamp(44px,9.3vw,65px);letter-spacing:-1.8px;line-height:1.05}.contact-circle{width:95px;height:95px;gap:4px;align-self:end;margin-top:-5px}.contact-circle>span:first-child{font-size:7px}.contact-circle>span:last-child{font-size:30px}.contact-bottom{display:grid;grid-template-columns:1fr;gap:20px;margin-top:10px}.contact-bottom .under-link{justify-self:start}.phone{font-size:27px;margin-top:6px}footer{padding:30px 7% 20px}.footer-top{font-size:6px;letter-spacing:1px;flex-wrap:wrap;gap:25px}.footer-home{width:100%;justify-content:space-between;gap:20px}.footer-word{font-size:18.6vw;padding-top:35px;letter-spacing:-1.2vw;text-align:left}.footer-bottom{gap:20px;flex-direction:column;font-size:6px;line-height:1.6;letter-spacing:.8px}.viewer-layout{grid-template-columns:1fr}.viewer-photo{min-height:0;max-height:55svh}.viewer-photo>img{height:auto;max-height:55svh;object-fit:contain}.viewer-copy{padding:25px}.viewer-copy>h2{font-size:43px;margin-bottom:20px}.viewer-copy>.eyebrow{margin-bottom:15px}.viewer-enquire{padding-top:30px}.viewer-navigation{margin-top:20px}.viewer-top{padding:6px 15px}.viewer-note{font-size:7px;padding:12px 25px}.enquiry-dialog{padding:45px 25px 30px}.enquiry-dialog h2{font-size:50px}.enquiry-dialog input,.enquiry-dialog select,.enquiry-dialog textarea{font-size:16px}.enquiry-dialog .eyebrow{margin-bottom:20px}}
@media(max-width:380px){.hero-slide-info>span:last-child{font-size:5px}.hero-content{padding-top:140px}.hero .eyebrow{font-size:6px}h1{font-size:84px}.filters{gap:19px}.hero-foot{left:6%;right:6%}.hero-controls button{width:29px}.contact h2{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.hero-slide{transform:none}}


/* Focused studio offer + contact layout */
.services{padding-top:88px;padding-bottom:105px}.services-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:9%;align-items:end;padding-top:65px}.services-intro h2{font-size:clamp(48px,6vw,86px);line-height:.96;letter-spacing:-2px;margin:0}.services-intro h2 em{color:#81856f}.services-intro>div{max-width:490px;padding-bottom:5px}.services-intro p{font-size:12px;line-height:1.9;color:var(--muted);margin:0 0 10px}.service-list{margin-top:62px;border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:34px 1.02fr 1.12fr .78fr;gap:2.2%;align-items:center;padding:29px 0;border-bottom:1px solid var(--line)}.service-no{font-size:9px;color:#838876;align-self:start;padding-top:9px}.service-name h3{font-family:var(--serif);font-size:clamp(27px,3vw,42px);line-height:1.02;font-weight:400;letter-spacing:-.6px;margin:0 0 12px}.service-name>span,.service-description .under-link{font-size:8px;letter-spacing:1.25px}.service-name>span{color:var(--muted)}.service-description p{font-size:10px;line-height:1.85;color:var(--muted);margin:0 0 10px;max-width:380px}.service-description .under-link{gap:10px;padding:6px 0;letter-spacing:.2px}.service-description .under-link>span{font-size:16px}.service-row>img{width:100%;height:130px;object-fit:cover;object-position:center;border-radius:1px}.contact{background:#e7e8de;padding-top:82px;padding-bottom:88px}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:start;padding-top:60px}.contact h2{font-size:clamp(55px,6.3vw,92px);line-height:.94;letter-spacing:-2px;margin-bottom:23px}.contact h2 em{color:#7c836d}.contact-intro>p{color:var(--muted);font-size:11px;line-height:1.9;margin:0 0 34px}.contact-location{font-size:7px;letter-spacing:1.7px;color:#7c806f}.contact-channels{border-top:1px solid #c5c9bb}.contact-channel{display:flex;flex-direction:column;align-items:flex-start;border-bottom:1px solid #c5c9bb;padding:20px 0 18px;transition:padding .3s var(--ease)}a.contact-channel:hover{padding-left:8px}.channel-label{font-size:7px;letter-spacing:1.5px;color:#73796b;margin-bottom:8px}.channel-value{font-family:var(--serif);font-size:clamp(25px,3vw,38px);line-height:1.1;letter-spacing:-.4px}.channel-value>span{font-family:var(--sans);font-size:15px;vertical-align:middle;color:#73796b}.whatsapp-link,.channel-description{font-size:9px;color:#73796b;margin-top:6px}.whatsapp-link{border-bottom:1px solid #b6bbab;padding-bottom:3px}.footer-socials{display:flex;gap:26px}.footer-socials a{transition:color .2s}.footer-socials a:hover{color:#bec7a8}
@media(max-width:760px){.services{padding-top:65px;padding-bottom:72px}.services-intro{grid-template-columns:1fr;gap:20px;padding-top:36px}.services-intro h2{font-size:clamp(43px,10vw,64px)}.services-intro p{font-size:11px}.service-list{margin-top:32px}.service-row{grid-template-columns:24px 1fr 1fr;gap:8px 12px;padding:22px 0;align-items:start}.service-no{grid-column:1;grid-row:1;font-size:8px}.service-name{grid-column:2/4;grid-row:1}.service-name h3{font-size:29px}.service-name>span{font-size:6px}.service-description{grid-column:2/4;grid-row:2}.service-description p{font-size:10px}.service-row>img{grid-column:2/4;grid-row:3;height:auto;aspect-ratio:1.9;object-fit:cover}.contact{padding-top:65px;padding-bottom:68px}.contact-layout{grid-template-columns:1fr;gap:34px;padding-top:36px}.contact h2{font-size:clamp(48px,11vw,69px);margin-bottom:17px}.contact-intro>p{margin-bottom:19px}.contact-channel{padding:17px 0 15px}.channel-value{font-size:31px}.footer-socials{gap:16px;flex-wrap:wrap}.footer-socials a{font-size:6px}}
@media(max-width:380px){.channel-value{font-size:27px}.service-name h3{font-size:26px}}

/* Launch styles: responsive type, readable details and resilient controls. */
.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
[hidden]{display:none!important}
body{font-size:16px}main,section{min-width:0}button,a{touch-action:manipulation}
.desktop-nav{font-size:11px}.header-contact{font-size:11px}.hero .eyebrow{font-size:9px}
.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.hero-secondary{padding:12px 0;border-bottom:1px solid #eeeadf77;font-size:11px;transition:border-color .2s}.hero-secondary:hover{border-color:var(--cream)}
.hero-description{font-size:13px;line-height:1.9}.round-link{font-size:11px}.hero-controls button{width:44px;height:44px}.hero-content{width:74%}
.section-kicker{font-size:9px}.section-kicker>span:last-child{font-size:8px}.services-intro p{font-size:13px;line-height:1.9}
.service-description p{font-size:12px;line-height:1.9}.service-row{padding:32px 0}.service-row>img{height:150px}.service-name>span{font-size:8px;line-height:1.8;display:block}.service-description .under-link{font-size:10px;letter-spacing:0;min-height:44px;white-space:normal}.service-no{font-size:10px}
.work-heading>p{font-size:12px}.filters{flex-wrap:wrap;gap:28px}.filters button{font-size:11px;min-height:44px}.collection-note{font-size:8px;letter-spacing:1.1px}.project-grid{gap:44px 6%}.project-title{font-size:clamp(24px,2.4vw,34px)}.project-tag{font-size:8px;letter-spacing:1.1px}.project-caption>span:first-child{gap:12px}.project-caption{padding-top:18px}.work-bottom .under-link{font-size:11px;white-space:normal}
.contact-intro>p{font-size:13px}.contact-location{font-size:8px}.channel-label{font-size:8px}.channel-description,.whatsapp-link{font-size:11px;line-height:1.7}.channel-value{padding:4px 0}.contact-channel .whatsapp-link{padding:8px 0 4px;min-height:34px}.footer-top{font-size:8px}.footer-home span{font-size:7px}.footer-bottom{font-size:7px;line-height:1.7}
.project-dialog{max-height:calc(100svh - 24px);overflow:auto;overscroll-behavior:contain;border-radius:2px}.viewer-top{position:sticky;top:0;background:var(--paper);z-index:2}.viewer-top>span{font-size:9px}.viewer-photo{position:relative;min-width:0}.viewer-photo>img{height:auto;max-height:72svh;object-fit:contain}.viewer-gallery{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;gap:4px;padding:4px;background:#242820eb;border-radius:30px;color:var(--cream)}.viewer-gallery button{width:44px;height:40px;background:none;border-radius:50%;color:inherit;font-size:10px}.viewer-gallery button[aria-pressed=true]{background:var(--cream);color:var(--ink)}.viewer-photo[aria-busy=true]{cursor:progress}.viewer-copy>p{font-size:13px;line-height:1.85}.viewer-copy>.viewer-credit{font-size:10px;border-left:2px solid #b8beae;padding-left:12px;line-height:1.7}.viewer-enquire{background:var(--ink);color:var(--cream);padding:15px 18px;margin-top:24px;display:block;font-size:11px;transition:background .2s}.viewer-enquire:hover{background:#4c5641}.viewer-navigation{margin-top:auto;padding-top:22px}.viewer-count{font-size:10px}.viewer-note{font-size:9px;line-height:1.7}.icon-button{width:44px;height:44px;flex-shrink:0}.project-dialog h2:focus{outline:none}
.nojs-nav{display:none}.not-found{min-height:100svh;display:grid;place-items:center;padding:60px 7%}.not-found main{max-width:800px;width:100%}.not-found main>img{width:64px;height:64px;margin-bottom:32px}.not-found h1{font-size:clamp(62px,10vw,130px);line-height:.95}.not-found main>p:not(.eyebrow){max-width:430px;color:var(--muted);font-size:14px;line-height:1.8}.not-found .under-link{margin-right:25px;font-size:12px}
@media(max-width:1100px) and (min-width:761px){.hero-content{width:86%}.service-row{grid-template-columns:25px 1.1fr 1.2fr;gap:20px}.service-row>img{display:none}.contact-layout{gap:6%;grid-template-columns:1fr 1fr}.contact h2{font-size:64px}.channel-value{font-size:31px}.project-title{font-size:28px}}
@media(max-width:760px){.hero{height:100svh;min-height:680px}.hero-content{width:100%;padding:165px 7% 140px}.hero h1{font-size:clamp(42px,12.5vw,94px);letter-spacing:-1.8px;line-height:1.03}.hero-line{white-space:nowrap}.hero .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:28px}.hero-description{font-size:12px;margin:25px 0}.hero-actions{gap:22px}.hero-secondary{font-size:10px}.hero-slide-info>span:last-child{font-size:7px}.hero-foot{gap:12px}.hero-controls button{width:44px;height:44px;font-size:10px}.hero-slide-info{max-width:calc(100% - 146px)}.hero-rule{width:12px}.hero-slide-info>span:last-child{line-height:1.7;letter-spacing:.5px}.hero-slide-info>span:first-child{font-size:23px}.round-arrow{width:44px;height:44px}.services-intro p{font-size:13px}.service-row{padding:25px 0;grid-template-columns:20px minmax(0,1fr) minmax(0,1fr);gap:10px 12px}.service-description p{font-size:12px}.service-description .under-link{font-size:10px}.service-name>span{font-size:8px;letter-spacing:.7px}.service-row>img{height:auto;aspect-ratio:1.75;display:block}.service-name h3{font-size:31px}.work-heading>p{font-size:12px}.filter-row{align-items:flex-start}.filters{gap:6px 20px}.filters button{font-size:11px}.project-title{font-size:29px;line-height:1.1}.project-number{font-size:9px}.project-tag{font-size:8px}.project-caption>span:first-child{gap:10px}.work-bottom .under-link{font-size:11px}.contact-intro>p{font-size:13px}.channel-value{font-size:clamp(27px,7.2vw,36px)}.channel-label{font-size:9px}.contact-location{line-height:1.8}.footer-socials{gap:20px}.footer-socials a{font-size:8px;min-height:44px;display:flex;align-items:center}.footer-home{font-size:8px;line-height:1.7;align-items:center}.footer-home span{font-size:7px}.footer-top{gap:7px}.footer-bottom{font-size:7px;gap:14px}.viewer-photo{min-height:250px;max-height:none}.viewer-photo>img{max-height:58svh}.viewer-copy{padding:27px}.viewer-copy>h2{font-size:42px}.viewer-copy>p{font-size:13px}.viewer-enquire{padding:15px;margin-top:12px;font-size:11px}.viewer-navigation{margin-top:22px;padding-top:12px}.viewer-top>span{font-size:8px}.viewer-note{font-size:9px}.nojs-nav{display:flex;position:absolute;top:96px;left:7%;right:7%;z-index:18;justify-content:space-between;color:var(--cream);font-size:10px;gap:12px}.nojs-nav a{padding:8px 0}.collection-note{display:none}}
@media(max-width:380px){.hero-content{padding-top:155px}.hero-actions{gap:17px}.hero-secondary{font-size:9px}.hero .eyebrow{font-size:7px}.service-name h3{font-size:29px}.filters{gap:4px 14px}.filters button{font-size:10px}.project-title{font-size:26px}.viewer-copy{padding:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}

/* Phones: safe areas, touch controls, fluid content and full-screen project viewing. */
.project-image,.project-grid.filtered .project-image{aspect-ratio:4/3}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media(max-width:1000px){.header-contact{display:none}}
@media(max-width:760px), (max-width:1024px) and (max-height:550px) and (orientation:landscape){
  html{scroll-padding-top:calc(90px + env(safe-area-inset-top,0px))}
  .section-pad{padding:62px max(6%,calc(env(safe-area-inset-right,0px) + 16px)) 62px max(6%,calc(env(safe-area-inset-left,0px) + 16px))}
  .site-header{margin:0;height:calc(88px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(6%,calc(env(safe-area-inset-right,0px) + 16px)) 0 max(6%,calc(env(safe-area-inset-left,0px) + 16px))}
  .site-header.is-fixed{height:calc(74px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(6%,calc(env(safe-area-inset-right,0px) + 16px)) 0 max(6%,calc(env(safe-area-inset-left,0px) + 16px))}
  .desktop-nav,.header-contact{display:none}.menu-toggle{display:block;width:48px;height:48px;padding:12px}
  .brand{min-height:48px;gap:10px}.brand img{width:35px;height:35px}.brand>span{font-size:20px}.brand small{font-size:7px;letter-spacing:2.3px}
  .mobile-menu{height:100vh;height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding:calc(112px + env(safe-area-inset-top,0px)) max(6%,calc(env(safe-area-inset-right,0px) + 16px)) calc(30px + env(safe-area-inset-bottom,0px)) max(6%,calc(env(safe-area-inset-left,0px) + 16px))}
  .mobile-menu nav a{font-size:clamp(32px,8.5vw,45px);padding:19px 0;min-height:64px}.mobile-menu>p{font-size:10px;line-height:1.8;margin-top:28px}
  .hero{height:auto;min-height:100vh;min-height:min(800px,100svh);max-height:none;display:flex;flex-direction:column}
  .hero-visual{inset:0;opacity:1}.hero-slide{object-position:57% 45%}
  .hero-shade{background:linear-gradient(180deg,#24282099 0%,#24282038 20%,#242820a8 45%,#242820ed 80%,#242820 100%)}
  .hero-content{width:100%;margin-top:auto;padding:calc(170px + env(safe-area-inset-top,0px)) max(6%,calc(env(safe-area-inset-right,0px) + 16px)) 36px max(6%,calc(env(safe-area-inset-left,0px) + 16px))}
  .hero h1{font-size:clamp(42px,12.5vw,88px);line-height:1.02;letter-spacing:-1.6px;margin-bottom:24px}.hero .eyebrow{font-size:9px;letter-spacing:1.1px;line-height:1.8;margin-bottom:26px;gap:10px}.tiny-line{width:18px;flex-shrink:0}
  .hero-description{font-size:14px;line-height:1.8;max-width:430px;margin:24px 0}.hero-actions{gap:12px 24px;align-items:center}.round-link{font-size:12px;min-height:48px;gap:12px}.round-arrow{width:48px;height:48px;flex-shrink:0}.hero-secondary{font-size:12px;min-height:48px;display:flex;align-items:center;padding:10px 0}
  .hero-foot{position:relative;inset:auto;flex-wrap:nowrap;width:100%;padding:16px max(6%,calc(env(safe-area-inset-right,0px) + 16px)) calc(22px + env(safe-area-inset-bottom,0px)) max(6%,calc(env(safe-area-inset-left,0px) + 16px));gap:12px;margin:0}.scroll-cue,.hero-side{display:none}
  .hero-slide-info{gap:8px;max-width:none;margin:0;min-width:0}.hero-slide-info>span:first-child{font-size:24px;flex-shrink:0}.hero-slide-info>span:last-child{font-size:8px;line-height:1.6;letter-spacing:.6px;max-width:112px}.hero-rule{display:none}.hero-controls{gap:4px;flex-shrink:0}.hero-controls button{width:44px;height:44px;font-size:11px}
  .section-kicker{font-size:10px;letter-spacing:1px;padding-bottom:20px}.section-kicker>span:last-child{display:none}.services-intro{grid-template-columns:1fr;gap:23px;padding-top:34px}.services-intro h2{font-size:clamp(43px,11vw,62px);line-height:1.04;letter-spacing:-1.4px}.services-intro p{font-size:14px;line-height:1.85;margin-bottom:12px}
  .service-list{margin-top:30px}.service-row{grid-template-columns:22px minmax(0,1fr);gap:14px 12px;padding:28px 0 30px}.service-no{grid-column:1;grid-row:1;padding-top:7px;font-size:11px}.service-name{grid-column:2;grid-row:1;min-width:0}.service-name h3{font-size:32px;line-height:1.05;margin-bottom:10px}.service-name>span{font-size:9px;letter-spacing:.7px;line-height:1.7}.service-description{grid-column:2;grid-row:2;min-width:0}.service-description p{font-size:14px;line-height:1.85;max-width:none;margin-bottom:6px}.service-description .under-link{font-size:12px;min-height:48px;gap:10px}.service-row>img{display:block;grid-column:1/-1;grid-row:3;aspect-ratio:1.6;height:auto;object-fit:cover;border-radius:2px;margin-top:3px}
  .work-heading{display:block;padding-top:34px}.work-heading h2{font-size:clamp(43px,11vw,62px);line-height:1.04}.work-heading>p{font-size:14px;line-height:1.8;margin-top:22px}.filter-row{margin:26px 0 30px;display:block}.filters{display:grid;grid-template-columns:.8fr 1fr 1.35fr;gap:7px;width:100%}.filters button{font-size:12px;line-height:1.5;min-height:52px;padding:10px 7px;border:1px solid #c5c9bb;border-radius:3px;white-space:normal;display:block}.filters button:after{display:none}.filters button.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.filters sup{font-size:8px;margin-left:3px}.collection-note{display:none}
  .project-grid{grid-template-columns:minmax(0,1fr);gap:34px}.project-image,.project-grid.filtered .project-image{aspect-ratio:4/3}.project[data-project="3"] .project-image{aspect-ratio:4/3}.project[data-project="3"] .project-image img{object-position:50% 28%}.project-caption{padding-top:16px;gap:12px}.project-caption>span:first-child{min-width:0;align-items:flex-start;gap:10px}.project-title{font-size:clamp(26px,7.4vw,34px);line-height:1.12;letter-spacing:-.5px;overflow-wrap:break-word}.project-number{padding-top:7px;font-size:10px;flex-shrink:0}.project-arrow{flex-shrink:0;font-size:25px}.project-tag{font-size:9px;letter-spacing:1px;left:16px;bottom:16px}.view-circle{display:none}.work-bottom{margin-top:38px;flex-direction:column;align-items:flex-start;gap:8px}.work-bottom .under-link{font-size:12px;min-height:48px;line-height:1.6}
  .contact-layout{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:35px}.contact h2{font-size:clamp(48px,12vw,66px);line-height:1.03}.contact-intro>p{font-size:14px;line-height:1.85}.contact-location{font-size:9px;letter-spacing:1px}.contact-channel{padding:24px 0;min-width:0}.channel-label{font-size:10px;letter-spacing:1px;line-height:1.8}.channel-value{display:flex;align-items:center;gap:12px;min-height:48px;font-size:clamp(27px,7.5vw,36px);line-height:1.2;max-width:100%;letter-spacing:-.4px}.channel-value>span{font-size:19px}.channel-description{font-size:12px;line-height:1.7}.contact-channel .whatsapp-link{display:flex;align-items:center;justify-content:center;min-height:48px;width:100%;padding:12px 16px;margin-top:14px;background:var(--ink);color:var(--cream);border:0;border-radius:2px;font-size:13px;line-height:1.6}
  footer{padding:30px max(6%,calc(env(safe-area-inset-right,0px) + 16px)) calc(25px + env(safe-area-inset-bottom,0px)) max(6%,calc(env(safe-area-inset-left,0px) + 16px))}.footer-top{flex-wrap:wrap;gap:8px}.footer-home{width:100%;gap:16px;min-height:48px;justify-content:space-between;font-size:9px;letter-spacing:.6px}.footer-home span{font-size:8px;letter-spacing:.5px}.footer-socials{width:100%;gap:24px;flex-wrap:wrap}.footer-socials a{min-height:48px;font-size:10px;letter-spacing:.6px;display:flex;align-items:center}.footer-word{font-size:19vw;letter-spacing:-1.15vw;line-height:1.2;padding:22px 0 15px}.footer-bottom{flex-direction:column;font-size:9px;letter-spacing:.7px;gap:12px;line-height:1.8}
  .filter-row{position:relative}.collection-note#work-status{display:block;position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
  .project-dialog{width:100%;max-width:none;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;margin:0;inset:0;border-radius:0;overflow:auto;-webkit-overflow-scrolling:touch}.viewer-top{padding:calc(8px + env(safe-area-inset-top,0px)) max(18px,calc(env(safe-area-inset-right,0px) + 12px)) 8px max(20px,calc(env(safe-area-inset-left,0px) + 12px))}.viewer-top>span{font-size:10px;letter-spacing:1px;line-height:1.7}.icon-button{width:48px;height:48px}.viewer-layout{grid-template-columns:minmax(0,1fr)}.viewer-photo{min-height:0;max-height:none;touch-action:pan-y pinch-zoom}.viewer-photo>img{width:100%;height:auto;max-height:55vh;max-height:55svh;object-fit:contain}.viewer-gallery{bottom:12px}.viewer-gallery button{width:44px;height:44px}.viewer-copy{padding:28px max(6%,calc(env(safe-area-inset-right,0px) + 16px)) 20px max(6%,calc(env(safe-area-inset-left,0px) + 16px))}.viewer-copy>.eyebrow{font-size:10px;line-height:1.7;margin-bottom:15px;letter-spacing:1px}.viewer-copy>h2{font-size:clamp(34px,9vw,44px);line-height:1.04;letter-spacing:-1px;margin-bottom:20px}.viewer-copy>p{font-size:14px;line-height:1.85}.viewer-copy>.viewer-credit{font-size:11px}.viewer-copy>.under-link{font-size:12px;min-height:48px;white-space:normal}.viewer-enquire{font-size:13px;min-height:50px;padding:15px 18px;line-height:1.6;margin-top:18px}.viewer-navigation{margin-top:24px;padding-top:12px}.viewer-navigation>span{font-size:12px}.viewer-note{font-size:10px;line-height:1.8;padding:10px 6% calc(25px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:380px){.hero-actions{flex-direction:column;align-items:flex-start;gap:8px}.hero-content{padding-top:150px;padding-bottom:28px}.hero .eyebrow{font-size:8px;letter-spacing:.8px}.hero-slide-info>span:last-child{font-size:7px;max-width:96px}.hero-foot{gap:9px}.hero-slide-info{gap:6px}.service-name h3{font-size:29px}.filters button{font-size:11px;padding:10px 5px}.footer-socials{gap:20px}.footer-home span{font-size:7px}}
@media(max-width:1024px) and (max-height:550px) and (orientation:landscape){.hero{min-height:570px}.hero-content{padding-top:140px;max-width:710px}.hero h1{font-size:68px}.hero-description{max-width:570px}.hero-foot{padding-top:0}.mobile-menu{padding-top:100px}.mobile-menu nav a{padding:10px 0;min-height:50px;font-size:32px}.mobile-menu>p{margin-top:20px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-title{font-size:26px}.project[data-project="3"] .project-image{aspect-ratio:4/3}.viewer-photo>img{max-height:76vh;max-height:76svh}.service-row>img{max-height:320px}}
@media(hover:none) and (pointer:coarse){.project:hover .project-image>img{transform:none}.project:hover .project-arrow,.under-link:hover>span{transform:none}a.contact-channel:hover{padding-left:0}.project-overlay{opacity:.9}.hero-controls button:hover{background:transparent}.hero-controls button.is-active:hover{background:var(--cream)}}


/* Inline SVG cannot switch to an emoji font on iPhone or Android. */
.line-icon{display:inline-block;width:1em;height:1em;flex-shrink:0;vertical-align:-.12em;overflow:visible;pointer-events:none}
.hero-secondary,.whatsapp-link{gap:8px}
.hero-secondary>.line-icon,.whatsapp-link>.line-icon,.viewer-enquire>.line-icon{width:16px;height:16px;vertical-align:-3px}
.view-circle>.line-icon{width:20px;height:20px;margin-top:4px}
.round-arrow>.line-icon{width:24px;height:24px}
.footer-home .line-icon{width:11px;height:11px}

/* Header lockup matches the supplied light-on-photograph reference. */
.brand{color:#fff}
.hero-secondary{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding:10px 0 8px;border:0;box-shadow:inset 0 -1px 0 rgba(255,255,255,.38);color:#fff;font-size:12px;font-weight:400;line-height:1.4;letter-spacing:.15px;white-space:nowrap;transition:box-shadow .2s}
.hero-secondary:hover{box-shadow:inset 0 -1px 0 rgba(255,255,255,.85)}
.hero-secondary>.line-icon{width:16px;height:16px;stroke-width:1.4}
.brand img{filter:none;mix-blend-mode:normal;opacity:1;border-radius:0;object-fit:contain;background:none;width:43px;height:43px}
/* The photograph covers the entire opening section, including both edges. */
.hero-visual{inset:0;width:100%;height:100%;opacity:1}
.hero-slide{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-shade{background:linear-gradient(90deg,rgba(10,14,12,.66),rgba(10,14,12,.28) 58%,rgba(10,14,12,.12)),linear-gradient(0deg,rgba(10,14,12,.5),transparent 35%,rgba(10,14,12,.25))}
@media(max-width:760px), (max-width:1024px) and (max-height:550px) and (orientation:landscape){
  .brand img{width:35px;height:35px;filter:none;mix-blend-mode:normal;border-radius:0}
  .hero-slide{object-position:57% 45%}
  .hero-shade{background:linear-gradient(180deg,rgba(10,14,12,.38),rgba(10,14,12,.18) 20%,rgba(10,14,12,.53) 50%,rgba(10,14,12,.79))}
}

/* Keep the page position when iOS opens and closes an overlay. */
body.locked{position:fixed;top:var(--locked-scroll-top,0px);left:0;right:0;width:100%;overflow:hidden}
@media(max-width:760px), (max-width:1024px) and (max-height:550px) and (orientation:landscape){
  .mobile-menu,.project-dialog{height:100vh;height:var(--mobile-viewport-height,100vh);max-height:var(--mobile-viewport-height,100vh)}
  .hero-line{white-space:normal;overflow-wrap:break-word;max-width:100%}
  .hero h1{font-size:clamp(2.5rem,12.5vw,5.5rem)}
  .hero-content,.services-intro>div,.contact-intro,.contact-channels,.viewer-copy{min-width:0}
  .hero .eyebrow{flex-wrap:wrap;font-size:.5625rem;letter-spacing:.08em}
  .hero-description{font-size:.875rem}.hero-description br{display:none}
  .services-intro p,.service-description p,.work-heading>p,.contact-intro>p,.viewer-copy>p{font-size:.9375rem;line-height:1.85;overflow-wrap:break-word}
  .hero-actions{align-items:stretch}.hero-secondary,.round-link{font-size:.75rem}
  .hero-foot{flex-wrap:wrap;row-gap:14px}.hero-controls{margin-left:auto}
  .filters{grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1.35fr)}
  .filters button{min-width:0;font-size:.75rem;overflow-wrap:break-word}
  .service-name h3{overflow-wrap:break-word}.service-name>span{overflow-wrap:break-word}
  .project-title{min-width:0;overflow-wrap:break-word}.project-tag{max-width:calc(100% - 32px);line-height:1.7}
  .channel-value{min-width:0;flex-wrap:wrap;column-gap:10px;row-gap:2px;overflow-wrap:break-word;font-variant-numeric:lining-nums}
  .channel-description{font-size:.75rem}.channel-label{font-size:.625rem}
  .contact-channel .whatsapp-link{font-size:.8125rem;gap:8px;flex-wrap:wrap}
  .footer-home{flex-wrap:wrap;row-gap:2px}.footer-socials{justify-content:space-between;column-gap:16px}
  .footer-bottom>span{overflow-wrap:break-word}
  .viewer-top{gap:12px}.viewer-top>span{min-width:0;font-size:.625rem;overflow-wrap:break-word}
  .viewer-copy>h2{overflow-wrap:break-word}.viewer-copy>.eyebrow{font-size:.625rem}
  .viewer-copy>.viewer-credit{font-size:.6875rem}.viewer-copy>.under-link{font-size:.75rem;gap:16px}
  .viewer-enquire{font-size:.8125rem;overflow-wrap:break-word}.viewer-navigation>span{font-size:.75rem}
  .viewer-note{font-size:.625rem}.viewer-gallery{max-width:calc(100% - 32px)}
  .hero-grain{display:none}
}
@media(max-width:340px){
  .section-pad{padding-left:18px;padding-right:18px}
  .hero-content{padding-left:18px;padding-right:18px}.hero-foot{padding-left:18px;padding-right:18px}
  .brand>span{font-size:18px;letter-spacing:2px}.brand small{font-size:6px;letter-spacing:2px}
  .brand{gap:8px}.hero-actions{flex-direction:column;align-items:flex-start}
  .filters{gap:5px}.filters button{padding-left:4px;padding-right:4px}
  .service-row{grid-template-columns:18px minmax(0,1fr);column-gap:10px}
}
@media(hover:none) and (pointer:coarse){
  .site-header.is-fixed{backdrop-filter:none;-webkit-backdrop-filter:none;background:#242820f7}
  .project-dialog::backdrop{backdrop-filter:none;-webkit-backdrop-filter:none}
  .project:active .project-image{opacity:.92}.filters button:active{opacity:.8}
}
/* Preserve uniform thumbnails on browsers without CSS aspect-ratio. */
@supports not (aspect-ratio:4/3){
  .project-image,.project-grid.filtered .project-image{height:0;padding-bottom:75%}
  .project-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
}

/* Frequently asked questions */
.faq-title-label{display:inline-block;font-size:1.3em;line-height:1.15;margin:10px 0}
.faq-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;padding-top:60px;align-items:start}.faq-heading h2{font-size:clamp(48px,5.3vw,78px);line-height:1;letter-spacing:-2px}.faq-heading h2 em{color:#81856f}.faq-heading>p{font-size:12px;line-height:1.9;color:var(--muted);max-width:300px}.faq-list{border-top:1px solid var(--line);min-width:0}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;align-items:center;gap:24px;justify-content:space-between;padding:24px 0;cursor:pointer;font-size:14px;line-height:1.65}.faq-list summary::-webkit-details-marker{display:none}.faq-list .detail-sign{flex-shrink:0;margin-left:0}.faq-list .detail-sign:before,.faq-list .detail-sign:after{background:var(--ink)}.faq-list details p{font-size:12px;line-height:1.95;color:var(--muted);margin:0;padding:0 30px 25px 0}
@media(max-width:760px){.faq-layout{grid-template-columns:1fr;gap:28px;padding-top:35px}.faq-heading h2{font-size:clamp(42px,9vw,62px);letter-spacing:-1.5px;margin-bottom:20px}.faq-heading>p{max-width:100%}.faq-list summary{font-size:14px;padding:22px 0;gap:18px}.faq-list details p{padding-right:18px}}
