:root{--ink:#28332d;--cream:#f6f4ed;--paper:#eae7df;--green:#303e34;--olive:#67755e;--muted:#777e74;--line:#d8d9cf;--rust:#c5a17d;--display:'Playfair Display',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #ca996a;outline-offset:4px}.shell{width:min(1370px,calc(100% - 96px));margin:auto}.skip-link{position:absolute;z-index:999;top:-100px;left:10px;background:white;padding:14px}.skip-link:focus{top:10px}.preview-strip{display:flex;justify-content:center;align-items:center;gap:13px;min-height:27px;padding:4px 12px;background:#e4e5d9;color:#425043;text-align:center;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.preview-mark{width:5px;height:5px;background:#71836d;border-radius:50%}.preview-divider{height:10px;border-left:1px solid #b2b9ab}.site-header{position:relative;z-index:20;background:#f8f7f1}.header-inner{min-height:86px;display:flex;align-items:center;gap:34px}.logo{display:flex;gap:11px;align-items:center;flex-shrink:0}.logo-sign{width:37px;height:37px;border:1.4px solid var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:3px;transform:rotate(-20deg)}.logo-sign span{height:13px;width:3px;background:var(--green);transform:skew(-16deg)}.logo-sign span:nth-child(2){height:21px}.logo-words strong{display:block;font-size:19px;letter-spacing:.17em;font-weight:800;line-height:1.1}.logo-words small{font-size:9px;letter-spacing:.53em;font-weight:600}.nav{display:flex;gap:29px;align-items:center;margin-left:auto}.nav a{font-size:12px;font-weight:650;color:#445148;transition:color .2s}.nav a:hover{color:#a4805d}.nav-enquire{margin-left:14px;border:1px solid var(--green);padding:15px 20px;font-size:11px;font-weight:750;white-space:nowrap;transition:background .2s,color .2s}.nav-enquire span{margin-left:15px}.nav-enquire:hover{background:var(--green);color:white}.menu-btn{display:none;background:none;border:0;padding:12px;margin-left:auto}.menu-btn span{display:block;width:25px;height:2px;background:var(--ink);margin:6px 0}.hero{position:relative;min-height:min(790px,85vh);background:#28342c;isolation:isolate;color:white;overflow:hidden}.hero-photo,.hero-gradient{position:absolute;inset:0;z-index:-1}.hero-photo img{object-position:center 51%;animation:heroZoom 15s ease-out both}.hero-gradient{background:linear-gradient(90deg,rgba(18,31,25,.85),rgba(18,31,25,.48) 49%,rgba(14,22,17,.09)),linear-gradient(0deg,rgba(21,31,25,.62),transparent 35%)}@keyframes heroZoom{from{transform:scale(1.065)}to{transform:scale(1)}}.hero-content{min-height:inherit;display:flex;flex-direction:column;justify-content:center;position:relative;padding-top:74px;padding-bottom:75px}.hero-text{max-width:710px;transform:translateY(-8px)}.eyebrow{display:flex;align-items:center;gap:14px;color:#62715f;font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.eyebrow.light{color:#f5f0dd}.dash{height:1px;width:32px;background:currentColor;flex:none}.hero h1{font:500 clamp(54px,7.1vw,114px)/1.08 var(--display);letter-spacing:-.055em;margin:28px 0}.hero h1 em,.intro h2 em,.section-heading h2 em,.statement p em,.contact-wrap h2 em{font-weight:400;color:#dac0a0}.hero-text p{font-size:15px;line-height:1.9;max-width:525px;color:#e7e8df}.hero-actions{display:flex;align-items:center;gap:33px;margin-top:34px}.btn{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;padding:19px 24px;min-height:57px;font-size:12px;font-weight:800;transition:transform .25s,background .25s}.btn:hover{transform:translateY(-3px)}.btn-cream{background:#f4f2e9;color:#2c3830}.btn-cream:hover{background:#e2d2bb}.hero-link{font-size:12px;font-weight:700;border-bottom:1px solid #e4e2d6;padding:0 0 9px}.hero-link span{margin-left:12px}.hero-bottom{position:absolute;left:0;bottom:30px;right:0;display:flex;justify-content:space-between;color:#e9ebe5;text-transform:uppercase;font-size:9px;font-weight:800;letter-spacing:.2em}.hero-bottom span:last-child span{margin-left:14px}.section-pad{padding-top:126px;padding-bottom:126px}.intro{display:grid;grid-template-columns:1fr 2fr;gap:10%;align-items:start}.intro-side{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;height:100%}.small-doodle{width:170px;color:#99a092;opacity:.55}.intro-main h2,.section-heading h2,.contact-wrap h2{font:500 clamp(44px,5.5vw,78px)/1.17 var(--display);letter-spacing:-.045em;margin:0}.intro-main h2 em,.section-heading h2 em{color:#78856f}.intro-main p{font-size:16px;line-height:2;color:#667168;max-width:670px;margin:30px 0}.text-link{display:inline-block;padding-bottom:10px;border-bottom:1px solid #697669;font-size:13px;font-weight:750}.text-link span{margin-left:19px}.services-area{background:var(--paper)}.section-heading{display:flex;gap:10%;align-items:end;justify-content:space-between;margin-bottom:50px}.section-heading h2{margin-top:20px}.section-heading p{max-width:295px;font-size:13px;color:#6b746a;line-height:1.9}.services-grid{display:grid;grid-template-columns:1.18fr 1fr 1fr;gap:16px}.service{position:relative;height:475px;overflow:hidden;background:#626a5a;isolation:isolate;color:white}.service.large{height:475px}.service-img,.service-shade{position:absolute;inset:0;z-index:-1}.service-img img{transition:transform .65s}.service:hover .service-img img{transform:scale(1.06)}.service-shade{background:linear-gradient(0deg,rgba(15,27,20,.91),rgba(13,30,23,.05) 65%)}.service-copy{position:absolute;bottom:0;left:0;padding:33px}.service-copy span,.gallery-item figcaption span{font-size:9px;letter-spacing:.18em;font-weight:750;color:#e2d8c8}.service-copy h3{font:500 clamp(25px,2.6vw,39px)/1.1 var(--display);margin:12px 0}.service-copy p{font-size:12px;line-height:1.6;max-width:280px;color:#e8e9e2}.service-copy a{display:inline-block;margin-top:12px;border-bottom:1px solid #f3ecda;font-size:11px;font-weight:750;padding-bottom:8px}.under-note,.gallery-notice{font-size:11px;color:#7a8178;line-height:1.6;margin-top:20px}.statement{background:#303f34;color:white;overflow:hidden}.statement-inner{position:relative;min-height:405px;display:flex;flex-direction:column;justify-content:center}.statement p{font:500 clamp(43px,5.8vw,85px)/1.26 var(--display);letter-spacing:-.045em;margin:27px 0}.statement-ornament{position:absolute;font:250px Georgia,serif;color:#809079;opacity:.16;right:0;top:25px}.gallery-grid{display:grid;grid-template-columns:1.05fr 1fr;grid-template-rows:260px 260px;gap:16px}.gallery-item{position:relative;overflow:hidden;margin:0;background:#b9b6a9}.gallery-item.tall{grid-row:span 2}.gallery-item img{transition:transform .6s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(15,25,20,.6))}.gallery-item figcaption{position:absolute;z-index:1;bottom:29px;left:31px;color:white;display:flex;flex-direction:column;gap:11px}.gallery-item figcaption strong{font:500 clamp(24px,3vw,35px) var(--display)}.process{background:#eeeee6}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cfd2c7}.steps>div{padding:28px 45px 0 0;border-right:1px solid #d5d6cd;min-height:178px}.steps>div+div{padding-left:45px}.steps>div:last-child{border-right:0}.steps span{color:#a68c75;font:500 18px var(--display)}.steps h3{font:500 29px var(--display);margin:15px 0 8px}.steps p{font-size:12px;line-height:1.9;color:#72796f;max-width:270px}.contact-section{background:#243329;color:#fff}.contact-wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:12%;align-items:center;padding-top:112px;padding-bottom:112px}.contact-wrap h2{margin-top:23px}.contact-wrap>div:first-child>p{font-size:14px;line-height:1.95;color:#c4c9c0;max-width:510px;margin:28px 0}.contact-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap}.contact-map{font-size:12px;border-bottom:1px solid #d3d2c4;padding-bottom:8px}.contact-card{background:#35483b;border:1px solid #5d7161;padding:45px 40px;min-height:290px;position:relative}.contact-card:before{content:"✳";position:absolute;right:33px;top:20px;color:#8c9b86;font-size:43px}.contact-card-label{font-size:10px;letter-spacing:.15em;color:#ccd5c5}.contact-card h3{font:500 53px/1.1 var(--display);margin:25px 0}.contact-card p{font-size:12px;line-height:1.8;color:#e0e2d9}.contact-card .contact-small{font-size:10px;opacity:.65;margin-top:25px}.footer{background:#17241c;color:#e9ede5}.footer-top{min-height:122px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #3b4b3f}.footer-brand{font-size:23px;font-weight:800;letter-spacing:.13em}.footer-brand span{display:block;font-size:9px;letter-spacing:.41em;margin-top:4px}.footer-top>span,.back-top{font-size:12px;color:#c9d0c5}.footer-bottom{display:flex;justify-content:space-between;gap:30px;padding:20px 0 32px}.footer-bottom p{max-width:560px;font-size:10px;line-height:1.6;color:#9ca99a}.mobile-cta{display:none}@media(max-width:1050px){.shell{width:min(100% - 56px,1200px)}.nav{gap:16px}.nav-enquire{padding:13px 12px}.services-grid{grid-template-columns:1fr 1fr}.service.large{grid-column:span 2}.service{height:390px}.service.large{height:420px}.contact-wrap{gap:5%}}@media(max-width:760px){.shell{width:calc(100% - 38px)}.preview-strip{font-size:7px;gap:7px;letter-spacing:.06em}.header-inner{min-height:69px}.logo-words strong{font-size:16px}.logo-sign{height:32px;width:32px}.menu-btn{display:block}.nav-enquire{display:none}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#f8f7f1;padding:12px 24px 26px;box-shadow:0 18px 25px #0002}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav a{padding:14px 0;border-bottom:1px solid #e0e2d9;font-size:14px}.hero{min-height:730px;min-height:calc(100svh - 100px)}.hero-photo img{object-position:60% center}.hero-gradient{background:linear-gradient(90deg,#182c23d9,#14291d70),linear-gradient(0deg,#162c25a6,transparent 65%)}.hero-content{padding-top:70px;padding-bottom:95px}.hero h1{font-size:clamp(54px,12vw,78px);line-height:1.05;letter-spacing:-.05em;max-width:520px}.hero-text p{font-size:13px;line-height:1.85;max-width:380px}.hero-actions{gap:25px;flex-wrap:wrap}.btn{min-height:50px;padding:15px 18px}.hero-bottom{bottom:25px;font-size:8px}.section-pad{padding-top:77px;padding-bottom:77px}.intro{display:block}.intro-side{height:auto}.small-doodle{display:none}.intro-main{margin-top:30px}.intro-main h2,.section-heading h2,.contact-wrap h2{font-size:clamp(40px,9vw,62px)}.intro-main p{font-size:14px}.section-heading{display:block;margin-bottom:30px}.section-heading p{max-width:470px;font-size:13px;margin-top:19px}.services-grid{grid-template-columns:1fr;gap:13px}.service,.service.large{height:350px;grid-column:auto}.service-copy{padding:25px}.service-copy h3{font-size:32px}.statement-inner{min-height:320px}.statement p{font-size:clamp(39px,9vw,60px)}.statement-ornament{right:-75px;top:50px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:270px 230px;gap:11px}.gallery-item.tall{grid-column:span 2;grid-row:auto}.gallery-item figcaption{left:15px;bottom:18px;gap:6px}.gallery-item figcaption strong{font-size:19px}.gallery-item figcaption span{font-size:7px}.steps{grid-template-columns:1fr}.steps>div,.steps>div+div{border-right:0;border-bottom:1px solid #cfd2c7;padding:18px 0;min-height:auto}.steps h3{margin:8px 0;font-size:26px}.contact-wrap{grid-template-columns:1fr;gap:32px;padding:77px 0}.contact-card{min-height:auto;padding:32px}.contact-card h3{font-size:43px}.footer{padding-bottom:57px}.footer-top{align-items:flex-start;flex-direction:column;padding:29px 0;min-height:auto}.footer-bottom{display:block}.mobile-cta{display:flex;align-items:center;justify-content:space-between;position:fixed;bottom:0;left:0;right:0;z-index:18;padding:16px 21px;background:#d2b495;color:#19241b;font-size:12px;font-weight:800;box-shadow:0 -5px 25px #0003}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
