@charset "UTF-8";
:root{--ink:#151568;--muted:#555e73;--paper:#edf3f0;--white:#fff;--line:#ccd9d5;--accent:#007a43;--highlight:#58d68d;--night:#12134f;--mint:#b9e4ce;--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #00864a;outline-offset:5px}h1,h2,h3,h4,p{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(2.2rem,3.8vw,3.2rem);font-weight:500}h2{font-size:clamp(1.75rem,2.8vw,2.3rem);font-weight:500}h3{font-size:1.4rem;font-weight:500;letter-spacing:-.025em}p+p{margin-top:1rem}img,svg{max-width:100%}.wrap{max-width:var(--max);width:calc(100% - 80px);margin:auto}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.site-header{background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;text-decoration:none;line-height:1.05;flex-shrink:0}.brand-logo{display:block;width:220px;height:auto}.nav{display:flex;align-items:center;gap:28px}.nav a{font-size:16px;text-decoration:none}.nav a[aria-current=page]:not(.button){text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:9px}.nav a:hover{color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:50px;padding:12px 22px;text-decoration:none;background:var(--accent);color:white;border:1px solid var(--accent);font-size:16px;font-weight:600;cursor:pointer;transition:background .15s,transform .15s}.button:hover{background:#005c33;color:white}.button:disabled{opacity:.55;cursor:not-allowed}.button.secondary{background:transparent;border-color:var(--line);color:var(--ink)}.button.secondary:hover{background:#edf6f0}.button.arrow:after{content:'↗';font-size:19px;font-weight:400}.nav .button{min-height:43px;padding:9px 17px}.nav .button:hover{color:white}.menu-toggle{display:none;border:1px solid var(--line);background:none;padding:8px 13px;color:var(--ink)}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:10px;margin-bottom:25px}.eyebrow:before{content:'';width:7px;height:7px;background:var(--accent)}.hero{--ink:#f3f6ff;--muted:#c9d4e5;--line:#566380;padding:78px 0 68px;color:var(--ink);background:linear-gradient(115deg,#12134f,#193b46)}.hero .eyebrow:before{background:var(--highlight)}.hero .button:not(.secondary){background:var(--highlight);border-color:var(--highlight);color:#12134f}.hero .button:not(.secondary):hover{background:#8be5b1;border-color:#8be5b1}.hero .button.secondary:hover{background:#ffffff12}.hero :focus-visible{outline-color:var(--highlight)}.hero .system-panel{box-shadow:0 16px 40px #070b2429;border:1px solid #506785}.hero .panel-caption{border-color:var(--highlight)}.hero-grid{display:grid;grid-template-columns:1.14fr 1fr;gap:64px;align-items:center}.hero h1{max-width:660px}.hero h1 em{font-style:normal;color:var(--highlight)}.hero-copy{font-size:18px;max-width:540px;color:var(--muted);margin-top:26px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:32px}.hero-foot{font-size:14px;color:var(--muted);margin-top:28px;display:flex;gap:18px;align-items:center}.hero-foot span+span{border-left:1px solid var(--line);padding-left:18px}.system-panel{background:var(--night);color:#f0f3fa;padding:28px 30px 23px;position:relative;overflow:hidden;box-shadow:12px 12px 0 #e2ece7}.system-panel>*{position:relative}.panel-meta{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;font-family:monospace;font-size:14px;letter-spacing:1.3px;color:#c4cbe3}.panel-meta .dot{display:inline-block;width:6px;height:6px;background:var(--highlight);margin-right:6px}.system-stack{padding:28px 0 22px}.system-layer{display:grid;grid-template-columns:36px 1fr auto;align-items:center;border:1px solid #50558a;min-height:72px;padding:13px 16px;background:#1e2361}.system-layer+.system-layer{margin-top:17px;position:relative}.system-layer+.system-layer:before{content:'';position:absolute;left:33px;top:-18px;height:17px;border-left:1px solid var(--highlight)}.layer-number{font:14px monospace;color:var(--highlight)}.layer-name{font-size:16px;letter-spacing:-.3px}.layer-detail{font-size:14px;color:#c4cbe3;letter-spacing:.4px}.layer-port{height:8px;width:8px;border:1px solid #a9ddc0}.system-layer.active{border-color:var(--highlight)}.panel-bottom{flex-wrap:wrap;border-top:1px solid #484e82;padding-top:15px;display:flex;gap:18px;font:14px monospace;color:#c8d7e2}.panel-caption{font-size:14px;margin-top:18px;color:var(--muted);padding-left:12px;border-left:2px solid var(--accent)}.market-band{background:#e0ece6;border-block:1px solid var(--line);padding:21px 0}.markets{display:flex;gap:28px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:14px}.markets .label{font:14px monospace;text-transform:uppercase;color:var(--muted);letter-spacing:1px}.section{padding:88px 0}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:40px}.section-head h2{max-width:680px}.section-head>p{max-width:365px;color:var(--muted);font-size:16px}.text-link{font-size:16px;text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:4px;white-space:nowrap}.text-link:after{content:' ↗';margin-left:16px}.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.problem-card{background:#f7faf8;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none;display:flex;flex-direction:column;align-items:start;gap:17px;transition:background .15s}.problem-card:hover{background:#f0f7f3}.card-index{font:14px monospace;color:var(--accent)}.problem-card p{font-size:16px;color:var(--muted);max-width:340px}.card-bottom{font-size:14px;margin-top:auto;padding-top:13px;color:var(--accent)}.dark{background:var(--night);color:var(--paper)}.dark .eyebrow{color:#c8d5e4}.dark .eyebrow:before{background:var(--highlight)}.dark p{color:#c5cce1}.dark h2{max-width:630px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.split .lead{font-size:18px;margin-top:25px;max-width:560px}.detail-list{list-style:none;padding:0;margin:0}.detail-list li{padding:20px 0;border-bottom:1px solid #414779;display:grid;grid-template-columns:30px 1fr;gap:15px}.detail-list li:first-child{padding-top:0}.detail-list span{color:var(--highlight);font:14px monospace;padding-top:4px}.detail-list h3{font-size:20px}.detail-list p{font-size:16px;margin-top:10px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.tags span{font:14px monospace;padding:7px 11px;border:1px solid var(--line);color:var(--muted)}.dark .tags span{border-color:#50558a;color:#ced6eb}.service-row{display:grid;grid-template-columns:55px 1fr 1fr 25px;gap:20px;padding:27px 0;border-top:1px solid var(--line);text-decoration:none;align-items:start}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row p{font-size:16px;color:var(--muted)}.service-row:hover h3{color:var(--accent)}.service-row .row-arrow{font-size:22px;color:var(--accent)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:45px}.step{border-top:2px solid var(--line);padding-top:24px}.step .number{font:14px monospace;color:var(--accent);display:block;margin-bottom:20px}.step p{color:var(--muted);font-size:16px;margin-top:14px}.light-panel{background:#e3eaf1}.cta{padding:62px 0;background:linear-gradient(115deg,#d3e9db,#e3ecef)}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta h2{max-width:700px}.cta p{margin-top:15px;color:var(--muted)}.cta .button{flex-shrink:0}.footer{padding:52px 0 24px;background:var(--night);color:#edf1fa}.footer .brand{display:inline-flex;max-width:100%;padding:12px 18px;background:var(--white)}.footer-top{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:50px}.footer p{font-size:14px;color:#c5cce1;max-width:330px;margin-top:20px}.footer h3{font:14px monospace;letter-spacing:1px;text-transform:uppercase;color:#bbc6df;margin-bottom:14px}.footer a:not(.brand){font-size:14px;display:block;margin-bottom:6px;text-decoration:none}.footer a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #414779;margin-top:38px;padding-top:20px;color:#bbc6df;font-size:14px;display:flex;justify-content:space-between;gap:20px}.page-hero{background:linear-gradient(115deg,#dcece2,#e1e7f1);padding:65px 0 58px;border-bottom:1px solid var(--line)}.page-hero h1{max-width:950px;font-size:clamp(2.1rem,3.6vw,3.1rem)}.page-hero .intro{font-size:19px;color:var(--muted);max-width:730px;margin-top:25px}.breadcrumb{font-size:14px;color:var(--muted);margin-bottom:30px}.breadcrumb a{text-decoration:none}.breadcrumb span{margin:0 10px}.service-layout{display:grid;grid-template-columns:240px 1fr;gap:65px}.side-nav{align-self:start;position:sticky;top:124px}.side-nav p{font:14px monospace;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:18px}.side-nav a{font-size:14px;display:block;padding:11px 0;border-bottom:1px solid var(--line);text-decoration:none}.side-nav a:hover,.side-nav a[aria-current=page]{color:var(--accent)}.capability{padding-bottom:35px;margin-bottom:35px;border-bottom:1px solid var(--line)}.capability h2{font-size:27px}.capability>p{color:var(--muted);margin-top:16px}.capability-columns{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:24px}.capability h3{font:14px monospace;letter-spacing:1px;text-transform:uppercase;margin-bottom:12px;color:var(--accent)}.capability ul{padding-left:18px;margin:0;color:var(--muted);font-size:16px}.capability li{margin:8px 0}.scope-note{font-size:14px;color:var(--muted);border-left:2px solid var(--accent);padding-left:18px;margin-top:25px}.engagements{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.engagements article{background:var(--paper);padding:30px}.engagements p{margin-top:18px;color:var(--muted);font-size:16px}.clearance{border:1px solid var(--line);padding:30px;display:grid;grid-template-columns:1fr 1.6fr;gap:35px;margin-top:40px}.clearance p{color:var(--muted);font-size:16px}.contact-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:80px;align-items:start}.contact-form{display:grid;gap:23px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}label span{font-weight:400;color:var(--muted);margin-left:5px}input,select,textarea{display:block;width:100%;border:1px solid #8b96aa;padding:12px 14px;background:#fff;color:var(--ink);border-radius:0;min-height:48px}textarea{min-height:160px;resize:vertical}input::placeholder,textarea::placeholder{color:#667186}.field-help{font-size:14px;color:var(--muted);margin-top:7px}.contact-form .button{justify-self:start;min-width:190px}.contact-aside{border-left:1px solid var(--line);padding-left:35px}.contact-aside h2{font-size:27px;margin-bottom:20px}.contact-aside p{font-size:16px;color:var(--muted)}.contact-aside ol{padding-left:20px;font-size:16px;color:var(--muted)}.contact-aside li{padding:6px 0}.contact-details{border-top:1px solid var(--line);padding-top:22px;margin-top:25px}.contact-details a{display:block;font-size:16px;margin-bottom:8px}.bot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{font-size:16px;padding:15px 18px;background:#edf6f0;border-left:3px solid var(--accent)}.form-status:empty{display:none}.preview-note{font-size:14px;border:1px dashed #8b96aa;padding:12px 15px;color:var(--muted)}.form-summary{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:16px;line-height:1.7}.faq details{padding:24px 0;border-bottom:1px solid var(--line)}.faq summary{font-size:18px;cursor:pointer}.faq details p{max-width:760px;margin-top:15px;color:var(--muted);font-size:16px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.work-card{border-top:2px solid var(--accent);padding:28px;background:white}.work-card .eyebrow{margin-bottom:18px}.work-card h3{font-size:25px;margin-bottom:18px}.work-card p{font-size:16px;color:var(--muted)}.work-card strong{font-weight:600;color:var(--ink)}.work-card a{display:inline-block;margin-top:25px}.prose{max-width:800px}.prose h2{font-size:30px;margin:38px 0 18px}.prose p,.prose li{color:var(--muted)}[hidden]{display:none!important}
.light-list li{border-color:var(--line)}.light-list p{color:var(--muted)}.light-list span{color:var(--accent)}
.industry-nav.industry-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.industry-index .industry-link{display:flex;align-items:center;min-width:0}.industry-grid{display:grid;gap:32px}.industry-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:clamp(28px,4vw,56px);padding:32px;align-items:start}.industry-card>div{min-width:0}.industry-card .industry-heading h2{font-size:28px;text-wrap:balance}.industry-heading .eyebrow{align-items:baseline}.industry-heading .eyebrow:before{flex-shrink:0}.industry-body{max-width:65ch;overflow-wrap:anywhere}.industry-services{display:grid;gap:12px;margin-top:24px}.industry-services .text-link{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0;white-space:normal}.industry-services .text-link:after{flex-shrink:0;margin-left:0}.industry-inquiry{margin-top:28px}.industry-inquiry .text-link{margin:0;white-space:normal}
@media(max-width:1000px){.industry-nav.industry-index{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.industry-card{grid-template-columns:minmax(0,1fr);gap:24px}.industry-heading h2{max-width:30ch}}
@media(max-width:600px){.industry-nav.industry-index{grid-template-columns:minmax(0,1fr)}.industry-card{padding:24px}.industry-grid{gap:24px}}
@media(min-width:1500px){.hero{padding:95px 0 85px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.hero-grid{gap:35px}.hero h1{font-size:3rem}.nav{gap:18px}.nav a{font-size:14px}.system-panel{padding:24px 20px}.split{gap:40px}.contact-grid{gap:40px}.service-layout{grid-template-columns:200px 1fr;gap:35px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:76px}.brand-logo{width:180px}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:76px;padding:20px;background:var(--paper);border-bottom:1px solid var(--line);align-items:stretch;box-shadow:0 12px 20px #15156812}.nav.open{display:flex;flex-direction:column;gap:7px}.nav a{padding:10px;font-size:16px}.nav .button{margin-top:7px}.hero{padding:45px 0}.hero-grid{grid-template-columns:1fr;gap:40px}.hero h1{font-size:clamp(2.1rem,7vw,3rem);max-width:650px}.hero-copy{font-size:17px}.hero-foot{font-size:14px}.hero .system-panel{box-shadow:0 10px 25px #070b2429}.system-layer{min-height:63px}.system-stack{padding-block:22px}.system-panel-wrap{max-width:550px;width:100%}.markets{justify-content:start;gap:12px 22px;font-size:14px}.markets .label{width:100%}.section{padding:55px 0}.section-head{display:block;margin-bottom:30px}.section-head>p,.section-head>.text-link{margin-top:22px;display:inline-block}.problem-grid{grid-template-columns:1fr 1fr}.problem-card{padding:23px}.problem-card h3{font-size:21px}.split,.contact-grid{grid-template-columns:1fr;gap:35px}.service-row{grid-template-columns:30px 1fr 20px;gap:12px;padding:23px 0}.service-row p{grid-column:2;grid-row:2}.service-row .row-arrow{grid-column:3;grid-row:1}.service-row h3{font-size:22px}.steps{grid-template-columns:1fr;gap:25px}.step{padding-top:20px}.step .number{margin-bottom:12px}.cta .wrap{display:block}.cta .button{margin-top:25px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}.page-hero{padding:40px 0}.page-hero .intro{font-size:17px}.service-layout{grid-template-columns:1fr}.side-nav{position:static;display:flex;flex-wrap:wrap;gap:8px}.side-nav p{width:100%;margin-bottom:5px}.side-nav a{border:1px solid var(--line);font-size:14px;padding:7px 10px}.capability-columns{gap:25px}.engagements{grid-template-columns:1fr}.clearance{grid-template-columns:1fr;gap:18px;padding:25px}.contact-aside{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.work-grid{grid-template-columns:1fr}}
@media(max-width:430px){.problem-grid,.field-row,.capability-columns{grid-template-columns:1fr}.hero h1{font-size:2.3rem}.actions{align-items:stretch}.actions .button{gap:14px;padding:12px 16px}.panel-meta{font-size:14px;letter-spacing:0;flex-wrap:wrap;gap:10px}.layer-name{font-size:16px}.hero-foot{gap:12px}.hero-foot span+span{padding-left:12px}.problem-card{padding:24px}.work-card{padding:24px}.footer-top{gap:25px}.footer a:not(.brand){font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.industry-nav{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:36px}.industry-link{padding:10px 14px;border:1px solid var(--line);font-size:16px;text-decoration:none}.industry-link:hover{border-color:var(--accent);color:var(--accent)}.work-card .actions .text-link{white-space:normal}.work-card h2{font-size:27px}.resource-actions{margin-top:0;margin-bottom:35px}.project-details{border:1px solid var(--line);padding:18px}.project-details summary{cursor:pointer;font-weight:600}.project-details summary span{font-weight:400;color:var(--muted)}.details-fields{display:grid;gap:23px;margin-top:23px}.print-only{display:none}.faq>h2{margin-top:45px}
@media(min-width:761px) and (max-width:1000px){html{scroll-padding-top:160px}.side-nav{top:160px}.header-inner{flex-wrap:wrap;justify-content:center;padding:10px 0;gap:12px}.nav{justify-content:center;flex-wrap:wrap;width:100%;padding-bottom:8px}}
@media print{body{background:#fff;color:#111;font-size:11pt}.site-header,.footer,.skip,.cta,.resource-actions,.button,.menu-toggle{display:none!important}.wrap{width:100%;max-width:none}.section,.page-hero{padding:18px 0}.hero,.section,.page-hero,.market-band,.problem-card{background:#fff;color:#111}.hero{--ink:#111;--muted:#333;--line:#aaa}.hero h1 em{color:#111}.work-grid{gap:16px}.work-card{break-inside:avoid;padding:16px}.work-card h2{font-size:17pt}.work-card p,.prose p,.prose li{color:#222}.print-only{display:block}.faq details>*{display:block}.faq details{break-inside:avoid}h1{font-size:28pt!important}h2{font-size:20pt!important}}
.report-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:35px 0}.report-metrics article{border:1px solid var(--line);padding:20px}.report-metrics p{font-size:14px;color:var(--muted);margin-top:10px}.report-section{margin-top:40px}.report-section h2{font-size:27px;margin-bottom:20px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:16px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}thead{background:#edf6f0}tbody th{font-weight:400;overflow-wrap:anywhere}@media(max-width:760px){.report-metrics{grid-template-columns:1fr 1fr}}
.capability-hero{background:linear-gradient(115deg,#12134f,#193b46);color:#f3f6ff}.capability-hero .intro{color:#c9d4e5;max-width:850px}.capability-hero .eyebrow:before{background:var(--highlight)}.capability-card{display:flex;flex-direction:column;scroll-margin-top:120px;background:#f7faf8;border:1px solid var(--line);border-top:3px solid var(--accent)}.capability-card h3{font:14px monospace;text-transform:uppercase;letter-spacing:1px;color:var(--accent);margin-top:24px}.capability-card ul{padding-left:18px;margin:12px 0 0;font-size:16px;color:var(--muted)}.capability-card li+li{margin-top:7px}.capability-outputs{background:#e5eee9;padding:0 20px 20px;margin:24px 0 0}.capability-card .text-link{align-self:start;white-space:normal;margin-top:auto;padding-top:24px}.dark .step .number{color:var(--highlight)}.dark .step{border-color:#50558a}.dark .step p{color:#c5cce1}
@media print{.capability-hero{background:#fff;color:#111}.capability-hero .intro,.capability-card ul{color:#222}.capability-grid{display:block}.capability-card{margin-bottom:18px}.capability-card h3{color:#222}.capability-outputs{background:none;padding:0;margin-top:0}.dark,.light-panel{background:#fff;color:#111}.dark .step p,.dark .step .number,.dark .eyebrow{color:#222}.industry-nav{display:none}}
