:root{--ink:#18201c;--cream:#f3f0e9;--paper:#fbfaf7;--sage:#8ea18e;--line:#d8d5cd;--accent:#c86f45}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.site-header{height:88px;display:flex;align-items:center;gap:48px;padding:0 4.5vw;border-bottom:1px solid var(--line);position:relative;z-index:10;background:var(--paper)}.brand{width:92px;display:flex;flex-direction:column;align-items:center;line-height:.8}.brand>span{font-family:Georgia,serif;font-size:34px}.brand>span span{font-size:22px;color:var(--accent);font-style:italic}.brand small{font-size:9px;letter-spacing:.32em;margin-top:8px}.site-header nav{display:flex;gap:34px;margin-left:auto}.site-header nav a,.header-cta{font-size:13px}.header-cta{border-bottom:1px solid;padding-bottom:3px}.menu{display:none;background:0;border:0}.hero{min-height:760px;display:grid;grid-template-columns:43% 57%;position:relative}.hero-copy{padding:120px 6vw 70px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:600;color:#647067;margin:0 0 28px}.hero h1,.intro h2,.section-head h2,.process h2,.areas h2,.contact h2{font-family:Manrope,sans-serif;font-size:clamp(48px,5.7vw,84px);font-weight:400;letter-spacing:-.055em;line-height:1.01;margin:0}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--accent)}.lead{font-size:17px;line-height:1.7;max-width:500px;margin:34px 0}.actions{display:flex;align-items:center;gap:34px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:16px 20px;border:0;font:600 12px "DM Sans";letter-spacing:.04em;cursor:pointer}.btn.primary{background:var(--ink);color:white}.btn.dark{background:var(--paper);color:var(--ink)}.btn span{font-size:18px}.text-link{font-size:12px;font-weight:600;border-bottom:1px solid;padding:12px 0}.hero-image{position:relative;min-height:650px}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.07),transparent 30%)}.offer{position:absolute;right:0;bottom:60px;background:var(--accent);color:white;width:185px;height:130px;padding:20px;display:flex;align-items:center;gap:10px;z-index:2}.offer strong{font:54px Georgia}.offer sup{font-size:16px}.offer span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;line-height:1.5}.hero-image>p{position:absolute;bottom:33px;right:17px;color:white;z-index:2;font-size:8px}.hero-note{position:absolute;left:6vw;bottom:40px;display:flex;align-items:center;gap:14px}.hero-note b{font:38px Georgia;color:var(--accent)}.hero-note span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;max-width:70px}.intro{padding:130px 7vw 75px;display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--cream)}.intro h2,.section-head h2,.process h2,.areas h2,.contact h2{font-size:clamp(40px,4.3vw,64px)}.intro>p{font:20px/1.8 Georgia;color:#4d5650;margin-top:45px}.services{padding:0 7vw 120px;background:var(--cream);display:grid;grid-template-columns:repeat(3,1fr)}.services article{padding:28px 34px 22px;border-top:1px solid #bdbbb4;border-right:1px solid #d4d1c9;position:relative}.services article:first-child{padding-left:0}.services article span{font-size:11px;color:var(--accent)}.services article h3{font:32px Manrope;margin:42px 0 12px}.services article p{font-size:14px;color:#69716b;line-height:1.7;max-width:280px}.services article i{font-style:normal;position:absolute;right:25px;top:24px}.work{padding:130px 5vw}.section-head{display:flex;justify-content:space-between;align-items:end;margin:0 2vw 60px}.section-head>p{max-width:430px;line-height:1.7;color:#687069}.gallery{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-auto-rows:330px;gap:16px}.gallery figure{margin:0;position:relative;overflow:hidden}.gallery figure.wide{grid-column:span 2}.gallery figure.tall{grid-row:span 2}.gallery img{transition:transform .6s ease}.gallery figure:hover img{transform:scale(1.025)}.gallery figcaption{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(251,250,247,.92);padding:13px 15px;display:flex;justify-content:space-between;align-items:center;font-size:13px}.gallery figcaption small{color:#727872}.process{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:white}.process-photo{min-height:760px}.process-copy{padding:100px 9vw}.process-copy .eyebrow{color:#a8b1aa}.steps{margin:55px 0 40px}.steps>div{display:flex;gap:25px;padding:22px 0;border-top:1px solid #4b524e}.steps b{font:14px Georgia;color:#d78a64}.steps span{display:flex;flex-direction:column;gap:8px}.steps strong{font-weight:500}.steps small{color:#aeb4b0;line-height:1.5}.areas{text-align:center;padding:125px 8vw;background:var(--cream)}.area-list{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:48px}.area-list span{border:1px solid #bbbdb7;border-radius:50px;padding:12px 19px;font-size:12px}.contact{padding:130px 7vw;display:grid;grid-template-columns:.85fr 1fr;gap:10vw}.contact>div>p:not(.eyebrow){color:#687069;line-height:1.7;max-width:450px;margin:30px 0}.contact-details{display:flex;flex-direction:column;gap:9px;font-size:14px}.contact-details a{text-decoration:underline;text-underline-offset:4px}form{display:grid;grid-template-columns:1fr 1fr;gap:25px 18px}label{font-size:11px;text-transform:uppercase;letter-spacing:.1em}.full{grid-column:1/-1}input,select,textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #aeb1ac;padding:14px 2px;font:14px "DM Sans";outline:none;border-radius:0}textarea{resize:vertical}.form-status{font-size:13px}footer{background:#101612;color:#e9ece9;padding:55px 6vw;display:grid;grid-template-columns:120px 1fr 1fr auto;align-items:end;gap:30px}footer>p{color:#9da49f;font:18px Georgia}footer>div{display:flex;flex-direction:column;gap:8px;font-size:12px}footer>small{color:#89908b}.reveal{opacity:0;transform:translateY(15px);animation:up .8s ease forwards}.hero-image{animation-delay:.15s}@keyframes up{to{opacity:1;transform:none}}@media(max-width:850px){.site-header{height:70px;padding:0 20px}.site-header nav,.header-cta{display:none}.menu{display:block;margin-left:auto}.menu i{display:block;width:23px;height:1px;background:var(--ink);margin:6px}.site-header.open nav{display:flex;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:30px;flex-direction:column}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:80px 24px 50px}.hero-image{min-height:480px}.hero-note{display:none}.intro{padding:90px 24px 50px;display:block}.intro>p{font-size:17px}.services{padding:0 24px 80px;grid-template-columns:1fr}.services article{padding:25px 0;border-right:0}.work{padding:85px 16px}.section-head{display:block;margin:0 8px 35px}.section-head>p{margin-top:25px}.gallery{grid-template-columns:1fr;grid-auto-rows:300px}.gallery figure.wide{grid-column:auto}.gallery figure.tall{grid-row:auto}.process{grid-template-columns:1fr}.process-photo{min-height:450px}.process-copy{padding:80px 25px}.areas{padding:90px 20px}.contact{padding:90px 24px;grid-template-columns:1fr;gap:60px}form{grid-template-columns:1fr}.full{grid-column:auto}footer{grid-template-columns:1fr;align-items:start}.actions{gap:18px}.hero h1{font-size:50px}}

/* Readability, lead form and full-screen gallery */
html{font-size:18px}body{line-height:1.55}.site-header nav a,.header-cta{font-size:15px}.eyebrow{font-size:13px}.lead{font-size:20px}.btn,.text-link{font-size:14px}.services article p,.section-head>p,.contact>div>p:not(.eyebrow){font-size:17px}.steps strong{font-size:17px}.steps small,.area-list span,.contact-details{font-size:15px}.gallery figure{cursor:zoom-in}.gallery figure:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.gallery-hint{text-align:center;margin:22px 0 0;color:#687069;font-size:14px}.contact{grid-template-columns:.8fr 1.2fr}.contact form{background:var(--cream);padding:36px}label{font-size:13px}input,select,textarea{font-size:16px;padding:15px 2px}.consent{display:flex;align-items:center;gap:10px;text-transform:none;letter-spacing:0}.consent input{width:18px;height:18px;margin:0}.form-status{grid-column:1/-1;font-size:15px;margin:0}.form-status.success{color:#216338}.form-status.error{color:#a23b2b}.btn:disabled{opacity:.6;cursor:wait}.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:42px 90px;border:0;background:rgba(12,17,14,.96);color:white}.lightbox::backdrop{background:#101612}.lightbox figure{height:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.lightbox img{width:auto;height:auto;max-width:100%;max-height:85vh;object-fit:contain}.lightbox figcaption{font-size:16px}.lightbox button{position:fixed;border:0;color:white;background:rgba(255,255,255,.12);width:48px;height:48px;border-radius:50%;font-size:25px;cursor:pointer;z-index:2}.lightbox-close{right:24px;top:20px}.lightbox-prev{left:24px;top:50%}.lightbox-next{right:24px;top:50%}
@media(max-width:850px){html{font-size:17px}.site-header nav a{font-size:18px}.lead{font-size:19px}.contact form{padding:24px 18px}.lightbox{padding:60px 15px}.lightbox-prev{left:12px;top:auto;bottom:18px}.lightbox-next{right:12px;top:auto;bottom:18px}}

.honey{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
