:root{--paper:#f2f0ea;--ink:#181815;--line:#18181538}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.nav{z-index:5;color:#fff;justify-content:space-between;align-items:flex-start;padding:30px 3.2vw;display:flex;position:absolute;inset:0 0 auto}.brand{letter-spacing:.11em;font-size:13px;font-weight:700;line-height:1.05}.brand span{color:#b5a383}nav{letter-spacing:.08em;text-transform:uppercase;gap:32px;font-size:12px;display:flex}nav a{border-bottom:1px solid #0000;padding-bottom:5px}nav a:hover{border-color:currentColor}.hero{color:#fff;align-items:flex-end;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero-image{background:linear-gradient(90deg,#0000006e,#0000000a 72%),url(/portfolio/main-hero.jpg) 50%/cover;position:absolute;inset:0;transform:scale(1.01)}.hero-copy{z-index:1;max-width:990px;padding:0 3.2vw 8vh;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.2em;margin:0 0 30px;font-size:10px}h1,h2,p{margin-top:0}.hero h1{letter-spacing:-.055em;margin:0;font-family:Georgia,serif;font-size:clamp(65px,10.5vw,155px);font-weight:400;line-height:.79}em{font-weight:400}.intro{max-width:480px;margin:38px 0 0;font-size:16px;line-height:1.55}.scroll{z-index:2;letter-spacing:.14em;text-transform:uppercase;gap:35px;font-size:11px;display:flex;position:absolute;bottom:8vh;right:3.2vw}.work{padding:120px 3.2vw 150px}.section-head{border-top:1px solid var(--line);justify-content:space-between;margin-bottom:85px;padding-top:18px;display:flex}.section-head p{letter-spacing:.14em;text-transform:uppercase;font-size:10px}.project-grid{grid-template-columns:repeat(12,1fr);gap:90px 2.5vw;display:grid}.project{grid-column:span 6}.project-2,.project-5{padding-top:130px}.project-image{aspect-ratio:4/5;background-position:50%;background-size:cover;width:100%}.project-3 .project-image,.project-6 .project-image{aspect-ratio:5/4}.project-meta{justify-content:space-between;align-items:baseline;padding-top:14px;display:flex}.project-meta h2{margin:0;font:400 22px Georgia,serif}.project-meta p{letter-spacing:.1em;text-transform:uppercase;color:#646158;margin:0;font-size:10px}.about{background:#d7d0c3;grid-template-columns:1fr 2fr;gap:4vw;padding:130px 3.2vw;display:grid}.about h2{letter-spacing:-.04em;max-width:1050px;font:400 clamp(42px,6vw,86px)/1.03 Georgia,serif}.about div>p{max-width:570px;margin:45px 0 35px auto;font-size:16px;line-height:1.7}.about a{text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid;width:max-content;margin-left:auto;padding-bottom:6px;font-size:12px;display:block}.services{grid-template-columns:1fr 2fr;padding:120px 3.2vw;display:grid}.service-list{flex-direction:column;display:flex}.service-list span{border-bottom:1px solid var(--line);padding:14px 0;font:400 clamp(32px,4.5vw,70px)/1.2 Georgia,serif}footer{color:#efede7;background:#171714;padding:115px 3.2vw 30px}footer h2{letter-spacing:-.045em;margin-bottom:80px;font:400 clamp(58px,9vw,130px)/.9 Georgia,serif}.email{border-bottom:1px solid #fff6;justify-content:space-between;padding-bottom:14px;font-size:clamp(16px,2.2vw,32px);display:flex}.footer-bottom{letter-spacing:.12em;text-transform:uppercase;grid-template-columns:1fr 1fr auto;padding-top:85px;font-size:10px;display:grid}@media (max-width:700px){.nav{padding:22px 20px}.nav nav{gap:15px}.nav nav a:nth-child(2){display:none}.hero-copy{padding:0 20px 13vh}.hero h1{font-size:18vw}.intro{max-width:300px;font-size:14px}.scroll{display:none}.work{padding:85px 20px}.section-head{margin-bottom:50px}.section-head p:last-child{display:none}.project-grid{display:block}.project{margin-bottom:55px;padding:0}.project-image,.project-3 .project-image,.project-6 .project-image{aspect-ratio:4/5}.project-meta{display:block}.project-meta p{margin-top:6px}.about,.services{padding:85px 20px;display:block}.about>.eyebrow,.services>.eyebrow{margin-bottom:45px}.about div>p,.about a{margin-left:0}.service-list span{padding:14px 0}footer{padding:85px 20px 25px}.footer-bottom{grid-template-columns:1fr auto;gap:20px}.footer-bottom p:nth-child(2){display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.enquiry{border-top:1px solid var(--line);background:#e8e4dc;grid-template-columns:1fr 2fr;gap:4vw;padding:125px 3.2vw;display:grid}.enquiry-heading h2{letter-spacing:-.045em;margin-bottom:35px;font:400 clamp(48px,6vw,88px)/.96 Georgia,serif}.enquiry-heading>p:last-child{color:#5d5a52;max-width:430px;font-size:14px;line-height:1.7}.enquiry form{grid-template-columns:1fr 1fr;gap:32px 28px;padding-top:7px;display:grid}.enquiry label{flex-direction:column;gap:10px;display:flex}.enquiry label span{letter-spacing:.14em;text-transform:uppercase;font-size:10px}.enquiry input,.enquiry select,.enquiry textarea{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);background:0 0;border-radius:0;outline:none;padding:8px 0 13px;font:15px Arial,Helvetica,sans-serif}.enquiry textarea{resize:vertical;line-height:1.5}.enquiry input:focus,.enquiry select:focus,.enquiry textarea:focus{border-color:var(--ink)}.enquiry input::placeholder,.enquiry textarea::placeholder{color:#8a867d}.enquiry .full{grid-column:1/-1}.enquiry button{border:1px solid var(--ink);background:var(--ink);color:var(--paper);text-transform:uppercase;letter-spacing:.15em;cursor:pointer;grid-column:1/-1;justify-content:space-between;align-items:center;padding:18px 20px;font-size:11px;display:flex}.enquiry button:hover{color:var(--ink);background:0 0}.form-note{color:#77736b;grid-column:1/-1;margin:-18px 0 0;font-size:11px}@media (max-width:700px){.enquiry{padding:85px 20px;display:block}.enquiry-heading{margin-bottom:60px}.enquiry form{grid-template-columns:1fr;gap:28px}.enquiry .full,.enquiry button,.form-note{grid-column:auto}}.view-all{border-bottom:1px solid var(--ink);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;max-width:520px;margin:100px 0 0 auto;padding-bottom:10px;font-size:12px;display:flex}.portfolio-page{background:var(--paper);min-height:100vh}.portfolio-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding:30px 3.2vw;display:flex}.portfolio-nav .brand{color:var(--ink)}.portfolio-intro{padding:100px 3.2vw 120px}.portfolio-intro h1{letter-spacing:-.065em;margin:0 0 70px;font:400 clamp(82px,15vw,220px)/.82 Georgia,serif}.portfolio-intro>div{border-top:1px solid var(--line);grid-template-columns:2fr 1fr;gap:4vw;padding-top:20px;display:grid}.portfolio-intro>div p{max-width:550px;font-size:14px;line-height:1.6}.portfolio-intro>div p:last-child{text-align:right;letter-spacing:.14em;text-transform:uppercase;font-size:10px}.portfolio-tools{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin:0 3.2vw 52px;padding:18px 0;display:flex}.portfolio-tools p{letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:10px}.portfolio-tools p span{margin-right:8px;font:400 22px Georgia,serif}.portfolio-filters{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.portfolio-filters button{border:1px solid var(--line);color:var(--ink);letter-spacing:.09em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:99px;padding:9px 14px;font-size:10px;transition:all .25s}.portfolio-filters button:hover,.portfolio-filters button.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.portfolio-list{grid-template-columns:repeat(12,1fr);gap:72px 1.7vw;padding:0 3.2vw 150px;display:grid}.portfolio-item{color:var(--ink);font:inherit;text-align:left;cursor:zoom-in;background:0 0;border:0;grid-column:span 4;padding:0}.portfolio-item:nth-child(8n+1){grid-column:1/-1}.portfolio-item:nth-child(8n+5){grid-column:span 8}.portfolio-image{aspect-ratio:4/5;background-position:50%;background-size:cover;display:block;position:relative;overflow:hidden}.portfolio-image:after{content:"";opacity:0;background:linear-gradient(#0000 60%,#00000073);transition:opacity .35s;position:absolute;inset:0}.portfolio-open{z-index:1;color:#fff;letter-spacing:.12em;text-transform:uppercase;opacity:0;justify-content:space-between;font-size:10px;transition:all .35s;display:flex;position:absolute;bottom:17px;left:18px;right:18px;transform:translateY(8px)}.portfolio-open b{font-size:16px;font-weight:400}.portfolio-item:nth-child(8n+1) .portfolio-image{aspect-ratio:16/8}.portfolio-item:nth-child(8n+5) .portfolio-image{aspect-ratio:16/9}.portfolio-item:hover .portfolio-image:after,.portfolio-item:focus-visible .portfolio-image:after{opacity:1}.portfolio-item:hover .portfolio-open,.portfolio-item:focus-visible .portfolio-open{opacity:1;transform:none}.portfolio-item .project-meta{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.portfolio-item .project-meta strong{font:400 19px Georgia,serif}.portfolio-item .project-meta small{letter-spacing:.1em;text-transform:uppercase;color:#646158;font-size:10px}.lightbox{z-index:50;color:#fff;background:#0f0f0df7;grid-template-columns:80px 1fr 80px;align-items:center;padding:52px 3.2vw 25px;display:grid;position:fixed;inset:0}.lightbox figure{min-width:0;margin:0}.lightbox img{object-fit:contain;width:100%;height:calc(100vh - 140px);display:block}.lightbox figcaption{letter-spacing:.1em;text-transform:uppercase;grid-template-columns:1fr 1fr auto;gap:20px;padding-top:14px;font-size:10px;display:grid}.lightbox figcaption strong{text-transform:none;letter-spacing:0;font:400 18px Georgia,serif}.lightbox-close,.lightbox-arrow{color:#fff;cursor:pointer;background:0 0;border:0}.lightbox-close{letter-spacing:.12em;text-transform:uppercase;font-size:11px;position:absolute;top:24px;right:3.2vw}.lightbox-arrow{padding:24px;font-size:32px}.lightbox-prev{justify-self:start}.lightbox-next{justify-self:end}.portfolio-cta{text-align:center;background:#d7d0c3;padding:120px 3.2vw}.portfolio-cta h2{letter-spacing:-.045em;margin-bottom:55px;font:400 clamp(52px,8vw,120px)/1 Georgia,serif}.portfolio-cta a{letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid;gap:80px;padding-bottom:8px;font-size:12px;display:inline-flex}@media (max-width:700px){.view-all{margin-top:60px}.portfolio-nav{padding:22px 20px}.portfolio-nav nav{gap:14px}.portfolio-nav nav a:nth-child(2){display:none}.portfolio-intro{padding:75px 20px 60px}.portfolio-intro h1{margin-bottom:45px;font-size:22vw}.portfolio-intro>div{grid-template-columns:1fr}.portfolio-intro>div p:last-child{text-align:left}.portfolio-tools{margin:0 20px 38px;display:block}.portfolio-tools p{margin-bottom:14px}.portfolio-filters{justify-content:flex-start;gap:6px}.portfolio-filters button{padding:8px 10px}.portfolio-list{padding:0 20px 80px;display:block}.portfolio-item{width:100%;margin-bottom:52px}.portfolio-image,.portfolio-item:nth-child(8n+1) .portfolio-image,.portfolio-item:nth-child(8n+5) .portfolio-image{aspect-ratio:4/5}.portfolio-open{opacity:1;transform:none}.portfolio-image:after{opacity:.55}.lightbox{grid-template-columns:45px 1fr 45px;padding:55px 8px 18px}.lightbox img{height:calc(100vh - 155px)}.lightbox-arrow{padding:10px;font-size:24px}.lightbox figcaption{grid-template-columns:1fr auto}.lightbox figcaption span:nth-child(2){display:none}.portfolio-cta{padding:85px 20px}}.hero-images,.hero-slide,.hero-shade{position:absolute;inset:0}.hero-slide{opacity:0;background-position:50%;background-size:cover;transition:opacity 1.2s,transform 7s;transform:scale(1.035)}.hero-slide.active{opacity:1;transform:scale(1)}.hero-shade{pointer-events:none;background:linear-gradient(90deg,#00000075,#0000000d 72%)}.hero-controls{z-index:3;gap:8px;display:flex;position:absolute;bottom:14vh;right:3.2vw}.hero-controls button{color:#ffffffad;text-align:left;letter-spacing:.12em;cursor:pointer;background:0 0;border:0;border-top:1px solid #ffffff73;width:42px;padding:9px 0;font-size:9px;transition:all .3s}.hero-controls button.active{color:#fff;border-color:#fff;width:72px}@media (max-width:700px){.hero-controls{bottom:5vh;left:20px;right:auto}.hero-controls button{width:32px}.hero-controls button.active{width:54px}}@media (prefers-reduced-motion:reduce){.hero-slide{transition:none;transform:none}}
