/* Green and blue surfaces, with cards that give each part of the site a place. */
.field-gallery{padding-bottom:20px}.field-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:300px 270px;gap:22px}.field-photo{position:relative;overflow:hidden;isolation:isolate;display:block;padding:0;width:100%;height:100%;border:1px solid #456657;border-radius:18px;background:#113743;text-align:left;color:white;box-shadow:0 16px 38px #00131c35}.field-photo.wide{grid-column:span 2}.field-photo.tall{grid-column:3;grid-row:1/span 2}.field-photo img{height:100%;width:100%;object-fit:cover;transition:transform .45s}.field-photo.tall img{object-position:50% 37%}.field-photo:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#031d26ed);pointer-events:none}.field-photo:hover img{transform:scale(1.035)}.field-photo:hover{border-color:#b4ed68}.field-photo-caption{position:absolute;left:24px;right:55px;bottom:22px;z-index:1}.field-photo-caption small{display:block;font-size:8px;font-weight:600;letter-spacing:.13em;color:#d9edc8;margin-bottom:9px}.field-photo-caption strong{display:block;font-family:Manrope,Arial,sans-serif;font-size:22px;font-weight:600;letter-spacing:-.035em;line-height:1.15}.field-photo-expand{position:absolute;right:18px;bottom:22px;z-index:1;font-size:23px;color:#b4ed68}.gallery-hint{font-size:11px;color:#b8ccc4;margin-top:17px}.field-photo-dialog{width:min(1200px,calc(100% - 32px));max-width:none;max-height:94svh;padding:0;overflow:auto}.field-photo-dialog>img{width:100%;height:auto;max-height:77svh;object-fit:contain;background:#061f2a}.field-photo-close{position:absolute;right:15px;top:15px;z-index:2;display:grid;place-items:center;border:1px solid #0b334240;border-radius:50%;width:42px;height:42px;background:#b4ed68;color:#0b3342;font-size:27px;line-height:1}.field-photo-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 25px}.field-photo-footer h2{font-size:23px;letter-spacing:-.03em}.field-photo-footer a{font-size:12px;color:#b4ed68;white-space:nowrap}@media(max-width:1000px){.field-photo-grid{grid-template-rows:260px 245px;gap:16px}.field-photo-caption{left:18px;bottom:19px}.field-photo-caption strong{font-size:19px}}@media(max-width:760px){.field-photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 320px 230px;gap:15px}.field-photo.wide{grid-column:1/-1}.field-photo.tall{grid-column:2;grid-row:2/span 2}.field-photo:not(.wide):not(.tall){grid-column:1}.field-photo{border-radius:13px}.field-photo-caption{left:14px;right:25px;bottom:17px}.field-photo-caption small{font-size:7px;letter-spacing:.07em;margin-bottom:7px}.field-photo-caption strong{font-size:18px}.field-photo-expand{right:11px;bottom:12px;font-size:19px}.field-photo-footer{align-items:flex-start;flex-direction:column;padding:20px;gap:12px}.field-photo-footer h2{font-size:20px}.field-photo-dialog>img{max-height:74svh}}@media(max-width:480px){.field-photo-grid{grid-template-columns:1fr;grid-template-rows:auto;gap:18px}.field-photo.wide,.field-photo.tall,.field-photo:not(.wide):not(.tall){grid-column:auto;grid-row:auto}.field-photo{height:240px}.field-photo.tall{height:410px;order:4}.field-photo-caption strong{font-size:23px}.field-photo-caption{left:20px;right:45px;bottom:20px}.field-photo-caption small{font-size:8px}.field-photo-expand{right:20px;bottom:20px}.field-photo.wide img{object-position:64% center}}
.video-section{padding-top:52px;padding-bottom:20px}.video-card{display:grid;grid-template-columns:.85fr 1.35fr;gap:42px;align-items:center;padding:30px;background:linear-gradient(135deg,#18463e,#103449);border:1px solid #3d665e;border-radius:24px;box-shadow:0 20px 55px #00131c38}.video-copy{padding:16px 8px 16px 12px}.video-copy h2{font-size:clamp(31px,3vw,44px)}.video-copy p{font-size:14px;color:#c1d8d0;margin-top:20px}.video-player{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:15px;background:#06222e;border:1px solid #527a69}.video-player iframe,.video-player video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:contain}.video-watch-link{margin-top:22px;color:#b4ed68}.video-copy .eyebrow{color:#a9e074}.video-player:focus-within{outline:3px solid #b4ed68;outline-offset:4px}@media(max-width:760px){.video-section{padding-top:30px;padding-bottom:8px}.video-card{grid-template-columns:1fr;gap:24px;padding:22px;border-radius:18px}.video-copy{padding:0}.video-copy h2{font-size:34px}.video-copy p{font-size:13px;margin-top:16px}.video-player{border-radius:11px}}
:root{--ink:#eff7f3;--muted:#b6ccc9;--paper:#0b2635;--line:#31535b;--surface:#123948;--surface-green:#173f3b}
body{background:#081f2c;color:var(--ink)}
.header{background:#0a2634f7;border-color:#294653;color:#eff7f3;backdrop-filter:blur(16px)}
.header nav a:hover{color:var(--green)}.menu-toggle{color:var(--green)}
.brand-icon{border-radius:5px}.brand small{color:#c7ddd2}
.skip{background:var(--navy);color:white}.eyebrow.blue{color:#8ad1e4}
.button,.button.small{border-radius:9px}.button.navy{background:#b4ed68;color:#0b3342}.button.navy:hover{background:#cbff8c}
.hero{border-bottom:1px solid #31535b}.hero h1{font-size:clamp(48px,5.8vw,82px);max-width:960px;line-height:1.08}.hero-content{padding-top:65px}.hero p{max-width:540px}.hero-caption{color:var(--green)}
.proof{border:0;gap:16px;padding-block:28px;align-items:stretch}.proof>div,.proof>div:first-child,.proof>div:last-child{padding:22px 24px;border:1px solid #31535b;border-radius:14px;background:linear-gradient(140deg,#153e48,#10333e);box-shadow:0 10px 25px #00151d25}
.proof>div:nth-child(2){background:linear-gradient(140deg,#19463c,#103630)}.proof strong{color:#eafaeb}.proof .proof-note{background:#103346}.proof-note .crosshair{color:var(--green)}
.service-layout{gap:32px;align-items:start}.service-list{padding-top:0;display:grid;gap:10px}
.service-list button,.service-lidar{padding:22px 20px;background:#10313f;border:1px solid #31535b;border-radius:12px;transition:background .2s,border-color .2s}.service-list button:hover,.service-lidar:hover{background:#1b4550;border-color:#7aab89}.service-list button span,.service-lidar span{color:#b4ccc6}.service-list button[aria-selected=true]{background:#b4ed68;color:#0b3342;border-color:#b4ed68;border-radius:12px}.service-list button[aria-selected=true] span,.service-list button[aria-selected=true] b{color:#214d36}
.service-panel{background:linear-gradient(140deg,#16443f,#123746);border:1px solid #37605c;border-radius:20px;padding:16px;box-shadow:0 22px 50px #00121c38}.service-image{border-radius:11px}.service-copy{padding:25px 14px 15px}.service-copy p{color:#c2d8d2}.image-label{background:#092938ed;color:#e9f5ef;border:1px solid #ffffff25;border-radius:5px}
.precision{width:min(1240px,calc(100% - 64px));margin:0 auto;border:1px solid #355960;border-radius:24px;overflow:hidden;background:linear-gradient(135deg,#123e43,#102f47);box-shadow:0 20px 65px #00131c38}.precision-image{min-height:620px}.precision-copy{padding:58px 42px}.benefit{padding-top:20px;margin-top:20px;border-top:1px solid #ffffff1c}.precision-copy>p,.benefit p{color:#bfd4d3}
.steps{gap:22px}.steps article{position:relative;padding:30px;border:1px solid #325563;border-radius:18px;background:linear-gradient(145deg,#123a4d,#0d2c3a);box-shadow:0 16px 32px #00141d22}.steps article:nth-child(2){background:linear-gradient(145deg,#19463c,#102f36);border-color:#38614c}.step-number{border:0;padding-top:0;color:#9ed8e9;margin-bottom:38px}.step-number b{color:var(--green)}.steps h3{font-size:22px}.steps p{color:#bed2d1}
.projects{background:linear-gradient(180deg,#0b2a38,#102f36);border-block:1px solid #294b53}.project-grid{gap:25px}.project-card{border:1px solid #365a5d;border-radius:18px;overflow:hidden;background:#143e45;box-shadow:0 15px 35px #00151e26}.project-photo{border-radius:0}.project-meta,.project-card.large .project-meta{padding:23px;min-height:90px}.project-meta>span{color:#bfd4cf}.project-card:hover{border-color:#83b68a}.project-card.large .project-photo{height:520px}.project-card .project-photo{height:210px}
.lidar-teaser{background:linear-gradient(130deg,#15403d,#10344b);border:1px solid #3a605e;border-radius:24px;margin-block:80px;padding:44px;gap:48px;box-shadow:0 20px 55px #00151d30}.lidar-teaser figure{border:1px solid #395966;border-radius:13px}.lidar-teaser p{color:#c3d7d4}
.faq{border:0;padding-top:20px}.faq-list{display:grid;gap:12px;align-content:start}.faq-list details{background:#113542;border:1px solid #365660;border-radius:12px;padding-inline:22px}.faq-list summary{font-size:14px}.faq-list summary span{color:var(--green)}.faq-list details[open]{background:#17413f;border-color:#618b65}.faq-list details p{color:#c1d7d0}
.contact{background:radial-gradient(ellipse at 15% 40%,#174b414d,transparent 60%),#0a293b;border-top:1px solid #31535b}.contact form{background:linear-gradient(145deg,#174144,#12374c);border:1px solid #4a6a68;border-radius:20px;padding:34px;box-shadow:0 22px 55px #00131c45}
input,textarea,select{background:#0b2939;color:#f1f8f4;border:1px solid #527075;border-radius:7px;color-scheme:dark}input::placeholder,textarea::placeholder{color:#adc4c8}label{color:#e2eeea}.form-note{color:#c0d4d1}.footer{border-top:1px solid #44634f}.footer-grass{background-image:linear-gradient(90deg,#092d2ccc,#0a3545cf),url('/assets/robot.jpg')}
dialog{background:#123746;color:#f0f8f4;border:1px solid #4a706b;border-radius:18px;box-shadow:0 30px 90px #0008}.dialog-close{background:#b4ed68;color:#0b3342}.dialog-copy p{color:#c6d8d3}
.subhero{background:radial-gradient(ellipse at 20% 20%,#1f5a4844,transparent 65%),#0d3042;border-bottom:1px solid #315762}.article{background:linear-gradient(140deg,#123742,#10313e);border:1px solid #33545d;border-radius:22px;padding:45px;margin-block:55px;box-shadow:0 18px 45px #00131c26}.article h2{color:#f2f8f1}.article a:not(.button){color:#b4ed68;text-decoration:underline;text-underline-offset:4px}.article>img{border-radius:14px;margin-top:0}.article p,.article li{color:#c1d5d0}
.survey-hero .wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;align-items:center}.survey-hero{padding-block:64px}.survey-hero h1{font-size:clamp(38px,4.1vw,61px);line-height:1.12}.survey-hero p{font-size:15px;max-width:550px}.survey-hero .button{margin-top:28px;font-size:12px;gap:18px}.survey-drone{width:100%;aspect-ratio:1.17;object-fit:cover;border:1px solid #3c605b;border-radius:24px;box-shadow:0 30px 65px #00151866}.survey-outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:36px}.survey-outcomes article{background:linear-gradient(140deg,#19433f,#103242);border:1px solid #3d605c;border-radius:16px;padding:28px}.survey-outcomes span{display:block;color:var(--green);font-size:11px;letter-spacing:.12em;margin-bottom:18px}.survey-outcomes h2{font-size:23px;letter-spacing:-.03em}.survey-outcomes p{font-size:13px;color:#c1d5cf;margin-top:13px}
.button{white-space:nowrap}
@media(max-width:400px){.header .brand{font-size:15px}.header-cta.button{font-size:10px;padding:10px;gap:9px}.hero-actions{gap:18px}.hero-actions .button{padding:14px 16px;gap:16px}.hero-actions .text-link{gap:12px;font-size:12px}}
@media(max-width:1100px){.proof>div,.proof>div:first-child,.proof>div:last-child{padding:20px 16px}.precision-copy{padding:40px 30px}.steps article{padding:24px}.lidar-teaser{padding:32px;gap:30px}.survey-hero .wrap{gap:25px}.survey-hero h1{font-size:43px}}
@media(max-width:760px){.header nav{background:#0d2f40;border-bottom:1px solid #3d5c64}.hero h1{font-size:40px;line-height:1.13;letter-spacing:-.045em;max-width:350px}.hero-content{padding-top:62px}.hero{min-height:690px}.hero p{font-size:13px;max-width:320px}.proof{gap:8px}.proof>div,.proof>div:first-child,.proof>div:last-child,.proof>div:nth-child(3){padding:16px 10px;border:1px solid #31535b;border-radius:11px}.proof strong{font-size:25px}.proof p{font-size:9px}.service-list button,.service-lidar{padding:17px 16px}.service-panel{padding:10px;border-radius:16px}.service-copy{padding:21px 10px 14px}.precision{width:calc(100% - 40px);border-radius:18px}.precision-image{min-height:300px}.precision-copy{padding:35px 23px}.steps{gap:17px}.steps article{padding:27px}.step-number{margin-bottom:25px}.project-card.large .project-photo,.project-card .project-photo{height:260px}.project-meta,.project-card.large .project-meta{padding:20px;display:block}.project-meta>span{text-align:left;margin-top:9px}.lidar-teaser{margin-block:55px;padding:28px 22px;border-radius:18px;gap:27px}.lidar-teaser img{height:230px}.faq-list details{padding-inline:17px}.contact form{padding:22px}.article{padding:25px 22px;margin-block:35px;border-radius:17px}.article h2{font-size:28px}.survey-hero .wrap{grid-template-columns:1fr;gap:35px}.survey-hero{padding-block:45px}.survey-hero h1{font-size:40px}.survey-hero .button{font-size:11px;padding:15px 17px}.survey-drone{max-height:350px;aspect-ratio:1.25}.survey-outcomes{grid-template-columns:1fr;gap:13px;padding-top:25px}.survey-outcomes article{padding:24px}.survey-outcomes span{margin-bottom:12px}}
