:root{--ink:#202a2c;--muted:#627073;--paper:#f9f9f5;--accent:#9b6040;--line:#d9deda}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}.skip{position:fixed;top:-60px;background:white;padding:10px;z-index:100}.skip:focus{top:0}header{height:104px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;line-height:1.1}.brand svg{width:45px;fill:none;stroke:var(--accent);stroke-width:2.5}.brand strong{font-size:27px;letter-spacing:-1.2px}.brand small{display:block;letter-spacing:3.6px;font-size:10px;margin-top:7px}nav{display:flex;gap:34px;font-size:14px}nav a:hover,.email:hover{color:var(--accent)}.header-call{font-size:15px;font-weight:bold}.header-call span{margin-left:16px;color:var(--accent)}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:690px}.hero-copy{padding:77px 10% 30px;display:flex;flex-direction:column}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:2px;display:flex;align-items:center;gap:10px}.eyebrow i{width:6px;height:6px;border-radius:50%;background:var(--accent)}h1{font-size:clamp(64px,6.7vw,110px);line-height:1.02;letter-spacing:-5px;font-weight:500;margin:42px 0 25px}p{color:var(--muted)}.hero p{max-width:410px;font-size:16px}.actions{display:flex;flex-wrap:wrap;gap:25px;align-items:center;margin-top:25px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:23px;background:var(--accent);color:white;border:0;padding:17px 22px;font-size:13px;font-weight:bold}.button:hover{background:#7f4c32}.text-link{font-size:13px;font-weight:bold}.text-link span{margin-left:12px}.hero-foot{display:flex;gap:20px;justify-content:space-between;margin-top:auto;padding-top:65px;font-size:10px}.hero-foot span:first-child{letter-spacing:1.7px;font-weight:bold}.hero-foot span:last-child{color:var(--muted)}.hero-photo{position:relative;min-height:650px}.hero-photo img{position:absolute;object-position:50% 52%}.photo-caption{position:absolute;bottom:0;background:linear-gradient(transparent,#0009);color:white;padding:50px 30px 24px;width:100%;display:flex;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:1.7px}.service-strip{padding:27px 5%;display:flex;justify-content:space-between;gap:15px;background:var(--ink);color:#fff;font-size:13px;letter-spacing:.6px}.service-strip b{font-size:12px;color:#c49375}.section{padding:100px 7%}.section-intro{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:50px}h2{font-size:clamp(38px,4vw,60px);line-height:1.12;letter-spacing:-2px;font-weight:500;margin:20px 0 0}.section-intro>p,.section-intro>div>p{max-width:340px;font-size:14px}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:45px 1fr 1fr 25px;gap:25px;align-items:start;padding:28px 0;border-bottom:1px solid var(--line)}.service-list article>span{font-size:11px;color:var(--accent);padding-top:7px}h3{font-size:22px;font-weight:500;letter-spacing:-.4px;margin:0}.service-list p{font-size:14px;max-width:400px;margin:0}.service-list b{font-weight:normal;color:var(--accent)}.work{background:#ecefeb}.hint{font-size:11px;color:var(--muted)}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}.filters button{background:transparent;border:1px solid #bdc6c0;border-radius:30px;padding:9px 19px;font-size:12px;color:var(--ink)}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 22px}.project{border:0;background:none;padding:0;text-align:left;color:inherit}.project .image-wrap{overflow:hidden;position:relative;aspect-ratio:4/5}.project img{transition:transform .4s}.project:hover img{transform:scale(1.04)}.project .enlarge{position:absolute;right:13px;bottom:13px;background:var(--paper);width:35px;height:35px;display:grid;place-items:center}.project strong{display:block;font-weight:500;font-size:17px;margin-top:12px}.project small{display:block;font-size:10px;letter-spacing:1.3px;color:var(--muted);margin-top:3px}.project[hidden]{display:none}.about{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:white}.about-photo{min-height:650px;max-height:760px}.about-copy{padding:85px 14%}.about p{color:#bcc6c3;font-size:14px;max-width:400px}.about h2{margin-bottom:30px}.about .text-link{display:block;margin-top:30px}.area{border-top:1px solid #ffffff30;margin-top:60px;padding-top:25px}.area span{display:block;font-size:9px;letter-spacing:2px;color:#b7c2bd}.area strong{display:block;font-size:12px;font-weight:normal;margin-top:9px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:55px}.steps article{border-top:1px solid var(--line);padding-top:22px}.steps article>span{color:var(--accent);font-size:10px;letter-spacing:1px}.steps h3{margin:16px 0}.steps p{font-size:14px}.contact{background:#e6e9e3;display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-copy p{max-width:350px;font-size:14px;margin:28px 0}.phone{font-size:31px;display:block;letter-spacing:-1px}.email{display:block;font-size:15px;margin-top:9px}.coverage{font-size:11px;color:var(--muted);margin-top:40px}form{background:var(--paper);padding:35px}form h3{margin-bottom:25px}label{display:block;font-size:11px;font-weight:bold;margin-bottom:15px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}input,textarea,select{display:block;width:100%;border:1px solid #cdd3cb;border-radius:0;background:transparent;padding:11px;color:var(--ink);font-size:12px;margin-top:6px;min-width:0}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent)}textarea{resize:vertical}.form-note{font-size:10px;line-height:1.6;margin-bottom:0}#form-status{font-size:12px}footer{padding:40px 5%;display:flex;justify-content:space-between;align-items:center;gap:25px}footer p,footer>span,footer>a:last-child{font-size:10px}footer .brand strong{font-size:23px}dialog{padding:45px;border:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;background:#131a1af5;color:white}dialog[open]{display:flex;align-items:center;justify-content:space-around;gap:20px}dialog::backdrop{background:#000c}dialog figure{margin:0;max-width:80%;height:90%;display:flex;flex-direction:column;align-items:center;justify-content:center}dialog img{object-fit:contain;min-height:0}figcaption{font-size:13px;padding:15px}dialog button{background:transparent;color:white;border:1px solid #ffffff50;width:40px;height:40px;flex-shrink:0;font-size:22px}.close{position:absolute;right:20px;top:15px}body.modal-open{overflow:hidden}@media(min-width:1500px){.section{padding-left:max(7%,calc((100vw - 1300px)/2));padding-right:max(7%,calc((100vw - 1300px)/2))}}@media(max-width:1000px){header{height:85px}nav{gap:19px}.hero-copy{padding:50px 9% 25px}h1{font-size:72px}.hero{min-height:620px}.hero-photo{min-height:620px}.hero-foot{flex-direction:column;gap:5px}.gallery{gap:25px 15px}.about-copy{padding:65px 10%}.contact{gap:6%}.section{padding:75px 5%}form{padding:25px}.phone{font-size:27px}footer p{display:none}}@media(max-width:700px){header{height:83px;padding:0 6%;position:relative}.brand strong{font-size:24px}.brand svg{width:37px}.header-call{margin-left:auto;margin-right:18px;font-size:12px}.header-call span{display:none}.menu{display:block;border:0;background:none;font-size:24px;color:var(--ink)}nav{display:none;position:absolute;top:83px;left:0;right:0;background:var(--paper);padding:25px 6%;z-index:10;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 6% 30px}h1{font-size:76px;letter-spacing:-4px;margin-top:30px}.hero p{font-size:15px}.eyebrow{font-size:9px;letter-spacing:1.4px}.hero-foot{display:none}.actions{margin-top:18px;gap:22px}.hero-photo{min-height:440px}.photo-caption{padding-left:6%;padding-right:6%}.service-strip{flex-wrap:wrap;justify-content:center;font-size:10px;padding:20px}.service-strip b:last-of-type{display:none}.service-strip span:last-child{display:none}.section{padding:65px 6%}.section-intro{display:block;margin-bottom:30px}.section-intro>p,.section-intro>div>p{margin-top:25px;max-width:100%}h2{font-size:42px}.service-list article{grid-template-columns:25px 1fr 15px;gap:12px;padding:25px 0}.service-list h3{font-size:21px}.service-list p{grid-column:2;font-size:13px}.service-list b{grid-column:3;grid-row:1}.gallery{grid-template-columns:1fr 1fr;gap:26px 13px}.project strong{font-size:14px;line-height:1.35}.project small{font-size:8px}.project .image-wrap{aspect-ratio:3/4}.filters{gap:6px}.filters button{font-size:10px;padding:8px 12px}.about{grid-template-columns:1fr}.about-photo{min-height:440px;height:440px}.about-copy{padding:55px 6%}.area{margin-top:35px}.steps{grid-template-columns:1fr;gap:24px;margin-top:35px}.steps h3{margin:10px 0}.contact{grid-template-columns:1fr;gap:35px}.phone{font-size:32px}.contact-copy p{max-width:100%}.coverage{margin-top:25px}form{padding:23px}.form-row{grid-template-columns:1fr;gap:0}footer{flex-wrap:wrap;padding:35px 6%}footer>span{width:100%;order:3;font-size:9px}dialog{padding:60px 10px 20px;gap:5px}dialog[open]{gap:5px}dialog figure{max-width:calc(100% - 70px);height:95%}dialog button{width:28px;height:35px;font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Original light design, with the supplied business logo. */
.logo-crop{display:block;position:relative;overflow:hidden;clip-path:circle(49% at 50% 50%);width:74px;height:74px;flex-shrink:0;background:#fff}.logo-crop img{position:absolute;width:154%;height:auto;max-width:none;left:50%;top:50%;transform:translate(-50%,-50%);object-fit:initial}.brand{gap:13px}footer .logo-crop{width:62px;height:62px}@media(max-width:1000px){.logo-crop{width:62px;height:62px}.brand strong{font-size:25px}.brand small{font-size:9px;letter-spacing:3px}}@media(max-width:700px){header{padding-left:5%;padding-right:5%}.logo-crop{width:57px;height:57px}.brand{gap:9px}.brand strong{font-size:21px}.brand small{font-size:8px;letter-spacing:2.5px}.header-call{font-size:11px;margin-right:10px}.menu{padding:3px;font-size:23px}footer .logo-crop{width:57px;height:57px}}@media(max-width:380px){.header-call{display:none}.menu{margin-left:auto}}
.photo-enquiry{padding:20px;margin:4px 0 22px;background:#efefea;border-left:3px solid var(--accent)}.photo-enquiry>strong{display:block;font-size:15px;font-weight:600;line-height:1.4}.photo-enquiry p{font-size:12px;line-height:1.6;margin:8px 0 14px}.photo-enquiry label{margin-bottom:0}.photo-enquiry input{padding:10px 0;border:0;font-size:11px}.photo-enquiry input::file-selector-button{padding:9px 12px;margin-right:9px;background:white;border:1px solid #b7bbb5;color:var(--ink);cursor:pointer}.photo-enquiry #photo-help{font-size:10px;margin-bottom:0}.photo-enquiry #photo-status{font-size:11px}.photo-enquiry #photo-status:empty{display:none}#clear-photos{font-size:11px;padding:0;background:none;color:var(--ink);text-decoration:underline;border:0}#clear-photos[hidden]{display:none}

.exceptional-heading{font-size:clamp(58px,5.6vw,90px);letter-spacing:-4px}@media(max-width:700px){.exceptional-heading{font-size:56px;letter-spacing:-3px}}
