:root{--gold:#b7955e;--gold-soft:#d8c5a2;--ink:#090908;--paper:#f4f1eb;--surface:#11110f;--line:rgba(216,197,162,.2)}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.icon{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.display{font-size:clamp(2.7rem,6.2vw,6.2rem);line-height:.98}.section-title{font-size:clamp(2rem,4.2vw,4.25rem)}.copy-large{font-size:clamp(1.65rem,2.8vw,3.1rem)}.quote blockquote{font-size:clamp(1.35rem,2.55vw,2.55rem);max-width:70rem}.eyebrow,.service-num{color:var(--gold-soft)}.section{padding:clamp(4rem,7vw,7rem) 0}.page-hero{padding:clamp(8rem,14vw,12rem) 0 clamp(3rem,6vw,5rem)}.compact-hero .display{max-width:960px}.hero-copy{padding-bottom:clamp(3.5rem,7vh,6rem)}.hero .display{max-width:950px}.hero .lede{max-width:40rem}.btn{min-height:3rem;padding:.65rem 1.1rem}.brand{width:154px;height:44px;display:flex;align-items:center}.brand img,.footer-logo img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.footer-logo{display:block;width:190px;height:58px}.site-footer{border-top:1px solid var(--line)}.site-footer p{color:#aaa}.contact-links a{display:flex;align-items:center;gap:.65rem}.contact-links .icon{color:var(--gold)}.desktop-nav .active{position:relative}.desktop-nav .active:after{content:"";position:absolute;left:0;right:0;bottom:-.5rem;height:1px;background:var(--gold)}
.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.service-card,.service-card:not(:nth-child(3n)),.service-card:nth-child(odd){padding:1.55rem!important;border:0!important;background:var(--ink);min-height:210px;display:flex;flex-direction:column}.service-card h3{margin:auto 0 .5rem;font-size:1.22rem}.service-card p{margin:0}.work-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.project{border-radius:.65rem}.project-media{aspect-ratio:4/3}.project-info{padding:.85rem}.project h3{font-size:.9rem}.project small{font-size:.68rem}.project-info>span{color:var(--gold)}.quote{padding:clamp(2rem,4vw,4rem);border-radius:.8rem}.testimonials-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.testimonial{padding:1.5rem;border-radius:.7rem}.testimonial blockquote{font-size:1.05rem;line-height:1.5}
.service-intro{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:4rem;margin-bottom:3rem}.service-intro .section-title{margin-bottom:0}.service-visual-grid{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:.8rem;align-items:end;margin-bottom:4rem}.service-feature{position:relative;overflow:hidden;border-radius:.7rem}.service-feature img{aspect-ratio:4/3;object-fit:cover;filter:grayscale(.7)}.service-feature.tall img{aspect-ratio:4/3}.service-feature span{position:absolute;left:.8rem;bottom:.8rem;padding:.45rem .65rem;background:rgba(0,0,0,.8);font-size:.7rem;letter-spacing:.08em;color:var(--gold-soft)}.refined{display:grid;grid-template-columns:1fr 1fr;gap:0 2.5rem}.refined details{padding:1.2rem 0}.refined summary{font-size:1.3rem;justify-content:flex-start;gap:1rem}.refined summary>span{font-size:.65rem;color:var(--gold);padding-top:.4rem}.refined summary:after{margin-left:auto}.refined p{padding-left:2.2rem;font-size:.9rem}
.contact-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(2rem,6vw,6rem);align-items:start}.contact-directory{position:sticky;top:8rem}.contact-directory h2,.form-heading h2{font-family:Manrope;font-weight:300;font-size:clamp(1.8rem,3vw,3rem);margin:.6rem 0 1.6rem}.directory-list{border-top:1px solid var(--line)}.directory-list>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.directory-list>a:hover{color:var(--gold-soft)}.directory-list small{display:block;color:#888;font-size:.67rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.15rem}.directory-icon{width:2.7rem;height:2.7rem;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--gold)}.contact-note{display:flex;gap:.8rem;margin-top:2rem;color:#aaa}.contact-note>.icon{color:var(--gold);margin-top:.3rem}.contact-note p{margin:0}.contact-note span{font-size:.75rem;color:#666}.enquiry-card{background:var(--paper);color:#111;padding:clamp(1.5rem,3vw,2.6rem);border-radius:.8rem}.form-heading p{color:#777;font-size:.8rem}.enquiry-card .field label{color:#5e5951}.enquiry-card .field input,.enquiry-card .field select,.enquiry-card .field textarea{background:transparent;color:#111;border:0;border-bottom:1px solid #bbb;border-radius:0;padding:.75rem 0}.enquiry-card .field input:focus,.enquiry-card .field select:focus,.enquiry-card .field textarea:focus{outline:0;border-color:var(--gold)}.enquiry-card .field textarea{min-height:100px}.enquiry-card .consent{color:#615d56}.form-submit{display:flex;align-items:center;gap:1rem}.form-submit .btn{width:max-content;background:#111;color:#fff}.form-submit .btn:hover{background:var(--gold);border-color:var(--gold)}.form-status{color:#38613f}
.menu-toggle{position:relative}.menu-toggle span{position:absolute;left:11px;right:11px;height:1px;background:#fff;transition:.25s}.menu-toggle span:first-child{top:20px}.menu-toggle span:last-child{top:27px}.site-header.open .menu-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}.site-header.open .menu-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
@media(max-width:1050px){.work-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.display{font-size:clamp(2.65rem,11vw,4.8rem)}.work-grid{grid-template-columns:repeat(2,1fr)}.service-intro,.contact-layout{grid-template-columns:1fr;gap:2rem}.service-visual-grid{grid-template-columns:1fr 1fr}.service-feature:last-child{display:none}.refined{grid-template-columns:1fr}.contact-directory{position:static}.site-header.open{position:fixed;inset:0;background:#090908;z-index:100;padding:1.1rem 0}.site-header.open .nav{height:100%;align-items:flex-start}.site-header.open .desktop-nav{display:flex;position:absolute;inset:76px 0 0;background:#090908;padding:2rem var(--pad) max(2rem,env(safe-area-inset-bottom));font-size:clamp(1.8rem,8vw,3rem);gap:.3rem;overflow-y:auto;z-index:2}.site-header.open .desktop-nav a:not(.btn){width:100%;padding:.55rem 0;border-bottom:1px solid var(--line)}.site-header.open .desktop-nav .btn{margin-top:1.5rem;min-height:3.5rem;font-size:1rem}.menu-open #main,.menu-open #site-footer{visibility:hidden}}
@media(max-width:560px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.project-info{padding:.65rem;min-height:72px}.project h3{font-size:.78rem;line-height:1.25}.project small{font-size:.6rem}.services-grid{grid-template-columns:1fr}.service-card{min-height:170px}.service-visual-grid{grid-template-columns:1fr}.service-feature:last-child{display:block}.service-feature:nth-child(2){display:none}.contact-section{padding-top:2rem}.enquiry-card{margin-inline:-.25rem}.footer-logo{width:165px}.footer-grid{gap:2rem}.quote{padding:1.5rem}.quote blockquote{font-size:1.25rem}}
