:root{--ink:#141817;--paper:#f1eee7;--sage:#b8c4b7;--clay:#c76643;--muted:#716f68;--line:rgba(20,24,23,.17);--white:#fff;--max:1500px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.site-header{height:88px;padding:0 max(28px,4.5vw);display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;right:0;z-index:20;color:white;border-bottom:1px solid rgba(255,255,255,.22)}.brand{display:flex;align-items:center;gap:13px;font-weight:700;letter-spacing:.01em}.brand-mark{width:44px;height:44px;border:1px solid currentColor;display:grid;place-items:center;font-size:10px;letter-spacing:-1px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:13px}.nav-cta{padding:12px 18px;border:1px solid rgba(255,255,255,.5)}.menu-btn{display:none}.hero{min-height:100vh;background:var(--ink);color:white;display:grid;grid-template-columns:52% 48%;position:relative}.hero-copy{padding:170px 7vw 70px 5vw;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;margin-bottom:26px}.hero h1,.section-head h2,.manifest h2,.precision h2,.process h2,.contact h2,.reviews h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(52px,6.4vw,106px);line-height:.92;font-weight:400;letter-spacing:-.045em;margin:0}.hero h1 em,h2 em{color:var(--clay);font-style:italic}.hero-copy>p{max-width:660px;font-size:18px;color:#c8cac7;margin:34px 0}.hero-actions{display:flex;align-items:center;gap:30px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;background:var(--clay);color:white;padding:18px 22px;font-weight:700;font-size:13px;min-width:220px}.text-link{font-size:13px;border-bottom:1px solid currentColor;padding-bottom:5px}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.2);margin-top:70px;padding-top:24px;max-width:660px}.hero-stats div{display:flex;flex-direction:column}.hero-stats b{font-family:Georgia,serif;font-size:34px;font-weight:400}.hero-stats span{font-size:11px;color:#9ca19e}.hero-media{position:relative;overflow:hidden}.hero-image{height:100vh;background-image:var(--fallback);background-size:cover;background-position:center}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,24,23,.15),transparent 35%)}.hero-image img{position:absolute;inset:0}.image-card{position:relative}.index{position:absolute;right:26px;bottom:26px;background:rgba(20,24,23,.85);padding:10px 13px;font-size:10px;letter-spacing:.18em}.vertical-word{position:absolute;right:15px;top:110px;writing-mode:vertical-rl;font-size:11px;letter-spacing:.42em;color:rgba(255,255,255,.65)}.manifest,.process{max-width:var(--max);margin:auto;padding:130px 5vw;display:grid;grid-template-columns:90px 1.2fr .8fr;gap:55px;border-bottom:1px solid var(--line)}.section-no{font-size:12px;color:var(--muted);padding-top:7px}.manifest h2{font-size:clamp(45px,5vw,78px)}.manifest-copy{padding-top:48px}.manifest-copy>p{font-size:20px;line-height:1.55}.principles{margin-top:45px;border-top:1px solid var(--line)}.principles span{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.services,.projects,.reviews{max-width:var(--max);margin:auto;padding:125px 5vw}.section-head{display:grid;grid-template-columns:90px 1fr .7fr;gap:55px;align-items:end;margin-bottom:70px}.section-head h2{font-size:clamp(44px,5vw,76px)}.section-head>p{color:var(--muted);max-width:430px}.service-list{border-top:1px solid var(--ink)}.service-list article{display:grid;grid-template-columns:80px 1fr 1.2fr 190px;gap:28px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line);transition:.2s}.service-list article:hover{padding-left:10px;background:rgba(255,255,255,.35)}.service-list article>span{font-size:11px;color:var(--muted)}.service-list h3{margin:0;font-family:Georgia,serif;font-size:25px;font-weight:400}.service-list p{margin:0;color:var(--muted);font-size:13px}.service-list strong{text-align:right;font-size:12px}.precision{background:var(--sage);display:grid;grid-template-columns:1fr 1fr;min-height:760px}.precision-media{min-height:760px}.precision-copy{padding:110px 8vw}.precision h2{font-size:clamp(46px,5vw,77px)}.precision-copy>p{font-size:18px;max-width:650px;margin:30px 0 45px}.tech-lines{border-top:1px solid rgba(20,24,23,.35)}.tech-lines>div{display:grid;grid-template-columns:50px 1fr 1.1fr;gap:20px;padding:19px 0;border-bottom:1px solid rgba(20,24,23,.2);align-items:center}.tech-lines span,.tech-lines small{font-size:11px}.project-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;grid-auto-rows:300px;gap:13px}.project-grid figure{margin:0;position:relative;overflow:hidden;background:#d7d1c6}.project-grid figure:nth-child(1){grid-row:span 2}.project-grid figure:nth-child(4){grid-row:span 2}.project-grid img{transition:.6s}.project-grid figure:hover img{transform:scale(1.035)}.project-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:60px 20px 18px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.72));display:flex;justify-content:space-between;align-items:end}.project-grid figcaption b{font-family:Georgia,serif;font-size:18px}.project-grid figcaption span{font-size:10px}.process{grid-template-columns:90px .8fr 1.2fr;background:var(--ink);color:white;max-width:none;padding-left:max(5vw,calc((100vw - 1500px)/2 + 5vw));padding-right:max(5vw,calc((100vw - 1500px)/2 + 5vw))}.process h2{font-size:clamp(45px,5vw,77px)}.process-intro>p{color:#a9aeaa}.process ol{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.25)}.process li{display:grid;grid-template-columns:70px 1fr;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.18)}.process li>span{font-size:11px;color:#8e958f}.process b{font-family:Georgia,serif;font-size:23px;font-weight:400}.process li p{margin:4px 0 0;color:#9ca29e}.reviews{background:var(--paper)}.rating-big{font-family:Georgia,serif;font-size:42px}.rating-big span{font-family:Arial;font-size:13px;color:var(--clay);display:block;letter-spacing:.2em}.rating-big small{font-family:Arial;font-size:10px;color:var(--muted);display:block;margin-top:8px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.review-grid blockquote{margin:0;background:#fff;padding:35px;min-height:270px;display:flex;flex-direction:column;justify-content:space-between}.review-grid blockquote p{font-family:Georgia,serif;font-size:21px;line-height:1.45;margin:0}.review-grid footer{display:flex;justify-content:space-between;gap:20px;margin-top:30px;font-size:11px}.review-grid footer span{color:var(--muted)}.contact{background:var(--clay);color:white;padding:120px max(5vw,calc((100vw - 1500px)/2));display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}.contact h2{font-size:clamp(50px,5.4vw,82px)}.contact h2 em{color:var(--ink)}.contact-copy>p{font-size:18px;max-width:650px}.contact-data{display:flex;flex-direction:column;gap:8px;margin-top:45px;font-weight:700}.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:22px}.quote-form label{font-size:10px;letter-spacing:.12em;text-transform:uppercase}.quote-form input,.quote-form select,.quote-form textarea{width:100%;margin-top:8px;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.7);padding:12px 0;color:white;font:inherit;outline:none}.quote-form option{color:#111}.quote-form ::placeholder{color:rgba(255,255,255,.7)}.quote-form .full{grid-column:1/-1}.quote-form .file{border:1px dashed rgba(255,255,255,.55);padding:14px}.quote-form .file input{border:0}.quote-form .btn{background:var(--ink);grid-column:1/-1;justify-self:start}.footer{background:#0d100f;color:#e7e9e6;padding:70px 5vw;display:grid;grid-template-columns:2fr 1fr 1fr .7fr;gap:40px;border-top:1px solid #333}.footer-brand{font-size:18px}.footer>div{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.footer small{font-size:9px;letter-spacing:.18em;color:#797f7a}.footer p{margin:0;color:#a4aaa5;max-width:400px}.mobile-bar{display:none}@media(max-width:900px){.site-header{height:70px;position:absolute;padding:0 20px}.site-header nav{position:fixed;inset:70px 0 auto 0;background:var(--ink);padding:30px 20px;display:none;flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.menu-btn{display:flex;background:none;border:0;flex-direction:column;gap:6px}.menu-btn i{width:25px;height:1px;background:#fff}.hero{grid-template-columns:1fr}.hero-copy{padding:125px 22px 55px;min-height:690px}.hero h1{font-size:58px}.hero-media{height:58vh}.hero-image{height:58vh}.hero-stats{margin-top:45px}.manifest,.services,.projects,.reviews,.process{padding:80px 22px}.manifest,.process,.section-head{grid-template-columns:1fr;gap:20px}.manifest-copy{padding-top:0}.section-no{padding:0}.section-head{align-items:start;margin-bottom:40px}.service-list article{grid-template-columns:42px 1fr;gap:7px 15px}.service-list article p{grid-column:2}.service-list strong{grid-column:2;text-align:left}.precision{grid-template-columns:1fr}.precision-media{min-height:460px}.precision-copy{padding:70px 22px}.project-grid{grid-template-columns:1fr 1fr;grid-auto-rows:230px}.project-grid figure:nth-child(1),.project-grid figure:nth-child(4){grid-row:span 1}.review-grid{grid-template-columns:1fr}.contact{grid-template-columns:1fr;padding:80px 22px;gap:55px}.footer{grid-template-columns:1fr 1fr;padding:60px 22px 100px}.mobile-bar{position:fixed;display:grid;grid-template-columns:1fr 1fr;bottom:0;left:0;right:0;z-index:40}.mobile-bar a{padding:15px;text-align:center;font-size:12px;font-weight:700;background:var(--ink);color:#fff}.mobile-bar a:last-child{background:var(--clay)}.quote-form{grid-template-columns:1fr}.quote-form .full,.quote-form .btn{grid-column:1}.vertical-word{display:none}}@media(max-width:560px){.hero h1{font-size:48px}.hero-stats b{font-size:27px}.hero-stats span{font-size:9px}.project-grid{grid-template-columns:1fr}.tech-lines>div{grid-template-columns:36px 1fr}.tech-lines small{grid-column:2}.footer{grid-template-columns:1fr}.review-grid blockquote p{font-size:19px}}
.location{display:grid;grid-template-columns:.8fr 1.2fr;min-height:560px;background:#ded9cf}.location-copy{padding:90px max(5vw,calc((100vw - 1500px)/2 + 5vw)) 90px 5vw}.location h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(44px,5vw,74px);line-height:.95;font-weight:400;letter-spacing:-.04em;margin:10px 0 28px}.location p{max-width:520px;margin-bottom:35px;color:var(--muted)}.location iframe{width:100%;height:100%;min-height:560px;border:0;filter:grayscale(1) contrast(.9)}@media(max-width:900px){.location{grid-template-columns:1fr}.location-copy{padding:70px 22px}.location iframe{min-height:380px}}
