@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#f4f2ed;--ink:#242b28;--muted:#66706a;--orange:#d77a31;--line:#d8dcd4;--dark:#24352e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h2{font-size:clamp(32px,3.4vw,52px);line-height:1.2;font-weight:500;letter-spacing:-2px}em{font-style:normal;color:var(--orange)}.skip{position:absolute;top:-100px;background:white;padding:15px;z-index:99}.skip:focus{top:0}.topbar{padding:10px 5%;font-size:11px;letter-spacing:.6px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}header{position:sticky;top:0;z-index:20;padding:22px 5%;background:var(--paper);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-size:19px;letter-spacing:2px;font-weight:700;line-height:1.05}.brand b{display:block;font-size:10px;letter-spacing:5px;margin-top:7px;font-weight:500}.symbol{background:var(--orange);color:#fff;width:39px;height:43px;font-size:29px;display:flex;align-items:center;justify-content:center;position:relative}.symbol span{font-size:17px;position:absolute;right:-2px;top:0}.header-cta{font-size:13px;display:flex;gap:28px;align-items:center}.header-cta span{border:1px solid #b9c0b6;padding:10px 13px}nav{display:flex;gap:30px;font-size:13px}nav a:hover,.text-link:hover{color:var(--orange)}#menu{display:none}.hero{padding:54px 5% 0}.hero-copy .eyebrow{display:flex;gap:10px;align-items:center}.eyebrow{display:block;font-size:11px;font-weight:600;letter-spacing:1.8px;margin-bottom:27px}.eyebrow i{width:7px;height:7px;background:var(--orange);border-radius:50%}h1{font-size:clamp(55px,6.7vw,104px);line-height:1.02;letter-spacing:-5px;font-weight:500}.hero-copy{position:relative}.hero-bottom{display:flex;justify-content:space-between;align-items:center;margin:28px 0 34px}.hero-bottom p{color:var(--muted);line-height:1.7;font-size:15px}.round{border:1px solid #a6aea5;border-radius:50%;width:58px;height:58px;display:grid;place-items:center;font-size:27px}.hero-image{height:440px;position:relative;overflow:hidden}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:center 53%}.hero-image:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#10251a9c)}.image-caption{position:absolute;bottom:26px;left:30px;right:30px;color:white;z-index:1;display:grid;grid-template-columns:1fr auto;gap:8px}.image-caption span{font-size:10px;letter-spacing:2px}.image-caption b{grid-column:1;font-size:17px;font-weight:500}.image-caption a{grid-column:2;grid-row:1/3;align-self:end;border:1px solid #fff7;padding:13px 18px;font-size:20px}.hero-meta{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.3px;padding:22px 0;border-bottom:1px solid var(--line)}.orange{color:var(--orange)}.section{padding:100px 5%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-bottom:1px solid var(--line)}.intro-copy>p{line-height:1.8;color:var(--muted);font-size:15px}.intro-copy .lead{font-size:21px;color:var(--ink);line-height:1.65;margin-bottom:22px}.values{display:flex;justify-content:space-between;gap:15px;padding-top:35px;font-size:11px;color:var(--orange)}.values b{display:block;color:var(--ink);font-size:15px;margin-top:12px;font-weight:500}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:46px;gap:25px}.section-heading p{font-size:14px;line-height:1.7;color:var(--muted)}.services{background:#ebece5}.services-layout{display:grid;grid-template-columns:.8fr 1fr;gap:8%}.service-image{width:100%;height:510px;object-fit:cover}.service-list details{border-top:1px solid #bbc3b7}.service-list details:last-child{border-bottom:1px solid #bbc3b7}.service-list summary{list-style:none;display:flex;align-items:center;gap:20px;padding:24px 0;cursor:pointer}.service-list summary::-webkit-details-marker{display:none}.service-list summary>span{font-size:11px;color:var(--orange)}.service-list h3{font-size:19px;font-weight:500;letter-spacing:-.5px;flex:1}.service-list summary b{font-size:24px;font-weight:400}.service-list details[open] summary b{transform:rotate(45deg)}.service-list details>div{margin:0 30px 25px}.service-list p{font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:18px}.service-list details a{font-size:12px;color:#a8531b}.text-link{font-size:13px;line-height:1.5}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project{background:none;border:0;text-align:left;padding:0;color:inherit}.project>div{height:265px;overflow:hidden;position:relative}.project img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.project:hover img{transform:scale(1.05)}.project>div>span{position:absolute;right:15px;bottom:15px;background:var(--paper);padding:12px 16px;font-size:21px}.project small{display:block;margin:21px 0 10px;font-size:10px;letter-spacing:1.6px;color:var(--muted)}.project h3{font-size:19px;font-weight:500;letter-spacing:-.5px}.approach{padding:90px 5%;background:var(--dark);color:var(--paper)}.approach>.eyebrow{color:#b6c4b5}.approach h2{font-size:clamp(35px,4vw,60px)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:5%;margin-top:55px}.steps article{border-top:1px solid #7d938266;padding-top:25px}.steps article>span{font-size:12px;color:#efaa70}.steps h3{margin:24px 0 14px;font-size:21px;font-weight:500}.steps p{font-size:14px;color:#bac7bd;line-height:1.8;max-width:290px}.contact{display:grid;grid-template-columns:1.1fr 1fr;gap:8%}.contact-info>p{color:var(--muted);line-height:1.8;font-size:14px;margin:25px 0 32px}.phone{display:block;font-size:27px;font-family:Manrope;margin:0 0 16px;letter-spacing:-.7px}.email{font-size:15px;display:block}.contact address{font-style:normal;font-size:13px;line-height:1.8;color:var(--muted);margin:36px 0 18px}form{background:#eae9e1;padding:34px}form .eyebrow{margin-bottom:15px}form h3{font-size:24px;font-weight:500;margin-bottom:30px}label{display:block;font-size:12px;margin-bottom:23px}input,select,textarea{width:100%;border:0;border-bottom:1px solid #aeb7aa;padding:12px 0;background:transparent;outline-offset:3px;border-radius:0;color:var(--ink);font-size:14px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--orange);outline-offset:4px}.form-note{font-size:11px;color:var(--muted);line-height:1.65;margin-bottom:20px}.form-actions{display:flex;flex-wrap:wrap;gap:12px}.primary{background:var(--orange);border:0;color:white;padding:15px 20px;font-size:13px}.secondary{background:none;border:1px solid #aeb7aa;padding:14px 15px;font-size:12px}footer{padding:40px 5%;display:flex;gap:35px;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}footer p{font-size:11px;line-height:1.9;color:var(--muted)}footer>a:not(.brand){font-size:12px}.mobile-contact{display:none}dialog{border:0;background:var(--paper);padding:25px;width:min(850px,90vw);max-height:90vh}dialog::backdrop{background:#102019c9}dialog img{width:100%;max-height:65vh;object-fit:contain}dialog h3{margin-top:20px;font-size:23px}dialog p{font-size:12px;color:var(--muted);margin-top:10px}.close-gallery{position:absolute;right:12px;top:8px;border:0;background:var(--paper);font-size:30px;padding:3px 12px;z-index:2}@media(min-width:1300px){.hero-copy{display:grid;grid-template-columns:1fr .5fr}.hero-copy .eyebrow{grid-column:1/-1}h1{grid-column:1}.hero-bottom{grid-column:2;align-self:end;gap:20px;margin-bottom:0}.hero-image{margin-top:45px}}@media(max-width:800px){.topbar{font-size:9px}header{padding:18px 5%}.header-cta{display:none}#menu{display:block;background:none;border:0;font-size:24px}nav{display:none;position:absolute;left:0;right:0;top:100%;padding:25px 5%;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;gap:25px}nav.open{display:flex}.hero{padding-top:35px}h1{font-size:62px;letter-spacing:-3px}.hero-bottom p{font-size:13px;max-width:260px}.hero-image{height:340px}.image-caption{left:18px;right:18px}.hero-meta span:nth-child(2){display:none}.section{padding:65px 5%}.intro,.contact{grid-template-columns:1fr;gap:35px}.intro-copy .lead{font-size:19px}.section-heading{align-items:start;flex-direction:column;margin-bottom:30px}.services-layout{grid-template-columns:1fr;gap:25px}.service-image{height:270px}.service-list h3{font-size:17px}.project-grid{grid-template-columns:1fr;gap:35px}.project>div{height:300px}.approach{padding:65px 5%}.steps{grid-template-columns:1fr;gap:30px;margin-top:35px}.steps h3{margin-top:15px}.steps p{max-width:100%}h2{letter-spacing:-1.5px}.contact{padding-bottom:70px}form{padding:26px 20px}footer{flex-wrap:wrap;padding-bottom:90px}footer .brand{width:100%}footer p{width:100%}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:19;background:var(--dark);color:white;box-shadow:0 -4px 18px #0001}.mobile-contact a{width:50%;text-align:center;padding:17px 0;font-size:13px}.mobile-contact a:last-child{background:var(--orange)}.eyebrow{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project img{transition:none}}
