@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=DM+Sans:wght@400;500;600&display=swap";:root{--blue:#142e22;--ivory:#f7f5ee;--ink:#252d30;font-family:DM Sans,sans-serif;color:var(--ink);background:var(--ivory);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}html{scroll-behavior:smooth;scroll-padding-top:20px}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{width:100%;height:100%;object-fit:cover;display:block}h1,h2,h3,.brand{font-family:Cormorant Garamond,Georgia,serif;font-weight:400;margin:0}p{line-height:1.7}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #bd9b50;outline-offset:5px}.skip{position:absolute;top:-80px;background:var(--ivory);padding:15px;z-index:30}.skip:focus{top:0}.hero{height:min(950px,100svh);min-height:700px;position:relative;color:var(--ivory);isolation:isolate}.hero>img{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;object-position:center 52%}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#14221655;z-index:-1}header{display:flex;align-items:center;justify-content:space-between;padding:34px 5%;gap:25px}.brand{font-size:34px;line-height:1.1;white-space:nowrap}.brand span{font-family:DM Sans,sans-serif;display:block;font-size:10px;letter-spacing:6px;margin-top:13px}nav{display:flex;align-items:center;gap:34px;font-size:14px}.button{display:inline-block;border:1px solid #ffffff80;background:var(--blue);color:#fff;padding:19px 30px;font-family:Georgia,serif;font-size:17px;transition:background .2s}.button:hover{background:#234834}.button.small{font-size:14px;padding:13px 23px}.menu{display:none}.hero-copy{position:absolute;left:6.6%;top:28%}h1{font-size:clamp(80px,7.5vw,120px);line-height:.97;letter-spacing:-3px;text-shadow:0 2px 15px #15221135}.eyebrow{text-transform:uppercase;font-size:11px;line-height:1.8;letter-spacing:3px;font-weight:500}.hero-copy .eyebrow{margin:32px 0}.intro{background:var(--blue);color:var(--ivory);display:grid;grid-template-columns:1.2fr 1fr;gap:8%;padding:65px 8%;align-items:center}h2{font-size:clamp(38px,4vw,61px);line-height:1.05;letter-spacing:-1px}.intro h2{font-size:clamp(37px,3.5vw,53px)}.intro .eyebrow{margin:0 0 25px}.intro-body{border-left:1px solid #f7f5ee80;padding-left:13%;font-size:16px;max-width:520px}.intro-body p:first-child{margin-top:0}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:7px;font-size:14px}.featured{height:575px;position:relative;color:#fff}.featured img{object-position:center 60%}.caption{position:absolute;left:4%;bottom:30px;text-shadow:0 1px 8px #000;display:block;background:#18231e60;padding:15px 18px}.caption p{margin:0 0 8px}.caption button{background:none;color:#fff;border:0;border-bottom:1px solid white;padding:3px 0;font-size:13px}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:2px}.photo-pair>button{position:relative;height:450px;border:0;padding:0;text-align:left;color:#fff}.photo-pair .caption span{display:block;margin-top:8px}.selected{padding:95px 6%}.section-heading{margin-bottom:50px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:50px 35px}.project{border:0;background:none;padding:0;text-align:left;color:var(--ink)}.project img{height:400px;margin-bottom:20px}.project .eyebrow{font-size:10px}.project h3{font-size:32px;margin:10px 0 15px}.project img{transition:filter .2s}.project:hover img{filter:brightness(.92)}.approach{border-top:1px solid #606f9140;margin:0 6%;padding:70px 0 90px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:45px}.services h3{font-size:30px}.services p{font-size:15px;max-width:38ch}.contact{text-align:center;background:var(--blue);color:var(--ivory);padding:85px 20px}.contact h2{font-size:68px}.contact .button{background:var(--ivory);color:#142e22;border:0;margin-top:15px}.preview-note{font-size:11px;opacity:.85}footer{padding:50px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer .brand{font-size:28px}footer p,footer>a:last-child{font-size:12px;line-height:1.8}dialog[open]{position:fixed;top:4vh;right:0;bottom:4vh;left:0;margin:auto;width:min(1050px,94vw);max-height:92vh;overflow:auto;border:0;padding:55px;background:var(--ivory);color:var(--ink);z-index:50;box-shadow:0 0 0 100vmax #17201bd9}dialog h2{max-width:800px}dialog>p{max-width:70ch}.close{display:block;margin-left:auto;margin-bottom:30px;border:0;border-bottom:1px solid;background:none;padding:8px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:35px}figure{margin:0}.gallery img{height:380px}figcaption{font-size:12px;margin-top:8px}.enquiry[open]{width:min(620px,94vw)}form{display:grid;gap:18px;margin-top:25px}label{display:grid;gap:8px;font-size:13px}input,textarea{width:100%;padding:12px;border:1px solid #606f9180;background:#fff;color:var(--ink)}form small{font-size:11px}body:has(dialog[open]){overflow:hidden}@media(max-width:750px){header{padding:25px 6%;align-items:flex-start}.brand{font-size:25px}.brand span{font-size:8px;letter-spacing:4px}.menu{display:block;border:1px solid #fff8;background:#26312b70;color:#fff;padding:9px 12px}nav{display:none}nav.open{position:absolute;right:6%;top:85px;padding:24px;display:flex;flex-direction:column;gap:20px;background:var(--blue);z-index:10}.hero{min-height:730px;height:92svh;max-height:900px}.hero>img{object-position:58% center}.hero-copy{left:7%;top:29%}h1{font-size:82px;letter-spacing:-2px}.hero-copy .eyebrow{font-size:9px;letter-spacing:2px}.intro{display:block;padding:50px 7%}.intro h2{font-size:42px}.intro-body{margin-top:35px;padding:0;border:0;font-size:15px}.featured{height:480px}.caption{left:5%;right:5%;bottom:22px;padding:12px}.photo-pair{grid-template-columns:1fr}.photo-pair>button{height:380px}.selected{padding:65px 7%}.projects{grid-template-columns:1fr;gap:40px}.project img{height:380px}h2{font-size:43px}.services{grid-template-columns:1fr;gap:20px}.services p{max-width:none}.approach{margin:0 7%;padding:45px 0}.contact{padding:60px 7%}.contact h2{font-size:48px}.contact p{font-size:14px}.contact .preview-note{font-size:10px}footer{padding:40px 7%;display:block}footer p{margin:25px 0}.gallery{grid-template-columns:1fr}.gallery img{height:auto}dialog[open]{padding:25px}.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}dialog::backdrop{background:#17201bd9}@media(min-width:751px){h1{font-size:clamp(110px,10vw,150px)}.hero-copy{top:30%}.hero-copy .eyebrow{font-size:12px}.intro{padding:65px 8%}.intro h2{font-size:clamp(48px,4.2vw,64px)}.intro-body{font-size:20px}.brand{font-size:38px}.caption p{font-size:18px}.caption .eyebrow{font-size:11px}}.approach-lead{max-width:70ch;font-size:19px;line-height:1.8;margin-top:30px}@media(min-width:751px){h1{font-size:clamp(95px,8.7vw,132px)}}@media(max-width:750px){h1{font-size:65px}.approach-lead{font-size:17px}}.hero:after{background:linear-gradient(90deg,#091d13b8,#091d1347 44%,#091d130a 78%)}h1{line-height:1.13}@media(min-width:751px){.hero-copy{top:26%}}@media(max-width:750px){.hero-copy{top:25%}}.hero{overflow:hidden}.hero>img{transform:rotate(-6.5deg) scale(1.2);transform-origin:60% 45%}@media(max-width:750px){.hero>img{transform:rotate(-6.5deg) scale(1.3);transform-origin:58% 45%}}
