/* Shared fluid layout: bounded on large displays, usable at every viewport width. */
:root{--content-width:1480px;--gutter:clamp(20px,4vw,88px)}
.container{width:min(var(--content-width),calc(100% - var(--gutter)*2));margin-inline:auto}
img{max-width:100%}main,section,article,.hero-copy,.page-hero>div{min-width:0}
.header-inner{gap:24px}.header nav{gap:clamp(15px,1.7vw,28px)}.brand{flex-shrink:0}.brand>span{width:130px;font-size:9px;letter-spacing:.09em}
.premium-hero{min-height:0;background:radial-gradient(ellipse at 80% 40%,#3a5136 0,transparent 58%),#1b2921}
.premium-hero-inner{min-height:clamp(650px,75vh,920px);display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(25px,4vw,80px);padding-block:72px 125px}
.premium-hero .hero-copy{max-width:none}.premium-hero h1{font-size:clamp(48px,4.7vw,88px);line-height:1.06;letter-spacing:-.06em;overflow-wrap:normal}
.premium-hero .hero-copy>p{font-size:clamp(15px,1.05vw,18px);max-width:42ch;line-height:1.85}.premium-hero .eyebrow{font-size:10px;letter-spacing:.18em}
.scene-shade{background:linear-gradient(90deg,#19251e55,transparent)}.hero-finegrid{opacity:.6}
.engineering-board{position:relative;min-width:0;border:1px solid #aec68e38;background:#c3d6ab05;border-radius:3px;padding:22px 22px 18px;box-shadow:0 30px 90px #10201740}
.board-label,.board-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:.12em;color:#b3c59c}.board-label{border-bottom:1px solid #aec68e24;padding-bottom:16px}.board-dot{height:7px;width:7px;border-radius:50%;background:#c2dc9d;box-shadow:0 0 0 5px #c2dc9d0c;flex-shrink:0}.board-drawing{width:100%;height:auto;display:block}.board-caption{padding-top:12px;border-top:1px solid #aec68e24;font-size:8px;line-height:1.7;flex-wrap:wrap}
.hero-bottom{bottom:29px}.challenge-section{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);gap:clamp(30px,6vw,100px)}.challenge-content{min-width:0}.section-nav{flex-wrap:wrap}.page-hero h1{font-size:clamp(38px,4.1vw,70px);line-height:1.08}.section-top h2,.challenge-intro h2{font-size:clamp(34px,3.3vw,54px)}
.page-solutions .page-hero,.page-engineering-intelligence .page-hero{padding-inline:max(var(--gutter),calc((100% - var(--content-width))/2))}
.product-grid.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.capability-card:last-child:nth-child(3n + 1){grid-column:auto}
.inspection-cover{background:#213528;padding:26px;border:1px solid #39563b;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.inspection-cover img{width:100%}.inspection-cover>span{color:#c1d5a9;font-size:9px;letter-spacing:.18em}
.inspection-portfolio{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px);border-block:1px solid #ccd8c0;padding-block:58px}.inspection-portfolio h2{font-size:clamp(32px,3vw,48px);line-height:1.12;margin:20px 0}.inspection-portfolio p{margin-block:20px}.inspection-portfolio .button{margin-top:22px}.roadmap-note{background:#e9efdf;padding:34px}.roadmap-note h3{font-size:25px;margin:24px 0}.roadmap-note p{font-size:13px}.clients-development{padding:65px 30px 85px;text-align:center;background:#eaf0e2;border:1px solid #d6e0cb;margin-bottom:85px}.clients-development .development-status{justify-content:center}.clients-development h2{font-size:clamp(34px,4vw,60px);line-height:1.1;margin:25px 0}.clients-development p{max-width:48ch;margin:0 auto 30px}.development-emblem{display:grid;place-items:center;width:70px;height:70px;border:1px solid #bacba8;border-radius:50%;margin:0 auto 24px}.development-emblem .icon{width:30px;height:30px}
@media(min-width:1920px){:root{--content-width:1640px}.premium-hero-inner{min-height:820px}.premium-hero h1{font-size:94px}.premium-hero .hero-copy>p{font-size:19px}}
@media(min-width:2560px){:root{--content-width:1760px}.premium-hero-inner{min-height:880px}.premium-hero h1{font-size:102px}}
@media(max-width:1100px){.brand>span{display:none}.header nav{gap:17px}.premium-hero h1{font-size:clamp(43px,5.4vw,64px)}.engineering-board{padding:16px}.board-caption{font-size:7px}.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.header-inner{height:80px}.header nav{gap:0}.premium-hero-inner{grid-template-columns:1fr;gap:34px;padding-block:48px 95px;min-height:0}.premium-hero h1{font-size:clamp(42px,8.5vw,66px);margin-block:24px}.premium-hero .hero-copy>p{max-width:52ch}.engineering-board{max-width:580px;width:100%;margin-inline:auto}.board-drawing{max-height:340px;object-fit:contain}.hero-bottom{bottom:20px}.hero-bottom>span{max-width:50%;font-size:7px}.hero-bottom>a{font-size:7px}.challenge-section{grid-template-columns:1fr;gap:35px}.challenge-intro{position:static}.challenge-intro p{max-width:45ch}.product-grid.portfolio-grid,.inspection-portfolio{grid-template-columns:1fr}.page-hero{grid-template-columns:1fr}.page-hero h1{font-size:clamp(35px,7vw,52px)}.inspection-cover img{max-height:300px}.inspection-portfolio{padding-block:35px}.section-top h2{font-size:36px}.problem-ticker>.container{font-size:8px;gap:13px}.clients-development{padding-inline:20px}.problem-footer>.container{flex-wrap:wrap;gap:20px}}
@media(max-width:500px){.capability-grid{grid-template-columns:1fr}.premium-hero h1{font-size:clamp(36px,10.7vw,52px)}.premium-hero .eyebrow{font-size:8px}.engineering-board{padding:14px}.board-label{font-size:8px}.board-caption{font-size:6px}.hero-bottom>a{gap:10px}.roadmap-note{padding:24px}.contact-email{overflow-wrap:anywhere}.challenge summary{gap:14px}.challenge-title strong{font-size:clamp(22px,6vw,29px)}.challenge-content{grid-template-columns:1fr}.footer-main{gap:28px}.brand img{width:150px}}
/* SiteProof: evidence workspace illustrations and two accessible workflow views. */
.sp-workspace{border:1px solid #c6d3ba;border-radius:12px;background:#fff;box-shadow:0 22px 70px #263b2510;overflow:hidden}.sp-window{background:#233529;color:#e7efd9;padding:20px 23px;display:flex;align-items:center;justify-content:space-between;gap:15px}.sp-wordmark{font-size:24px;font-weight:700;letter-spacing:-.045em}.sp-wordmark>span{display:block;font-size:10px;letter-spacing:.07em;font-weight:400;color:#becdad;margin-top:4px}.sp-demo-label{font-size:7px;letter-spacing:.12em;color:#b8c9a4}.sp-workspace-body{padding:25px}.sp-record-path{display:flex;flex-wrap:wrap;gap:10px;font-size:10px;margin-bottom:25px;color:#63735a}.sp-record-path b{color:#9cb18a}.sp-mini-record{display:flex;align-items:center;gap:13px;border-top:1px solid #e0e6da;padding:22px 0}.sp-record-icon{display:grid;place-items:center;background:#edf3e6;border:1px solid #d8e3cd;border-radius:8px;width:35px;height:39px;font-size:11px;color:#6a8554;flex-shrink:0}.sp-mini-record>div{flex:1;min-width:0}.sp-mini-record strong{display:block;font-size:13px}.sp-mini-record small{display:block;color:#74816b;font-size:9px;line-height:1.6;margin-top:5px}.sp-record-status{font-size:8px;background:#e8f1dd;padding:7px 10px;border-radius:20px;color:#486c2d;white-space:nowrap}.sp-record-status.amber{background:#f8f0dd;color:#8b6b23}.sp-evidence-strip{display:flex;align-items:center;gap:8px;background:#f4f6f0;border:1px solid #e2e8d9;padding:13px;border-radius:5px;font-size:8px;color:#728167}.sp-evidence-strip i{width:29px;height:29px;border:1px solid #b7c9a6;background:linear-gradient(145deg,transparent 48%,#b7c9a6 49%,#b7c9a6 51%,transparent 52%),#e4ecd9}.sp-evidence-strip strong{margin-left:auto;font-weight:400}.sp-review-line{display:flex;gap:10px;font-size:9px;line-height:1.7;align-items:center;margin-top:20px;color:#6c7b60}
.sp-tabs{display:flex;border:1px solid #c8d4bd;background:#e9efdf;border-radius:7px;padding:5px;gap:5px;margin-bottom:0}.sp-tab{flex:1;text-align:left;padding:18px 22px;font-size:13px;background:transparent;border-radius:4px;color:#67775b}.sp-tab[aria-selected=true]{background:#25382b;color:#f3f7eb;box-shadow:0 3px 8px #1d292218}.sp-workflow-panel{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);padding:48px;border:1px solid #d3ddca;border-top:0;background:#f0f4e9}.sp-workflow-panel[hidden]{display:none}.sp-panel-kicker{font-size:9px;letter-spacing:.13em;color:#6d8556;font-weight:700;line-height:1.7}.sp-panel-copy h3{font-size:clamp(31px,3vw,43px);line-height:1.12;letter-spacing:-.05em;margin:20px 0}.sp-panel-copy p{font-size:14px}.sp-points{padding-left:18px;margin-block:24px;font-size:13px;color:#4f6048;line-height:1.8}.sp-points li+li{margin-top:7px}.sp-outcome{border-top:1px solid #ccd8c0;padding-top:19px;display:grid;gap:9px;font-size:12px;line-height:1.7;color:#596b4f}.sp-outcome strong{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#3f5634}
.sp-checklist-visual,.sp-approval-visual{background:#fff;border:1px solid #cbd8bf;border-radius:10px;padding:27px;align-self:center;box-shadow:0 20px 50px #283f2310}.sp-visual-label{font-size:8px;letter-spacing:.15em;color:#7b8c6c;margin-bottom:22px}.sp-visual-title{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid #dce4d4}.sp-visual-title strong{font-size:16px;letter-spacing:-.03em}.sp-visual-title>span{font-size:8px;color:#6e845a;background:#edf3e5;padding:7px;border-radius:3px}.sp-check-row{display:flex;gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid #edf0e8}.sp-check{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#e7f1da;color:#5a8137;font-size:13px;flex-shrink:0}.sp-check-row b{font-size:11px}.sp-check-row small{display:block;font-size:9px;color:#7b896e;margin-top:5px;line-height:1.7}.sp-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.sp-photo-grid>div{border:1px solid #d7e2cc;background:#edf3e5;padding:10px;min-width:0}.sp-photo-grid svg{width:100%;height:80px;stroke:#809866;stroke-width:1.5;fill:none}.sp-photo-grid span{font-size:8px;color:#70805e}.sp-record-footer{padding-top:20px;font-size:10px;letter-spacing:.03em;color:#627a4e}.sp-review-stages{display:grid;gap:0;margin-top:15px}.sp-review-stages>div{position:relative;padding:17px 13px 17px 45px;border-bottom:1px solid #e3e9da}.sp-review-stages>div>span{position:absolute;left:10px;top:18px;font-size:10px;color:#89a16e}.sp-review-stages b{font-size:12px;display:block}.sp-review-stages small{font-size:9px;display:block;margin-top:7px;line-height:1.6;color:#7a886d}.sp-review-stages .sp-current-stage{background:#edf4e4;border-left:2px solid #83a960}.sp-decision-options{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.sp-decision-options>span{font-size:9px;padding:9px;border:1px solid #c5d9b2;background:#edf4e5;border-radius:4px;color:#597d3b}.sp-decision-options>span:nth-child(2){border-color:#e4d6ad;background:#fbf6e9;color:#8d742e}.sp-decision-options>span:nth-child(3){border-color:#e3c9bf;background:#faf0ec;color:#9c6c59}.sp-correction-loop{font-size:9px;line-height:1.8;background:#f4f6f0;padding:13px;margin-top:15px;color:#748367}.sp-review-footnote{font-size:9px;line-height:1.7;margin-top:15px}.sp-sector-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:20px}.sp-sector-grid article{border:1px solid #d2ddc7;padding:36px;background:#edf2e5}.sp-sector-grid h3{font-size:29px;letter-spacing:-.04em;margin:17px 0}.sp-sector-grid p{font-size:14px}.sp-sector-grid .text-link{margin-top:22px}.sp-benefits .feature-item{border-top:2px solid #b8cd9f;padding-top:22px}
@media(max-width:1100px){.sp-workflow-panel{padding:32px;gap:30px}.sp-workspace-body{padding:20px}.sp-mini-record{flex-wrap:wrap}.sp-demo-label{font-size:6px}.sp-window{padding:18px}.sp-record-status{font-size:7px}.sp-checklist-visual,.sp-approval-visual{padding:21px}}
@media(max-width:800px){.sp-workflow-panel,.sp-sector-grid{grid-template-columns:1fr}.sp-tab{font-size:11px;padding:16px 12px}.sp-workflow-panel{padding:27px}.sp-sector-grid article{padding:27px}.sp-workspace{max-width:580px;width:100%;margin:auto}.sp-demo-label{font-size:8px}.sp-mini-record{flex-wrap:nowrap}.sp-record-status{font-size:8px}.sp-visual-title{flex-wrap:wrap}}
@media(max-width:420px){.sp-tabs{flex-direction:column}.sp-tab{padding:14px}.sp-workflow-panel{padding:20px}.sp-mini-record{gap:8px}.sp-mini-record strong{font-size:11px}.sp-mini-record small{font-size:8px}.sp-record-status{font-size:7px;padding:6px}.sp-evidence-strip strong{max-width:55px;line-height:1.6}.sp-demo-label{font-size:6px}.sp-panel-copy h3{font-size:32px}}
