:root{--ink:#171918;--gold:#d7b875;--paper:#f7f7f3;--muted:#676a64;--line:#dcded6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;background:var(--paper);color:var(--ink)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #b68b38;outline-offset:5px}.wrap{width:min(1280px,calc(100% - 112px));margin:auto}.skip{position:absolute;top:-100px;left:20px;background:white;color:black;padding:15px;z-index:10}.skip:focus{top:10px}.header{background:var(--ink);color:#f6f5ee;border-bottom:1px solid #383a34}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:114px}.brand{flex-shrink:0}.brand-crop{display:block;width:200px;height:92px;overflow:hidden;position:relative}.brand-crop img{position:absolute;width:355px;max-width:none;height:355px;left:-77px;top:-109px}.header nav{display:flex;gap:32px;font-size:.9rem}.header nav a:hover,.header-contact:hover{color:var(--gold)}.header-contact{border-bottom:1px solid var(--gold);padding:8px 0;font-size:.9rem}.header-contact span{margin-left:20px;color:var(--gold)}.hero{position:relative;isolation:isolate;background:#282922;color:white;min-height:720px;display:flex;flex-direction:column;justify-content:center}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-fit:cover;object-position:center 52%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(10,14,12,.92),rgba(10,14,12,.65) 43%,rgba(10,14,12,.13)),linear-gradient(0deg,rgba(10,14,12,.6),transparent 30%)}.hero-content{padding-top:85px;padding-bottom:100px}.eyebrow{font-size:.75rem;letter-spacing:.19em;font-weight:600;margin:0 0 26px;color:var(--muted)}.hero .eyebrow,.contact .eyebrow{color:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:400;letter-spacing:-.05em;line-height:1.08}h1{font-size:clamp(3.5rem,6.5vw,6rem);margin-bottom:28px;max-width:880px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--gold)}.hero-description{font-size:1.15rem;line-height:1.7;max-width:460px;color:#e0e1db;margin-bottom:32px}.actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.button{display:inline-flex;gap:28px;align-items:center;justify-content:center;min-height:58px;padding:15px 25px;font-size:.93rem;font-weight:600;transition:background .2s,transform .2s}.gold{background:var(--gold);color:var(--ink)}.gold:hover{background:#e8ca88;transform:translateY(-2px)}.text-link{font-size:.88rem;border-bottom:1px solid #777d70;padding:10px 0;display:inline-flex;gap:20px;align-items:center}.hero-foot{display:flex;justify-content:space-between;border-top:1px solid #ffffff40;padding-top:22px;padding-bottom:25px;font-size:.8rem;color:#d9dad4}.intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-top:100px;padding-bottom:55px;align-items:end}h2{font-size:clamp(2.5rem,4vw,3.7rem);margin-bottom:0}.intro>p{font-size:1.05rem;max-width:510px;color:var(--muted);margin-bottom:4px}.services{display:grid;grid-template-columns:repeat(3,1fr);padding-bottom:100px}.services article{padding:32px 32px 24px 0;border-top:1px solid var(--line)}.services article+article{border-left:1px solid var(--line);padding-left:32px}.number{font-size:.85rem;color:#8b743f;display:block;margin-bottom:26px}h3{font-size:1.55rem;font-weight:400;line-height:1.3;letter-spacing:-.025em;margin-bottom:20px}.services p{color:var(--muted);max-width:310px;font-size:.96rem;min-height:82px}.services a{font-size:.85rem;display:flex;justify-content:space-between;max-width:310px;padding-top:15px}.services a:hover{color:#8b6727}.projects{padding:88px 0 90px;background:#e9ebe5}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:46px}.section-heading>p{color:var(--muted);font-size:.95rem;margin-bottom:5px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 26px}.gallery figure{margin:0}.gallery .wide{grid-column:span 2}.gallery img{width:100%;height:310px;object-fit:cover;transition:filter .2s}.gallery a:hover img{filter:brightness(.9)}.gallery figcaption{display:flex;justify-content:space-between;padding-top:13px;font-size:.87rem}.gallery figcaption span+span{color:#70756b}.process{padding:105px 0;display:grid;grid-template-columns:1fr 1fr;gap:110px}.process h2 em{color:#8e7037}.process-title>p:not(.eyebrow){color:var(--muted);max-width:380px;margin:30px 0 15px}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:30px;padding:26px 0;border-top:1px solid var(--line)}.steps li>span{color:#8e7037;font-size:.8rem;padding-top:5px}.steps h3{font-size:1.23rem;margin-bottom:10px}.steps p{color:var(--muted);font-size:.95rem;margin-bottom:0}.contact{background:var(--ink);color:white;padding:100px 0}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:100px;align-items:center}.contact h2{margin-bottom:26px}.contact p{color:#b8bdb3}.contact .button{margin-top:14px}.contact .small{font-size:.8rem;margin:15px 0 0}.contact-details{border-left:1px solid #484d43;padding-left:65px}.contact-details .eyebrow{display:block;font-size:.75rem;margin-bottom:15px}.phone{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.4;white-space:nowrap;letter-spacing:-.025em}.contact-details>p{font-size:.75rem;margin-top:10px}.contact-note{border-top:1px solid #484d43;margin-top:35px;padding-top:30px}.contact-note h3{font-size:1.1rem;margin-bottom:12px}.contact-note p{font-size:.95rem;margin:0}.faq{padding-top:90px;padding-bottom:100px}.faq h2{font-size:2.4rem;margin-bottom:38px}.faq details{border-top:1px solid var(--line);padding:21px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:1.05rem;padding-right:20px}.faq details p{color:var(--muted);margin:18px 0 0;max-width:850px}footer{background:#111410;color:#b9bfb4;padding:40px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:.85rem}.footer-brand{color:var(--gold);font-size:1.2rem;letter-spacing:.06em;font-weight:bold;line-height:1.4}.footer-brand span{font-weight:400}.footer-brand small{display:block;font-size:.6rem;letter-spacing:.13em}.footer-inner p{margin:0}@media(min-width:1600px){.hero-photo{object-position:center 55%}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.header nav{gap:18px;font-size:.8rem}.header-inner{gap:20px}.brand-crop{width:165px}.brand-crop img{left:-94px}.hero{min-height:670px}.intro,.process{gap:50px}.contact-grid{gap:50px}.contact-details{padding-left:30px}.services p{min-height:110px}.gallery img{height:260px}}@media(max-width:700px){html{scroll-padding-top:20px}.wrap{width:calc(100% - 40px)}.header-inner{min-height:96px;flex-wrap:wrap;gap:0;padding-bottom:14px}.brand-crop{height:78px}.brand-crop img{top:-116px}.header nav{order:3;width:100%;justify-content:space-between;gap:12px;font-size:.8rem;padding-top:5px}.header-contact{font-size:.85rem}.hero{min-height:680px}.hero-photo{object-position:64% center}.hero-shade{background:linear-gradient(90deg,#0a0e0cee,#0a0e0c80),linear-gradient(0deg,#0a0e0c99,transparent)}.hero-content{padding-top:75px;padding-bottom:60px}.hero .eyebrow{font-size:.67rem;letter-spacing:.11em;max-width:270px}.hero h1{font-size:3.55rem}.hero-description{font-size:1.05rem}.actions{gap:16px}.button{padding:16px 20px;font-size:.85rem;gap:16px}.hero-foot{font-size:.73rem;gap:20px;align-items:start}.hero-foot span{max-width:160px}.intro{grid-template-columns:1fr;gap:25px;padding-top:65px;padding-bottom:35px}.eyebrow{font-size:.7rem;margin-bottom:20px}.intro>p{font-size:1rem}.services{grid-template-columns:1fr;padding-bottom:55px}.services article,.services article+article{border-left:0;padding:25px 0}.services h3 br{display:none}.services h3{font-size:1.5rem;margin-bottom:14px}.services .number{margin-bottom:14px}.services p{min-height:0;max-width:none}.services a{max-width:none}.projects{padding:60px 0}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:25px}.gallery{grid-template-columns:1fr 1fr;gap:26px 16px}.gallery .wide{grid-column:span 2}.gallery img{height:220px}.gallery .wide img{height:290px}.gallery figcaption{font-size:.76rem;gap:12px;line-height:1.5}.gallery figcaption span+span{display:none}.process{grid-template-columns:1fr;gap:40px;padding:65px 0}.process h2{font-size:3rem}.steps li{gap:20px}.contact{padding:65px 0}.contact-grid{grid-template-columns:1fr;gap:42px}.contact h2{font-size:2.8rem}.contact-details{padding-left:0;border-left:0;border-top:1px solid #484d43;padding-top:30px}.phone{font-size:2.3rem}.contact-note{margin-top:25px}.faq{padding-top:60px;padding-bottom:60px}.faq h2{font-size:2.2rem}.faq summary{font-size:1rem}.footer-inner{flex-wrap:wrap;justify-content:start;gap:25px}.footer-brand{width:100%}.footer-inner p{margin-right:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.enquiry{display:grid;grid-template-columns:1fr 1.5fr;gap:75px;padding-top:90px;padding-bottom:70px}.enquiry-intro>p:not(.eyebrow){color:var(--muted);margin-top:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid label{display:flex;flex-direction:column;font-size:.9rem;gap:8px}.form-grid label>span{display:contents;color:var(--muted)}.form-grid .full{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid #b7bdb1;border-radius:0;background:white;color:var(--ink);font:inherit;font-size:1rem;padding:13px;min-height:48px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #947336;outline-offset:2px}.enquiry button{border:0;cursor:pointer;margin-top:25px;font-family:inherit}.form-note{font-size:.8rem;color:var(--muted)}.enquiry-result{border:1px solid #b0b9a5;padding:24px;margin-top:25px;background:#ecede7}.enquiry-result[hidden]{display:none}.enquiry-result h3{font-size:1.3rem}.enquiry-result pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.9rem;border-top:1px solid #ccd0c5;padding-top:16px;margin-bottom:25px}@media(max-width:800px){.enquiry{grid-template-columns:1fr;gap:30px;padding-top:60px;padding-bottom:30px}}@media(max-width:480px){.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.enquiry-result{padding:18px}}
