@charset "UTF-8";
:root{--paper:#f5f5ee;--ink:#22251f;--muted:#64675f;--line:#d5d7ce;--yellow:#e6f158;--dark:#252923;--white:#fff;--gutter:clamp(22px,4.5vw,76px);--max:1440px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}a:focus-visible,button:focus-visible{outline:3px solid #929e21;outline-offset:5px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}.skip-link{position:absolute;top:-100px;left:20px;z-index:20;background:var(--yellow);padding:16px}.skip-link:focus{top:12px}.page-shell{max-width:var(--max);margin:auto;padding:0 var(--gutter)}.site-header{height:114px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center;font-size:17px;font-weight:700;letter-spacing:.01em;line-height:1.02}.brand-symbol{width:35px;height:35px}.brand>span>span{display:block}.brand-dot{color:#839018}.site-header nav{display:flex;align-items:center;gap:34px;font-size:13px}.site-header nav>a{padding:12px 0}.site-header nav>a:hover{color:#707a1d}.site-header nav .nav-contact{border-bottom:1px solid var(--ink);padding-bottom:8px;margin-left:16px}.nav-contact span{margin-left:25px}.eyebrow{font:10px/1.5 "Courier New",monospace;letter-spacing:.11em;display:flex;align-items:center;gap:9px}.status-dot{width:7px;height:7px;display:inline-block;background:var(--yellow);border:1px solid #778129;border-radius:50%;flex:none}.hero{padding-top:43px}.hero-content{display:grid;grid-template-columns:1.6fr 1fr;gap:60px;align-items:end;margin:23px 0 43px}h1{font-size:clamp(56px,6.8vw,98px);letter-spacing:-.066em;font-weight:500;line-height:.99}h2{font-size:clamp(32px,3.25vw,47px);font-weight:400;letter-spacing:-.045em;line-height:1.1}.hero-intro{max-width:330px;justify-self:end;padding:0 0 3px}.hero-intro>p:first-child{font-size:16px;line-height:1.6;color:#565b52;margin-bottom:24px}.button{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:26px;font-size:12px;font-weight:500;padding:17px 19px;border:0;border-radius:2px;transition:background .18s,color .18s}.button span{font-size:19px;line-height:14px;font-weight:400}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#41483a}.certification{font-size:10px!important;margin-top:15px;display:flex;align-items:center;gap:7px;color:var(--muted)}.certification svg{width:15px;height:15px}.hero-image-wrap{position:relative;height:clamp(330px,35vw,500px);overflow:hidden;background:#545c4e}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center 66%}.image-corner{position:absolute;width:18px;height:18px;border:1px solid #eef3c3;opacity:.8}.corner-tl{top:17px;left:17px;border-right:0;border-bottom:0}.corner-tr{top:17px;right:17px;border-left:0;border-bottom:0}.corner-bl{bottom:17px;left:17px;border-right:0;border-top:0}.corner-br{bottom:17px;right:17px;border-left:0;border-top:0}.image-label{position:absolute;top:31px;left:34px;display:flex;align-items:center;gap:8px;font:9px "Courier New",monospace;letter-spacing:.1em;color:#fff}.image-label .status-dot{width:5px;height:5px;border:0}.north-mark{position:absolute;right:30px;top:28px;width:26px;height:50px;color:#f5f5ee}.hero-figure figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 0;font-size:11px;color:var(--muted);border-bottom:1px solid var(--line)}.image-caption-right{font:8px/1.5 "Courier New",monospace;letter-spacing:.07em}.image-caption-right span{padding:0 7px;color:#9fa297}.section{padding-top:91px}.section-index{color:var(--muted);margin-bottom:23px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:35px}.section-heading>p{max-width:315px;font-size:13px;line-height:1.75;color:var(--muted);padding-bottom:3px}.deliverables{display:grid;grid-template-columns:1fr 1fr;gap:28px}.image-button{position:relative;width:100%;height:350px;display:block;padding:0;border:0;overflow:hidden;background:#e9eae3}.image-button img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.image-button:hover img{transform:scale(1.035)}.ortho-frame img{object-position:center 50%}.terrain-frame{background:#eceee7}.terrain-frame img{object-fit:contain;mix-blend-mode:multiply;padding:12px}.image-number{position:absolute;top:17px;left:17px;font:10px "Courier New",monospace;background:var(--paper);min-width:26px;padding:8px 6px}.expand-icon{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:32px;height:32px;background:var(--paper);font-size:19px}.deliverable-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:21px}.deliverable-title h3{font-size:20px;font-weight:400;letter-spacing:-.03em}.deliverable-title>span{font:8px "Courier New",monospace;color:var(--muted);letter-spacing:.035em}.deliverable>p{font-size:12px;line-height:1.75;color:var(--muted);max-width:420px;margin-top:12px}.about{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding-top:45px;padding-bottom:68px;border-top:1px solid var(--line);margin-top:76px}.about h2{font-size:36px}.about .section-index{margin-bottom:20px}.about-body{display:grid;grid-template-columns:118px 1fr;gap:24px;align-items:start}.about-body>img{height:156px;width:118px;object-fit:cover;object-position:35% center}.about-body p{font-size:12px;line-height:1.8;color:var(--muted)}.about-body p+p{margin-top:13px}.text-link{font-size:11px;display:inline-flex;gap:25px;align-items:center;margin-top:17px;border-bottom:1px solid #aeb1a5;padding-bottom:5px}.text-link:hover{border-color:var(--ink)}.contact{background:var(--dark);color:var(--paper);padding:65px var(--gutter) 0}.contact-inner,.site-footer{max-width:calc(var(--max) - 2 * var(--gutter));margin:auto}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact .eyebrow{color:#bcc2b2}.contact h2{font-size:clamp(42px,4.8vw,68px);margin-top:29px;line-height:1.02;letter-spacing:-.055em}.contact-copy>p:not(.eyebrow){font-size:12px;line-height:1.8;margin-top:24px;color:#b6bdad}.contact-links{margin-top:35px}.phone-link{font-size:26px;letter-spacing:-.035em;display:block;width:fit-content}.phone-link>span:first-child{display:block;color:#b6bdad;font:9px "Courier New",monospace;letter-spacing:.1em;margin-bottom:9px}.phone-link .link-arrow{font-size:20px;margin-left:23px;color:var(--yellow)}.email-link{font-size:12px;display:inline-flex;gap:20px;color:#d1d6c8;margin-top:15px;border-bottom:1px solid #606754;padding-bottom:6px}.phone-link:hover,.email-link:hover{color:var(--yellow)}.message-form{padding:29px 30px 22px;border:1px solid #52594a;max-width:470px;justify-self:end;width:100%;align-self:start}.message-form h3{font-size:23px;font-weight:400;letter-spacing:-.025em}.message-form>p:first-of-type{font-size:11px;color:#b6bdad;margin-top:8px;margin-bottom:28px}.form-field{margin-bottom:21px}.form-field label{display:block;font-size:10px;margin-bottom:10px;color:#e0e4d8}.form-field label span{color:#a9b29e;margin-left:3px}.form-field input,.form-field textarea{display:block;width:100%;padding:10px 0;border:0;border-bottom:1px solid #6a725e;border-radius:0;background:transparent;color:var(--paper);font-size:12px;line-height:1.7}.form-field textarea{resize:vertical;min-height:110px;max-height:350px}.form-field input::placeholder,.form-field textarea::placeholder{color:#a3ad98;opacity:1}.button-yellow{background:var(--yellow);color:var(--ink);width:100%}.button-yellow:hover{background:#f0fb70}.message-form .form-help{font-size:10px;line-height:1.7;color:#b6bdad;margin-top:13px;max-width:330px}.message-status{font-size:11px;line-height:1.6;color:var(--yellow)}.message-status:not(:empty){margin-top:12px}.site-footer{margin-top:65px;border-top:1px solid #49513e}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:27px 0;font-size:10px;color:#c4cbbb}.footer-brand{font-size:13px;letter-spacing:.03em;font-weight:600;color:var(--paper)}.footer-brand span{color:var(--yellow)}.footer-top>a:last-child span{margin-left:14px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #49513e;padding:18px 0 22px;font-size:9px;line-height:1.7;color:#aab39d}dialog{border:0;padding:0;color:var(--ink);background:var(--paper);width:min(1100px,94vw);max-width:94vw;max-height:94dvh}dialog::backdrop{background:#172015db}.dialog-toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--line)}.dialog-toolbar h2{font-size:19px;letter-spacing:-.02em}.dialog-toolbar button{background:transparent;border:0;padding:8px 0 8px 20px;font-size:12px}.dialog-toolbar button span{font-size:25px;margin-left:20px;vertical-align:middle}.dialog-image-wrap{height:min(76dvh,850px);padding:16px;display:flex;justify-content:center;background:#e6e8df}.dialog-image-wrap img{object-fit:contain;max-height:100%;width:100%}body:has(dialog[open]){overflow:hidden}
@media(min-width:1500px){.hero-content{margin-bottom:48px}.hero{padding-top:48px}.hero-intro{max-width:370px}.hero-intro>p:first-child{font-size:18px}.button{font-size:13px}.eyebrow{font-size:11px}}
@media(max-width:1050px){.hero-content{grid-template-columns:1.5fr 1fr;gap:30px}h1{font-size:clamp(57px,7.6vw,80px)}.hero-intro>p:first-child{font-size:14px}.image-button{height:290px}.deliverable-title{align-items:start;flex-direction:column;gap:9px}.about{gap:30px}.about h2{font-size:31px}.about-body{grid-template-columns:90px 1fr;gap:17px}.about-body>img{width:90px;height:135px}.contact-inner{gap:45px}.message-form{padding:25px 23px}.hero-figure figcaption{font-size:10px}.image-caption-right{font-size:7px}}
@media(max-width:700px){html{scroll-padding-top:20px}.site-header{height:87px}.brand{font-size:14px;gap:10px}.brand-symbol{width:29px;height:29px}.site-header nav{gap:0;font-size:11px}.site-header nav>a:not(.nav-contact){display:none}.site-header nav .nav-contact{margin-left:0}.nav-contact span{margin-left:17px}.hero{padding-top:32px}.eyebrow{font-size:9px;letter-spacing:.07em}.hero-content{grid-template-columns:1fr;gap:27px;margin:23px 0 30px}h1{font-size:clamp(52px,10.6vw,74px);letter-spacing:-.06em}.hero-intro{justify-self:start;max-width:100%;padding:0}.hero-intro>p:first-child{font-size:14px;max-width:345px;line-height:1.7;margin-bottom:20px}.hero-intro .button{max-width:345px}.certification{margin-top:13px}.hero-image-wrap{height:310px}.hero-image{object-position:55% 67%}.image-label{font-size:8px;top:27px;left:27px}.north-mark{width:21px;height:40px;top:22px;right:22px}.hero-figure figcaption{align-items:flex-start;padding:14px 0;gap:8px;font-size:10px}.image-caption-right{display:none}.section{padding-top:56px}.section-index{margin-bottom:18px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:35px}.section-heading>p{font-size:12px;max-width:350px;margin-top:22px}.deliverables{grid-template-columns:1fr;gap:33px}.image-button{height:310px}.deliverable-title{flex-direction:row;align-items:center;gap:10px;margin-top:17px}.deliverable-title h3{font-size:20px}.deliverable-title>span{font-size:7px}.deliverable>p{margin-top:10px;font-size:12px}.about{display:block;margin-top:49px;padding-top:33px;padding-bottom:42px}.about h2{font-size:32px}.about-body{grid-template-columns:92px 1fr;gap:20px;margin-top:25px}.about-body>img{width:92px;height:134px}.about-body p{font-size:12px}.contact{padding-top:42px}.contact-inner{grid-template-columns:1fr;gap:34px}.contact h2{font-size:48px;margin-top:23px}.contact-copy>p:not(.eyebrow){margin-top:19px}.contact-links{margin-top:27px}.phone-link{font-size:26px}.message-form{max-width:100%;justify-self:start;padding:26px 22px 23px}.message-form h3{font-size:24px}.form-field input,.form-field textarea{font-size:16px}.message-form>p:first-of-type{margin-bottom:22px}.form-field label{font-size:11px}.button{font-size:12px}.site-footer{margin-top:37px}.footer-top{display:grid;grid-template-columns:1fr auto;gap:16px;padding:24px 0}.footer-top>span{grid-column:1;grid-row:2}.footer-top>a:last-child{grid-column:2;grid-row:1/3}.footer-brand{font-size:12px}.footer-bottom{display:block;padding:17px 0 21px;font-size:9px}.footer-bottom p+p{margin-top:10px;max-width:300px}.dialog-toolbar{padding:12px 15px}.dialog-toolbar h2{font-size:17px}.dialog-toolbar button{font-size:11px}.dialog-toolbar button span{margin-left:7px}.dialog-image-wrap{padding:7px;height:70dvh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
