@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{--green:#142c24;--deep:#10251f;--cream:#f4f3eb;--gold:#c7a65e;--ink:#1d3029}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}.header{height:90px;padding:0 6%;display:flex;align-items:center;gap:3rem;background:var(--deep);color:#f8f8f2}.brand{width:77px;height:70px;overflow:hidden;display:flex;align-items:center}.brand img{object-fit:contain}.header nav{display:flex;gap:2.5rem;margin:auto;font-size:13px;font-weight:600}.header nav a:hover,.text-link:hover{color:var(--gold)}.nav-cta{font-size:13px;border-bottom:1px solid #a7b2a8;padding:12px 0}.nav-cta span{margin-left:25px;color:var(--gold)}.hero{background:var(--deep);color:white;min-height:640px;display:grid;grid-template-columns:1fr 1.1fr;position:relative;padding:45px 6% 76px;gap:5%}.hero-copy{align-self:center;z-index:1}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:700;color:#c5cdbf;margin:0 0 30px}.eyebrow span{display:inline-block;width:7px;height:7px;background:var(--gold);border-radius:50%;margin-right:9px}.dark{color:#728178}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Manrope,sans-serif;font-weight:500;letter-spacing:-.065em;line-height:1.07}h1{font-size:clamp(52px,6.3vw,96px);margin-bottom:28px}em{font-family:Georgia,serif;font-weight:400;color:var(--gold)}.intro{color:#c4cec5;line-height:1.75;max-width:480px;font-size:16px}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:35px}.button{background:var(--gold);color:#14271f;display:inline-flex;align-items:center;gap:50px;padding:17px 20px;font-size:12px;font-weight:700}.button:hover{background:#dfbf79}.text-link{font-size:12px;color:white}.text-link span{margin-left:18px}.hero-image{position:relative;min-height:450px;overflow:hidden;background:#364b39}.hero-image img{height:100%;position:absolute;inset:0}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,24,18,.6),transparent 35%)}.image-caption{position:absolute;bottom:20px;left:23px;right:23px;z-index:1;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.13em}.hero-bottom{position:absolute;bottom:25px;left:6%;right:6%;display:flex;justify-content:space-between;color:#82988a;font-size:9px;letter-spacing:.13em}.section{padding:120px 8%}.intro-section{display:grid;grid-template-columns:1fr 1fr;gap:10%}h2{font-size:clamp(42px,5vw,70px);margin-bottom:25px}.section-copy{max-width:540px}.lead{font-size:22px;line-height:1.5;letter-spacing:-.025em}.section-copy>p:not(.lead),.vision-grid p:not(.lead){line-height:1.8;color:#68776e}.status{border-top:1px solid #d3d9cf;margin-top:38px;padding-top:24px;display:flex;gap:14px;font-size:13px;line-height:1.7;color:#6a786f}.status strong{color:var(--ink)}.dot{width:8px;height:8px;background:#91a774;border-radius:50%;margin-top:7px;flex:none}.technology{background:#1b352b;color:white;padding:110px 8%}.section-head{display:flex;justify-content:space-between;gap:5%;align-items:end;margin-bottom:50px}.section-head>p{max-width:370px;color:#b4c1b5;line-height:1.75}.tech-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:7%;align-items:center}.screen{background:#0b1d17;padding:10px}.screen img{aspect-ratio:1.6;object-fit:cover;object-position:center}.screen-label{padding:18px 10px 8px;display:flex;justify-content:space-between;color:#d4ddce;font-size:9px;letter-spacing:.12em}.screen-label span{color:#92a497}.tech-list article{display:flex;gap:25px;padding:24px 0;border-bottom:1px solid #486056}.tech-list article>span{font-size:11px;color:var(--gold)}h3{font-family:Manrope,sans-serif;font-size:21px;font-weight:600;letter-spacing:-.03em;margin-bottom:9px}.tech-list p,.gallery p{font-size:14px;line-height:1.7;color:#aebdb0;margin:0}.light-head>p{color:#6d7c71}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px}.gallery-card{background:#e8ebe2}.gallery-card img{height:320px}.gallery-card div{padding:25px 28px 30px}.gallery-card span,.subtle{font-size:10px;letter-spacing:.13em;color:#8c7b54;font-weight:700}.gallery-card h3{margin:15px 0 8px}.gallery p{color:#6d7c71}.alcor{background:#c3a568;color:#172c23;padding:95px 8%;display:grid;grid-template-columns:1fr 1fr;gap:10%}.alcor .eyebrow{color:#34493a}.alcor h2 em{color:#f5edda}.alcor p:not(.eyebrow){line-height:1.8;max-width:500px}.alcor-mark{font-family:Manrope,sans-serif;font-size:clamp(160px,25vw,340px);font-weight:800;line-height:.8;letter-spacing:-.1em;color:#b79a5d;position:relative}.alcor-mark span{position:absolute;font-size:50px;left:45%;top:35%;color:#23392d}.subtle{display:block;margin-top:35px;color:#415241}.vision-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.vision-grid>div{max-width:500px}.contact{background:#142c24;color:white;padding:105px 8%;text-align:center}.contact p:not(.eyebrow){max-width:500px;margin:0 auto 30px;line-height:1.7;color:#bac8bc}.outline{border:1px solid #86998a;color:white;background:transparent}.outline:hover{color:#14271f}footer{background:#0d211a;color:#9caea0;display:flex;align-items:center;gap:25px;padding:30px 8%;font-size:11px}footer p{margin:0}footer>span{margin-left:auto}.footer-brand{font-weight:bold;font-size:19px;color:white}.footer-brand span{color:var(--gold)}@media(max-width:760px){.header{height:74px;padding:0 5%}.brand{width:60px}.header nav{gap:14px;overflow:auto;white-space:nowrap;font-size:11px}.nav-cta{display:none}.hero{grid-template-columns:1fr;padding:50px 6% 70px;gap:30px}.hero-image{min-height:300px}.hero-bottom span:first-child{display:none}.hero-bottom{justify-content:end}.section,.technology{padding:75px 6%}.intro-section,.vision-grid,.tech-layout,.alcor{grid-template-columns:1fr;gap:35px}.section-head{display:block}.section-head>p{margin-top:20px}.gallery{grid-template-columns:1fr}.gallery-card img{height:250px}.alcor{padding:75px 6%}.alcor-mark{font-size:180px}.contact{padding:75px 6%}footer{flex-wrap:wrap}.screen-label span{display:none}}
/* The original logo has dark lettering, so it needs a light background. */
.brand{background:#f4f3eb;border-radius:3px;padding:4px}.hero-image img{object-fit:contain;background:#1c3024}
.software-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:65px}.software-gallery article{background:#10271e}.software-gallery img{width:100%;height:auto;object-fit:contain;aspect-ratio:1100/892}.software-gallery article div{padding:22px}.software-gallery span{font-size:10px;letter-spacing:.13em;color:#c7a65e;font-weight:700}.software-gallery h3{font-size:18px;margin:13px 0 8px}.software-gallery p,.map-credit{font-size:13px;line-height:1.6;color:#aebdb0;margin:0}.map-credit{margin-top:20px;font-size:11px}@media(max-width:760px){.software-gallery{grid-template-columns:1fr}.software-gallery img{height:auto}}
.point-cloud{display:grid;grid-template-columns:1.2fr .8fr;background:#10271e;margin-top:24px;align-items:center}.point-cloud>a{display:block}.point-cloud img{width:100%;height:auto}.point-cloud>div{padding:36px 10%}.point-cloud .eyebrow{color:#c7a65e;margin-bottom:20px}.point-cloud h3{font-size:clamp(24px,2.5vw,36px);line-height:1.15}.point-cloud p:not(.eyebrow){font-size:14px;line-height:1.75;color:#aebdb0}.point-cloud span{display:block;margin-top:25px;font-size:10px;letter-spacing:.12em;color:#c7a65e;font-weight:700}@media(max-width:760px){.point-cloud{grid-template-columns:1fr}.point-cloud>div{padding:26px}}
.design-story{background:#eeeee6;color:#1d3029;padding:115px 8%}.design-intro{display:grid;grid-template-columns:1fr .6fr;gap:10%;align-items:end;margin-bottom:75px}.design-intro>p,.design-step-copy p,.finale-head>p{color:#69786e;line-height:1.75;font-size:15px;max-width:390px}.design-step{display:grid;grid-template-columns:.36fr 1fr;gap:7%;padding:40px 0;border-top:1px solid #cdd4c8}.design-step-copy span,.finale-head span{font-size:10px;font-weight:700;letter-spacing:.15em;color:#9b8351}.design-step-copy h3{font-size:27px;margin:18px 0 14px}.design-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.design-pair a,.design-concept a{display:flex;background:#e4e5df;align-items:center}.design-pair img,.design-concept img{width:100%;height:270px;object-fit:contain}.design-concept{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}.design-concept>a img{height:420px}.design-concept>div{display:grid;gap:14px}.design-concept>div img{height:203px}.design-finale{background:#d7d9d0;padding:46px;margin-top:25px}.finale-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.finale-head h3{font-family:Manrope,sans-serif;font-size:clamp(34px,4vw,58px);font-weight:500;letter-spacing:-.05em;line-height:1.1;margin:16px 0 0}.finale-head>p{margin:0}.design-finale img{max-height:720px;width:100%;object-fit:contain;background:#999}.design-note{font-size:11px;letter-spacing:.03em;color:#66756b;margin:16px 0 0}@media(max-width:760px){.design-story{padding:75px 6%}.design-intro,.design-step{grid-template-columns:1fr;gap:18px}.design-intro{margin-bottom:35px}.design-pair img{height:170px}.design-concept{grid-template-columns:1fr}.design-concept>a img{height:270px}.design-concept>div{grid-template-columns:1fr 1fr}.design-concept>div img{height:150px}.design-finale{padding:22px}.finale-head{display:block}.finale-head>p{margin-top:20px}}
.alcor{display:block}.alcor-main{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.alcor-main>a{display:block}.alcor-main img{width:100%;aspect-ratio:1.3;object-fit:cover}.alcor-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px}.alcor-gallery img{width:100%;height:260px;object-fit:cover}.alcor-gallery article span{display:block;margin-top:18px;font-size:10px;letter-spacing:.13em;font-weight:700;color:#405341}.alcor-gallery h3{margin-top:10px}.alcor-gallery a{display:block}@media(max-width:760px){.alcor-main,.alcor-gallery{grid-template-columns:1fr}.alcor-main{gap:30px}.alcor-gallery{gap:30px}.alcor-gallery img{height:300px}}
.alcor-videos{border-top:1px solid rgba(20,44,36,.28);margin-top:60px;padding-top:40px}.alcor-video-intro .eyebrow{margin-bottom:15px}.alcor-video-intro h3{font-size:30px;margin:0 0 10px}.alcor-video-intro p:not(.eyebrow){font-size:14px}.alcor-video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:25px}.alcor-video-grid video{display:block;width:100%;height:410px;object-fit:contain;background:#10251f}.alcor-video-grid h4{font-family:Manrope,sans-serif;font-size:15px;margin:14px 0 0}@media(max-width:760px){.alcor-video-grid{grid-template-columns:1fr}.alcor-video-grid video{height:400px}}
.team-hero{background:#142c24;color:#f5f6ef;min-height:450px;padding:100px 8%;display:grid;grid-template-columns:1fr .42fr;gap:10%;align-items:end}.team-hero h1{font-size:clamp(52px,6vw,86px);max-width:850px}.team-intro{color:#c4cec5;font-size:17px;line-height:1.75;max-width:560px;margin:0}.team-hero-aside{border-top:1px solid #72887a;padding-top:20px}.team-hero-aside span,.team-number{font-size:10px;letter-spacing:.15em;font-weight:700;color:#bba368}.team-hero-aside p{font-family:Georgia,serif;font-size:30px;line-height:1.25;color:#d8dfd3;margin:20px 0 0}.team-section{padding:110px 8%;background:#f4f3eb}.team-heading{display:flex;align-items:end;justify-content:space-between;gap:8%;margin-bottom:55px}.team-heading>p{max-width:370px;line-height:1.75;color:#68776e}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.team-card{background:#e6e9df;min-width:0;display:flex;flex-direction:column;padding:24px}.team-initials{font-family:Georgia,serif;font-size:clamp(55px,7vw,100px);letter-spacing:-.08em;color:#a6b4a1;line-height:1;margin:50px 0}.team-card-text{border-top:1px solid #c6cec2;padding-top:22px;flex:1}.team-card h3{margin:0 0 7px}.team-role{font-size:11px!important;letter-spacing:.06em;text-transform:uppercase;color:#8d7748!important;font-weight:700}.team-card-text p{font-size:14px;line-height:1.7;color:#68776e}.team-contact{text-align:center;padding:105px 8%;background:#142c24;color:#fff}.team-contact>p:not(.eyebrow){max-width:580px;color:#bac8bc;line-height:1.75;margin:0 auto 25px}.team-contact .team-contact-note{color:#c7a65e!important;font-size:13px}.team-contact .button{margin-top:10px}@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.team-hero{grid-template-columns:1fr;gap:45px;padding:75px 6%}.team-section{padding:75px 6%}.team-heading{display:block}.team-grid{grid-template-columns:1fr 1fr}.team-initials{margin:30px 0}.team-contact{padding:75px 6%}}@media(max-width:480px){.team-grid{grid-template-columns:1fr}.team-hero h1{font-size:48px}}
.construction-notice{background:#c7a65e;color:#142c24;text-align:center;padding:9px 16px;font-size:12px;letter-spacing:.08em;font-weight:700}
