@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@600;700&display=swap";:root{--navy-950: #0b1120;--navy-900: #0f172a;--navy-800: #1e293b;--blue-700: #00205b;--blue-600: #003087;--blue-100: #ebf2fa;--cyan-500: #06b6d4;--cyan-100: #e0f7fb;--emerald: #0d7a57;--ink: #0f172a;--muted: #475569;--line: #e2e8f0;--surface: #f8fafc;--white: #ffffff}@layer base{html{scroll-behavior:smooth}body{font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--surface)}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}::selection{background:var(--cyan-500);color:var(--navy-950)}}.site-shell{overflow:hidden}.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}.section{padding-block:88px}.header{position:relative;z-index:50;background:var(--white)}.topbar{background:var(--navy-950);color:#aab8c7;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.topbar__inner{height:34px;display:flex;align-items:center;justify-content:space-between}.vertical-switcher{display:flex;height:100%}.vertical-switcher a{display:flex;align-items:center;gap:7px;padding-inline:18px;border-inline-start:1px solid #ffffff18;transition:.2s}.vertical-switcher a:hover{color:var(--white);background:#ffffff0a}.nav-wrap{height:82px;display:flex;align-items:center;gap:40px}.brand{display:inline-flex;align-items:center;gap:14px;flex-shrink:0}.brand__plate{display:block;width:118px;height:50px;overflow:hidden}.brand__plate img{width:100%;height:100%;object-fit:contain}.brand__descriptor{max-width:120px;padding-left:13px;border-left:1px solid var(--line);color:#64748b;font-size:10px;line-height:1.35;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.brand--light .brand__plate{background:var(--white);padding:4px 8px;border-radius:4px;width:126px}.brand--light .brand__descriptor{color:#64748b}.nav{display:flex;align-items:center;gap:28px;margin-left:auto}.nav a{color:#435469;font-size:13px;font-weight:700;transition:.2s}.nav a:hover{color:var(--blue-600)}.nav-actions{display:flex;align-items:center;gap:10px}.btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 22px;border-radius:4px;font-size:13px;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn--compact{min-height:43px;padding-inline:15px;font-size:12px}.btn--primary{background:var(--blue-600);color:var(--white)}.btn--primary:hover{background:var(--blue-700)}.btn--ghost{color:#33485e;background:transparent}.btn--light{background:var(--white);color:var(--navy-950)}.btn--outline-light{border:1px solid #ffffff40;color:var(--white);background:#ffffff08}.btn--cyan{background:var(--cyan-500);color:var(--navy-950)}.client-menu{position:relative}.client-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:250px;padding:8px;background:var(--white);border:1px solid var(--line);border-radius:6px;box-shadow:0 12px 30px #07192d1a}.client-dropdown a{display:flex;gap:12px;padding:12px;border-radius:7px;color:var(--ink)}.client-dropdown a:hover{background:var(--surface)}.client-dropdown span{display:grid;gap:2px}.client-dropdown strong{font-size:12px}.client-dropdown small{color:var(--muted);font-size:10px}.menu-toggle{display:none;color:var(--navy-950)}.hero{position:relative;background:var(--surface);color:var(--ink);padding:84px 0 0;min-height:760px;border-bottom:1px solid var(--line)}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.55;background-image:linear-gradient(#dce5ee 1px,transparent 1px),linear-gradient(90deg,#dce5ee 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(to right,black,transparent 78%);mask-image:linear-gradient(to right,black,transparent 78%)}.hero-glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:.18}.hero-glow--one{width:500px;height:500px;right:5%;top:2%;background:#bfdbfe;opacity:.28}.hero-glow--two{width:320px;height:320px;left:-8%;bottom:10%;background:#a5f3fc;opacity:.18}.hero__intro{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:60px;align-items:end}.section-label{display:inline-flex;align-items:center;gap:8px;color:var(--blue-600);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.15em;margin-bottom:22px}.section-label:before{content:"";width:28px;height:1px;background:currentColor}.section-label--dark{color:#65d9e7}.hero .section-label--dark{color:var(--blue-600)}.hero h1{font-size:clamp(43px,4.15vw,65px);line-height:1.08;letter-spacing:-.04em;font-weight:900;max-width:830px}.hero h1 em{font-style:normal;color:var(--blue-600)}.hero__copy>p{margin-top:21px;color:var(--muted);font-size:15px;line-height:1.65;max-width:740px}.hero__actions{display:flex;gap:12px;margin-top:34px}.hero__proof{display:grid;gap:12px;margin-bottom:7px;color:#475569;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.hero__proof span{display:flex;align-items:center;gap:6px}.hero__proof svg{color:var(--cyan-500)}.hero-products{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:47px}.hero-switch{position:relative;z-index:2;margin-top:42px}.hero-switch__controls{display:grid;grid-template-columns:1fr 1fr;width:min(620px,100%);margin-bottom:10px;border:1px solid var(--line);background:var(--white)}.hero-switch__controls button{min-height:62px;display:flex;align-items:center;gap:11px;padding:11px 17px;color:#64748b;text-align:left;border-right:1px solid var(--line);transition:.2s}.hero-switch__controls button:last-child{border-right:0}.hero-switch__controls button.active{color:var(--blue-600);background:var(--blue-100);box-shadow:inset 0 -3px 0 var(--blue-600)}.hero-switch__controls button:last-child.active{color:#087f8e;background:var(--cyan-100);box-shadow:inset 0 -3px 0 var(--cyan-500)}.hero-switch__controls button span{display:grid;gap:3px}.hero-switch__controls button strong{font-size:13px}.hero-switch__controls button small{font-size:11px;color:#64748b}.hero-product{min-width:0;height:342px;display:grid;grid-template-columns:.82fr 1.18fr;overflow:hidden;border:1px solid #ffffff24;border-radius:8px}.hero-product--single{grid-template-columns:.75fr 1.25fr;min-height:400px;height:auto}.hero-product--public{background:#0b1628;border:1px solid #1E3A5F}.hero-product--bim{background:#071322;border:1px solid #0E3B43}.hero-product__copy{position:relative;z-index:4;padding:30px 0 27px 30px}.hero-product__eyebrow{display:flex;align-items:center;gap:8px;color:#cbd5e1;font-size:11px;letter-spacing:.08em;font-weight:800;text-transform:uppercase}.hero-product--public .hero-product__eyebrow svg{color:#60a5fa}.hero-product--bim .hero-product__eyebrow svg{color:var(--cyan-500)}.hero-product h2{margin-top:22px;font-size:25px;line-height:1.16;letter-spacing:-.03em;font-weight:800;color:#fff}.hero-product ul{display:grid;gap:10px;margin-top:23px;color:#e2e8f0;font-size:13px}.hero-product li{display:flex;align-items:center;gap:7px}.hero-product--public li svg{color:var(--emerald)}.hero-product--bim li svg{color:var(--cyan-500)}.hero-product__copy>a{display:inline-flex;align-items:center;gap:7px;color:var(--white);font-size:13px;font-weight:800;margin-top:28px;text-decoration:underline;text-underline-offset:4px}.hero-product__screen{position:relative;min-width:0;height:100%}.hero-product__screen .product-screen{width:122%;height:262px;top:43px;left:13px;right:auto;bottom:auto;transform:none;box-shadow:none}.hero-product--bim .hero-product__screen .product-screen{left:12px}.product-screen{position:absolute;overflow:hidden;border-radius:6px;border:1px solid #ffffff24;box-shadow:0 18px 42px #0000002b}.product-screen--public{width:76%;height:290px;left:0;top:25px;background:#f3f6f9;transform:rotateY(4deg) rotate(-1deg);z-index:2}.product-screen--bim{width:75%;height:275px;right:0;bottom:17px;background:#0d2136;transform:rotateY(-4deg) rotate(1deg);z-index:3}.screen-bar{height:36px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;background:var(--white);border-bottom:1px solid #e0e7ed;color:var(--navy-900)}.screen-bar--dark{background:#102a42;color:#d7e5f1;border-color:#ffffff10}.screen-logo{display:flex;gap:6px;align-items:center;font-size:11px;font-weight:800}.screen-dots{display:flex;gap:4px}.screen-dots i{width:5px;height:5px;border-radius:50%;background:#afbdc9}.screen-grid{display:grid;grid-template-columns:40px 1fr;height:calc(100% - 36px)}.screen-sidebar{padding-top:18px;background:var(--navy-900);display:flex;flex-direction:column;align-items:center;gap:16px}.screen-sidebar span{width:13px;height:3px;border-radius:4px;background:#ffffff45}.screen-sidebar .active{background:var(--cyan-500)}.screen-content{padding:16px 18px;color:var(--ink)}.screen-heading{display:flex;align-items:center;justify-content:space-between}.screen-heading>div{display:grid;gap:3px}.screen-heading small{color:var(--blue-600);font-size:10px;font-weight:800}.screen-heading strong{font-size:12px}.status-pill{display:flex;gap:4px;align-items:center;background:#0d7a571f;color:var(--emerald);border-radius:3px;padding:3px 8px;font-size:10.5px;font-weight:800}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px}.metric-row>div{background:var(--white);padding:10px;border:1px solid #e6ebef;border-radius:5px;display:grid;gap:3px}.metric-row small{font-size:10px;color:var(--muted);display:block;font-weight:600}.metric-row strong{font-family:JetBrains Mono,monospace;font-size:13px;font-variant-numeric:tabular-nums;color:#003087}.metric-row span{font-size:9.5px;color:#64748b}.chart-card{margin-top:8px;height:92px;background:var(--white);border:1px solid #e6ebef;border-radius:5px;padding:8px 10px}.chart-title{display:flex;justify-content:space-between;font-size:10.5px;color:#334155}.chart-title span{font-weight:700}.chart-title small{color:#8d99a6}.bar-chart{height:58px;display:flex;align-items:end;gap:9px;padding:8px 5px 0;border-bottom:1px solid #dfe5ea}.bar-chart i{flex:1;background:linear-gradient(var(--cyan-500),var(--blue-600));border-radius:2px 2px 0 0;opacity:.85}.bim-stage{position:relative;height:calc(100% - 36px);overflow:hidden;background:radial-gradient(circle at 40% 40%,#174464,#09192b 65%)}.bim-stage:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(#63cadd0c 1px,transparent 1px),linear-gradient(90deg,#63cadd0c 1px,transparent 1px);background-size:25px 25px;transform:perspective(280px) rotateX(65deg) scale(1.4);transform-origin:bottom}.building-model{position:absolute;left:12%;top:17%;width:47%;height:65%;transform:skewY(-5deg)}.building-floor{position:absolute;width:100%;height:32%;border:1px solid #2be3eb99;background:#17bfd41c;box-shadow:inset 0 0 25px #19cad51e}.floor-1{bottom:0}.floor-2{bottom:34%;width:88%;left:6%}.floor-3{bottom:68%;width:70%;left:15%}.building-core{position:absolute;width:16%;height:95%;left:39%;bottom:0;border:1px solid #62ebef70;background:#2cd0da1f}.building-floor:before,.building-floor:after{content:"";position:absolute;inset-block:0;width:1px;background:#36dce660}.building-floor:before{left:30%}.building-floor:after{right:30%}.model-pin{position:absolute;width:8px;height:8px;background:var(--cyan-500);border-radius:50%;box-shadow:0 0 0 5px #08bcd433,0 0 15px #08bcd4}.model-pin--one{top:42%;left:25%}.model-pin--two{top:69%;right:13%}.model-line{position:absolute;height:2px;background:var(--cyan-500);transform-origin:left}.model-line--one{width:70%;left:9%;top:28%;transform:rotate(19deg)}.model-line--two{width:62%;left:22%;bottom:24%;transform:rotate(-13deg)}.asset-panel{position:absolute;width:37%;right:5%;top:12%;padding:12px;border:1px solid #ffffff18;background:#0a1b2dcc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:6px;display:grid}.asset-head{display:flex;justify-content:space-between;color:#94a3b8;font-size:10px;font-weight:700}.asset-head i{color:#56e3c1;font-style:normal}.asset-panel>strong{margin-top:6px;font-size:13px;color:#fff;letter-spacing:-.01em}.asset-panel>small{margin-top:2px;color:#94a3b8;font-size:10px}.telemetry{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:9px}.telemetry>div{background:#ffffff08;padding:7px;display:grid;gap:3px}.telemetry span{font-size:9.5px;color:#94a3b8;display:block}.telemetry strong{font-family:JetBrains Mono,monospace;font-size:13px;color:var(--cyan-500);font-variant-numeric:tabular-nums}.work-order{display:flex;align-items:center;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid #ffffff18;color:#cbd5e1;font-size:10.5px}.work-order svg{color:var(--cyan-500)}.work-order b{margin-left:auto;color:var(--white)}.visual-label{position:absolute;z-index:5;display:flex;align-items:center;gap:5px;color:#b9c7d5;font-size:7px;text-transform:uppercase;letter-spacing:.1em}.visual-label--public{top:7px;left:5px}.visual-label--bim{bottom:0;right:7px}.orbit-badge{position:absolute;z-index:7;left:42%;top:45%;width:118px;display:flex;align-items:center;gap:8px;padding:9px 11px;background:var(--white);color:var(--navy-950);border-radius:7px;box-shadow:0 15px 35px #00000045;font-size:7px;line-height:1.5}.orbit-badge svg{color:var(--blue-600)}.hero-stats{position:relative;z-index:2;margin-top:30px;min-height:88px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.hero-stats>div{display:flex;align-items:center;gap:16px;padding-inline:32px;border-right:1px solid var(--line)}.hero-stats>div:first-child{padding-left:0}.hero-stats>div:last-child{border-right:0}.hero-stats strong{font-family:JetBrains Mono,monospace;font-size:24px;color:var(--blue-600);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:800}.hero-stats span{font-size:12px;line-height:1.45;color:#475569;max-width:200px;font-weight:500}.intro{padding-bottom:60px}.section-head{display:flex;justify-content:space-between;gap:80px;align-items:end}.section-head h2,.connection__head h2,.trust__intro h2{font-size:clamp(35px,3.5vw,49px);line-height:1.12;letter-spacing:-.04em;font-weight:700}.section-head>p{color:var(--muted);line-height:1.8;max-width:450px;font-size:14px;padding-bottom:5px}.platform{padding-block:88px}.platform--public{background:var(--surface)}.platform--bim{background:var(--white);color:var(--ink);border-block:1px solid var(--line)}.platform__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:center}.platform__grid--reverse{grid-template-columns:1.12fr .88fr}.product-title{display:flex;align-items:center;gap:13px;margin-bottom:28px}.product-icon{width:46px;height:46px;border-radius:8px;display:grid;place-items:center;background:var(--blue-600);color:var(--white)}.product-icon svg{width:23px}.product-title>div{display:grid;gap:2px}.product-title small{color:#64748b;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.product-title strong{font-size:16px;letter-spacing:.1em}.product-title--cyan .product-icon{background:var(--cyan-500);color:var(--navy-950)}.product-title--cyan small{color:#7890a5}.platform__copy h2{font-size:clamp(34px,3.2vw,47px);line-height:1.13;letter-spacing:-.04em;font-weight:700}.platform__copy .lead{color:var(--muted);font-size:14px;line-height:1.8;margin-top:24px}.platform--bim .platform__copy .lead{color:var(--muted)}.pain-note{border-left:2px solid var(--blue-600);margin:28px 0 32px;padding:5px 0 5px 18px}.pain-note span{color:var(--blue-600);text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.1em}.pain-note p{margin-top:6px;color:#526578;font-size:12px;line-height:1.65}.pain-note--dark{border-color:var(--cyan-500)}.pain-note--dark span{color:var(--cyan-500)}.pain-note--dark p{color:var(--muted)}.feature-stack{display:grid;gap:12px}.feature-card{min-height:132px;display:grid;grid-template-columns:40px 46px 1fr;align-items:center;gap:20px;padding:24px;background:var(--white);border:1px solid var(--line);border-radius:6px;transition:.25s}.feature-card:hover{transform:translate(-6px);border-color:#b8d4ec;box-shadow:0 20px 45px #0c29460c}.feature-number{align-self:start;color:#94a3b8;font-size:12px;font-weight:800}.feature-icon{color:var(--blue-600)}.feature-card h3,.bim-feature h3,.journey h3,.trust__grid h3,.resource-card h3{font-size:16px;letter-spacing:-.02em;font-weight:800}.feature-card p,.bim-feature p{color:var(--muted);font-size:12px;line-height:1.65;margin-top:7px}.feature-bim-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bim-feature{min-height:225px;padding:28px;border:1px solid var(--line);background:var(--surface);border-radius:6px;transition:.25s}.bim-feature:hover{border-color:#67d9e9;background:var(--white);transform:translateY(-4px)}.bim-feature>span{display:grid;place-items:center;width:42px;height:42px;color:var(--cyan-500);background:#08bcd412;border-radius:7px;margin-bottom:34px}.bim-feature>span svg{width:20px}.bim-feature p{color:var(--muted)}.connection{background:var(--white)}.connection__head{text-align:center;max-width:850px;margin:0 auto 68px}.connection__head h2 em{font-style:normal;color:var(--blue-600)}.connection__head>p{max-width:680px;margin:22px auto 0;color:var(--muted);line-height:1.8;font-size:14px}.journey{display:grid;grid-template-columns:1fr 40px 1fr 40px 1fr 40px 1fr;align-items:stretch}.journey article{position:relative;background:var(--white);border:1px solid var(--line);border-radius:6px;padding:28px 22px;min-height:255px;box-shadow:0 1px 4px #0000000a}.journey__number{position:absolute;right:16px;top:14px;color:#d5dde4;font-size:10px;font-weight:800}.journey__icon{width:42px;height:42px;border-radius:7px;display:grid;place-items:center;background:var(--blue-100);color:var(--blue-600);margin-bottom:31px}.journey__icon--cyan{background:var(--cyan-100);color:#079bad}.journey small{font-size:10px;color:var(--blue-600);letter-spacing:.08em;font-weight:800;text-transform:uppercase}.journey h3{margin-top:8px;font-size:17px;font-weight:800;color:#0f172a}.journey p{margin-top:11px;color:var(--muted);font-size:12.5px;line-height:1.6}.journey__connector{display:grid;place-items:center;color:#b6c3ce}.journey__connector svg{width:18px}.connection__result{display:flex;align-items:center;justify-content:center;gap:15px;max-width:820px;padding:20px 28px;margin:36px auto 0;border-radius:8px;background:#0b1120;border:1px solid #1E293B;color:#cbd5e1;font-size:13.5px;line-height:1.6}.connection__result svg{color:var(--cyan-500);flex:0 0 auto}.connection__result strong{color:var(--white)}.audience{background:var(--surface)}.section-head--center{align-items:center}.audience-list{margin-top:55px;border-top:1px solid #cfd9e1}.audience-row{display:grid;grid-template-columns:1.15fr 1.4fr .65fr;gap:30px;align-items:center;min-height:78px;border-bottom:1px solid #d9e1e7;font-size:12px}.audience-row strong{font-size:13px}.audience-row>span:nth-child(2){color:var(--muted)}.audience-row--head{min-height:46px;color:#64748b;text-transform:uppercase;font-weight:800;font-size:11px;letter-spacing:.08em}.solution-tag{justify-self:start;padding:5px 12px;border-radius:4px;font-size:11px;font-weight:800}.solution-tag--public{color:var(--blue-700);background:var(--blue-100)}.solution-tag--bim{color:#087f8e;background:var(--cyan-100)}.solution-tag--both{color:var(--white);background:linear-gradient(100deg,var(--blue-600),#079eb3)}.comparison{background:var(--white)}.comparison-table{margin-top:48px;border:1px solid var(--line);border-bottom:0}.comparison-row{display:grid;grid-template-columns:.65fr 1fr 1fr;min-height:72px;border-bottom:1px solid var(--line)}.comparison-row>*{display:flex;align-items:center;padding:16px 20px;border-right:1px solid var(--line);font-size:13px;line-height:1.5}.comparison-row>*:last-child{border-right:0}.comparison-row>span{color:#475569;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;background:var(--surface)}.comparison-row>strong{color:#334155;font-weight:600}.comparison-row--head{min-height:58px;background:var(--navy-950);color:var(--white)}.comparison-row--head>span{color:#94a3b8;background:transparent}.comparison-row--head>strong{gap:8px;color:var(--white);font-size:13px;text-transform:uppercase;letter-spacing:.05em;font-weight:800}.comparison-row--head>strong:first-of-type svg{color:#60a5fa}.comparison-row--head>strong:last-child svg{color:var(--cyan-500)}.trust{background:var(--surface);color:var(--ink);border-block:1px solid var(--line)}.trust .section-label--dark{color:var(--blue-600)}.trust__intro{max-width:670px}.trust__intro>p{margin-top:21px;color:var(--muted);line-height:1.8;font-size:14px}.trust__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:55px}.trust__grid article{position:relative;padding:32px;min-height:270px;border:1px solid var(--line);border-radius:6px;background:var(--white);overflow:hidden;box-shadow:0 1px 4px #0000000a}.trust__grid article:after{content:"";position:absolute;width:100px;height:100px;right:-40px;top:-40px;border-radius:50%;background:var(--cyan-500);filter:blur(50px);opacity:.1}.trust__grid article>div{width:42px;height:42px;display:grid;place-items:center;color:var(--cyan-500);border:1px solid #08bcd43d;border-radius:7px;margin-bottom:32px}.trust__grid p{color:#475569;font-size:13px;line-height:1.65;margin-top:10px}.trust__grid article>span{position:absolute;left:31px;bottom:26px;color:#64748b;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.compliance-strip{margin-top:48px;padding-top:26px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:#475569;font-size:12px;font-weight:800;letter-spacing:.08em}.compliance-strip i{width:3px;height:3px;border-radius:50%;background:var(--cyan-500)}.resources{background:var(--white)}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:54px}.resource-card{border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:.25s}.resource-card:hover{transform:translateY(-3px);border-color:#cbd5e1}.resource-art{height:180px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.resource-art:before,.resource-art:after{content:"";position:absolute;border-radius:50%;border:1px solid currentColor;opacity:.17}.resource-art:before{width:170px;height:170px}.resource-art:after{width:110px;height:110px}.resource-art--1{background:var(--blue-100);color:var(--blue-600)}.resource-art--2{background:#eaf8f4;color:#118b75}.resource-art--3{background:#e9f5f8;color:#078d9f}.resource-art>svg{width:47px;height:47px;z-index:1}.resource-art>span{position:absolute;right:17px;top:14px;font-size:9px;font-weight:800}.resource-copy{padding:25px}.resource-copy>small{color:var(--blue-600);text-transform:uppercase;letter-spacing:.13em;font-size:8px;font-weight:800}.resource-copy h3{margin-top:9px}.resource-copy p{margin-top:10px;color:var(--muted);font-size:11px;line-height:1.7;min-height:58px}.resource-copy a{display:flex;align-items:center;gap:7px;margin-top:19px;color:var(--blue-600);font-size:11px;font-weight:800}.contact{padding-top:40px;background:linear-gradient(var(--white) 0 29%,var(--surface) 29% 100%)}.contact-card{position:relative;overflow:hidden;display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;padding:68px;background:var(--navy-950);color:var(--white);border:1px solid #1e293b;border-radius:8px}.contact-card:before{content:"";position:absolute;width:430px;height:430px;left:-170px;bottom:-280px;border-radius:50%;background:var(--blue-600);opacity:.22;filter:blur(20px)}.contact-card:after{content:"";position:absolute;width:250px;height:250px;left:32%;top:-200px;border-radius:50%;background:var(--cyan-500);opacity:.14;filter:blur(20px)}.contact-copy{position:relative;z-index:1;padding-top:12px}.contact-copy h2{font-size:clamp(32px,3.2vw,48px);line-height:1.12;letter-spacing:-.03em;font-weight:800;color:#fff}.contact-copy>p{margin-top:22px;color:#cbd5e1;font-size:14px;line-height:1.7}.contact-promise{display:flex;gap:13px;align-items:center;margin-top:37px;padding-top:25px;border-top:1px solid #ffffff17}.contact-promise>svg{color:var(--cyan-500)}.contact-promise>span{display:grid;gap:4px}.contact-promise strong{font-size:11px}.contact-promise small{color:#94a3b8;font-size:11.5px}.form-shell{position:relative;z-index:1;min-height:510px;padding:34px;background:var(--white);border-radius:6px;color:var(--ink)}.form-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.form-title strong{font-size:15px}.form-title span{color:#64748b;font-size:11px}.form-shell form>label{display:grid;gap:7px;margin-top:14px;color:#334155;font-size:12px;font-weight:700}.form-shell input:not([type=radio]),.form-shell textarea{border:1px solid #CBD5E1;background:#fff;color:#0f172a;border-radius:4px;padding-inline:14px;font-size:13px;outline:0;transition:.2s}.form-shell input:not([type=radio]){height:43px}.form-shell textarea{min-height:72px;padding-block:11px;resize:vertical}.form-shell input:not([type=radio]):focus,.form-shell textarea:focus{border-color:#003087;box-shadow:0 0 0 3px #00308726}.form-shell input::placeholder,.form-shell textarea::placeholder{color:#94a3b8}.form-shell fieldset{margin-top:17px}.form-shell legend{margin-bottom:9px;color:#334155;font-size:12px;font-weight:800}.radio-option{display:inline-flex;align-items:center;gap:6px;margin-right:12px;color:#334155;font-size:12px;font-weight:600}.radio-option input{accent-color:var(--blue-600)}.form-submit{width:100%;margin-top:22px;border:0}.form-privacy{margin-top:12px;display:flex;justify-content:center;align-items:center;gap:5px;color:#64748b;font-size:11px}.success-state{min-height:440px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.success-state>span{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#ddf7ed;color:#138969}.success-state h3{margin-top:20px;font-size:22px}.success-state p{max-width:330px;margin:10px 0 25px;color:var(--muted);font-size:12px;line-height:1.7}.footer{background:var(--navy-950);color:var(--white);padding-top:72px}.footer__top{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:75px;padding-bottom:60px}.footer__brand p{margin-top:23px;max-width:290px;color:#768b9e;font-size:11px;line-height:1.7}.footer__top>div:not(:first-child){display:flex;flex-direction:column;gap:12px}.footer__top>div>strong{margin-bottom:8px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.footer__top>div>a{color:#8295a7;font-size:10px;transition:.2s}.footer__top>div>a:hover{color:var(--cyan-500)}.footer__bottom{height:65px;border-top:1px solid #ffffff18;display:flex;align-items:center;justify-content:space-between;color:#94a3b8;font-size:11.5px}.footer__bottom span:last-child{display:flex;gap:6px;align-items:center}.vertical-page{min-height:100vh;background:var(--surface)}.vertical-nav{background:var(--white);border-bottom:1px solid var(--line)}.vertical-nav__inner{height:82px;display:flex;align-items:center;justify-content:space-between}.vertical-nav__actions{display:flex;align-items:center;gap:23px}.vertical-nav__actions>a:first-child{color:var(--muted);font-size:11px;font-weight:700}.vertical-hero{padding-block:92px;background:var(--white);border-bottom:1px solid var(--line)}.vertical-hero__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.vertical-hero__copy h1{max-width:660px;font-size:clamp(42px,4.2vw,64px);line-height:1.08;letter-spacing:-.04em;font-weight:900}.vertical-hero__copy>p{max-width:620px;margin-top:24px;color:var(--muted);font-size:15px;line-height:1.7}.vertical-hero__actions{display:flex;align-items:center;gap:24px;margin-top:33px}.vertical-text-link{display:flex;align-items:center;gap:7px;color:var(--blue-600);font-size:11px;font-weight:800}.vertical-hero__visual{position:relative;min-height:400px}.vertical-hero__visual .product-screen{width:100%;height:360px;inset:20px 0 auto;transform:none;box-shadow:none;border-color:var(--line)}.vertical-page--bim .vertical-hero{background:linear-gradient(90deg,var(--white),#f2fbfd)}.vertical-capabilities{background:var(--surface)}.vertical-capabilities__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:50px}.vertical-capabilities__grid article{min-height:250px;padding:30px;border:1px solid var(--line);border-radius:6px;background:var(--white);box-shadow:0 1px 4px #0000000a}.vertical-capabilities__grid article>svg{width:27px;height:27px;margin-top:36px;color:var(--blue-600)}.vertical-page--bim .vertical-capabilities__grid article>svg{color:#0891b2}.vertical-capabilities__grid h3{margin-top:18px;font-size:17px;font-weight:800;color:#0f172a}.vertical-capabilities__grid p{margin-top:10px;color:#475569;font-size:13px;line-height:1.65}.vertical-contact{padding-top:64px;background:linear-gradient(var(--surface) 0 24%,var(--white) 24% 100%)}.vertical-cta{background:var(--blue-600);color:var(--white)}.vertical-page--bim .vertical-cta{background:var(--navy-900)}.vertical-cta__inner{min-height:205px;display:flex;align-items:center;justify-content:space-between;gap:40px}.vertical-cta small{color:#bfdbfe;font-size:8px;font-weight:800;letter-spacing:.12em}.vertical-cta h2{margin-top:9px;font-size:clamp(28px,3vw,42px);line-height:1.15;letter-spacing:-.03em;font-weight:800}.vertical-footer{padding-block:34px;background:var(--white);border-top:1px solid var(--line)}.vertical-footer .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.vertical-footer .brand__descriptor{display:none}.vertical-footer>div>span{color:#64748b;font-size:11.5px}@media (max-width: 1080px){.nav{display:none;position:absolute;top:82px;left:0;right:0;padding:25px 24px;flex-direction:column;align-items:flex-start;background:var(--white);box-shadow:0 25px 40px #0615271f}.nav--open{display:flex}.nav-actions .client-menu{display:none}.menu-toggle{display:block;margin-left:4px}.nav-wrap{gap:18px}.nav-actions{margin-left:auto}.hero__intro{grid-template-columns:1fr;gap:25px}.hero__copy{max-width:820px}.hero__proof{display:flex;margin:0}.hero-product{grid-template-columns:1fr;height:520px}.hero-product--single{grid-template-columns:.78fr 1.22fr;height:365px}.hero-product__screen{margin-top:0}.hero-product__screen .product-screen{width:92%;height:245px;top:18px;left:8%}.hero-product__copy{padding-right:30px}.hero-product__copy>a{bottom:auto;top:215px}.platform__grid,.platform__grid--reverse{gap:55px}.journey{grid-template-columns:1fr 22px 1fr;gap:12px 0}.journey__connector:nth-of-type(4){display:none}.journey article:nth-of-type(3){grid-column:1}.journey article:nth-of-type(4){grid-column:3}.footer__top,.vertical-hero__grid{gap:40px}}@media (max-width: 800px){.container{width:min(100% - 32px,620px)}.section{padding-block:78px}.topbar__inner>span{display:none}.vertical-switcher{margin-inline:auto}.nav-wrap{height:70px}.nav{top:70px}.nav-actions .btn{display:none}.hero{padding-top:72px}.hero h1{font-size:43px}.hero-products{grid-template-columns:1fr}.hero-product{height:455px}.hero-product--single{grid-template-columns:1fr;height:455px}.hero-product__copy>a{top:197px}.hero-product__screen .product-screen{height:225px;top:0}.hero-stats{grid-template-columns:1fr;padding-block:20px;margin-top:55px}.hero-stats>div{min-height:65px;border-right:0;border-bottom:1px solid #ffffff12;padding-inline:0}.hero-stats>div:last-child{border-bottom:0}.section-head{display:block}.section-head>p{margin-top:22px}.platform{padding-block:80px}.platform__grid,.platform__grid--reverse{grid-template-columns:1fr}.platform__grid--reverse .feature-bim-grid{order:2}.feature-bim-grid{grid-template-columns:1fr 1fr}.journey{grid-template-columns:1fr}.journey article,.journey article:nth-of-type(3),.journey article:nth-of-type(4){grid-column:1}.journey__connector{min-height:35px;transform:rotate(90deg)}.journey__connector:nth-of-type(4){display:grid}.audience-row{grid-template-columns:1fr;gap:8px;padding-block:19px}.audience-row--head{display:none}.comparison-row{grid-template-columns:.7fr 1fr 1fr}.comparison-row>*{padding:15px 12px;font-size:9px}.trust__grid,.resource-grid{grid-template-columns:1fr}.compliance-strip{flex-wrap:wrap;gap:20px;justify-content:center}.contact-card{grid-template-columns:1fr;padding:42px;gap:45px}.footer__top{grid-template-columns:1fr 1fr}.footer__brand{grid-column:1 / -1}.vertical-nav__actions>a:first-child{display:none}.vertical-hero{padding-block:70px}.vertical-hero__grid{grid-template-columns:1fr}.vertical-hero__visual{min-height:330px}.vertical-hero__visual .product-screen{height:310px}.vertical-capabilities__grid{grid-template-columns:1fr}.vertical-capabilities__grid article{min-height:210px}.vertical-cta__inner{padding-block:45px}}@media (max-width: 520px){.vertical-switcher a{padding-inline:10px;font-size:8px}.brand__mark{width:34px;height:34px;border-width:6px}.hero h1{font-size:37px}.hero-switch__controls{grid-template-columns:1fr}.hero-switch__controls button{border-right:0;border-bottom:1px solid var(--line)}.hero-switch__controls button:last-child{border-bottom:0}.hero__actions{flex-direction:column;align-items:stretch}.hero__proof{gap:12px}.hero-product{height:435px}.hero-product__copy{padding:24px 22px}.hero-product__copy>a{left:22px;top:190px}.hero-product__screen .product-screen{width:95%;left:5%;height:205px}.metric-row>div:last-child{display:none}.metric-row{grid-template-columns:1fr 1fr}.asset-panel{width:43%}.orbit-badge{left:34%}.section-head h2,.connection__head h2,.trust__intro h2{font-size:34px}.feature-card{grid-template-columns:26px 32px 1fr;gap:12px;padding:18px}.feature-bim-grid{grid-template-columns:1fr}.bim-feature{min-height:auto}.audience-row{min-height:0}.comparison-table{overflow-x:auto}.comparison-row{min-width:650px}.contact-card{padding:31px 22px;border-radius:6px}.form-shell{padding:24px 18px}.radio-option{display:flex;margin:9px 0}.footer__top{grid-template-columns:1fr;gap:35px}.footer__brand{grid-column:auto}.footer__bottom{height:auto;padding-block:23px;gap:16px;flex-direction:column;align-items:flex-start}.vertical-nav__actions .btn{min-height:40px;padding-inline:14px;font-size:11.5px}.vertical-nav .brand__descriptor{display:none}.vertical-hero__copy h1{font-size:38px}.vertical-hero__actions{align-items:flex-start;flex-direction:column}.vertical-hero__visual{min-height:245px}.vertical-hero__visual .product-screen{height:230px}.vertical-cta__inner,.vertical-footer .container{align-items:flex-start;flex-direction:column}}.showcase-wrapper{position:relative;width:100%;height:100%;min-height:320px;display:flex;flex-direction:column}.showcase-switcher{display:inline-flex;gap:4px;background:#0b1120b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:3px;border-radius:6px;margin-bottom:8px;align-self:flex-end;z-index:10;border:1px solid rgba(255,255,255,.12)}.showcase-switcher button{background:transparent;border:none;color:#94a3b8;font-size:11px;font-weight:700;padding:4px 10px;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .2s ease}.showcase-switcher button.active{background:#fff;color:#0f172a;box-shadow:0 1px 4px #00000026}.human-showcase{position:relative;width:100%;height:100%;min-height:290px;border-radius:8px;overflow:hidden;box-shadow:0 16px 36px #0000004d;border:1px solid rgba(255,255,255,.18);background:#0b1120}.human-showcase img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block}.human-overlay-card{position:absolute;bottom:12px;left:12px;right:12px;background:#0b1120e0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.18);border-radius:6px;padding:12px 14px;color:#fff;box-shadow:0 8px 24px #00000059}.human-overlay-card--public{border-left:3px solid #38BDF8}.human-overlay-card--bim{border-left:3px solid #06B6D4}.human-overlay-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;gap:8px}.human-overlay-header small{font-size:10.5px;color:#cbd5e1;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.human-overlay-metrics{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.human-overlay-metrics>div{display:flex;flex-direction:column;gap:1px}.human-overlay-metrics span{font-size:9.5px;color:#94a3b8;font-weight:500}.human-overlay-metrics strong{font-family:JetBrains Mono,monospace;font-size:12.5px;color:#fff;font-variant-numeric:tabular-nums}.hero-product--single .showcase-wrapper{padding:18px 22px 18px 8px}*{margin:0;padding:0;box-sizing:border-box;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}:root{--blue: #003087;--blue-hover: #00205B;--green: #0D7A57;--orange: #C05621;--red: #9B1C1C;--gray: #6B7280;--bg: #F8FAFC;--card-bg: #FFFFFF;--topbar-bg: #FFFFFF;--sidebar-bg: #FFFFFF;--text-primary: #0F172A;--text-secondary: #334155;--border: #E2E8F0;--table-header-bg: #F5F6F8;--table-hover-bg: #F1F3F5;--modal-bg: #FFFFFF;--input-bg: #FFFFFF;--input-border: #D1D5DB;--shadow: 0 1px 2px rgba(0, 0, 0, .04)}[data-theme=dark]{--bg: #0F172A;--card-bg: #1E293B;--topbar-bg: #1E293B;--sidebar-bg: #1E293B;--text-primary: #F8FAFC;--text-secondary: #94A3B8;--border: #334155;--table-header-bg: #0F172A;--table-hover-bg: #334155;--modal-bg: #1E293B;--input-bg: #0F172A;--input-border: #475569;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2)}body{background:var(--bg);color:var(--text-primary);min-height:100vh;transition:background-color .3s ease,color .3s ease}#login-page{display:flex;height:100vh;align-items:center;justify-content:center;background:var(--bg)}.login-box{background:var(--card-bg);padding:40px;border-radius:16px;box-shadow:0 10px 40px #0003;width:400px;max-width:90vw;text-align:center;border:1px solid var(--border)}.login-box h1{color:var(--blue);font-size:26px;margin-bottom:6px}.login-box p{color:var(--text-secondary);font-size:14px;margin-bottom:24px}.login-box input{width:100%;padding:12px 14px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-primary);border-radius:8px;font-size:14px;margin-bottom:14px;outline:0;transition:border-color .2s}.login-box input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1a56db33}.login-box button{width:100%;padding:12px;background:var(--blue);color:#fff;border:none;border-radius:8px;font-size:16px;cursor:pointer;font-weight:600;transition:background .2s}.login-box button:hover{background:var(--blue-hover)}.login-box .erro{color:var(--red);font-size:13px;margin-top:10px}.login-box .hint{font-size:12px;color:var(--text-secondary);margin-top:16px;background:var(--bg);padding:8px;border-radius:6px;border:1px solid var(--border)}.topbar{background:var(--topbar-bg);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:10px 24px;position:sticky;top:0;z-index:100;transition:background-color .3s ease,border-color .3s ease}.toast-stack{position:fixed;top:76px;right:18px;z-index:1400;display:flex;flex-direction:column;gap:10px;max-width:min(440px,calc(100vw - 28px))}.toast{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:10px;box-shadow:0 10px 28px #0f172a33;border:1px solid transparent;font-size:13px;line-height:1.4;background:var(--card-bg);color:var(--text-primary)}.toast-success{border-color:#10b98173;background:linear-gradient(180deg,#ecfdf5fa,#dcfce7fa)}.toast-error{border-color:#ef444466;background:linear-gradient(180deg,#fef2f2fa,#fee2e2fa)}.toast-warning{border-color:#f59e0b73;background:linear-gradient(180deg,#fffbebfa,#fef3c7fa)}.toast-info{border-color:#3b82f666;background:linear-gradient(180deg,#eff6fffa,#dbeafefa)}.toast-message{flex:1}.toast-close{border:none;background:transparent;color:var(--text-secondary);font-size:18px;line-height:1;cursor:pointer;padding:0}.app-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;z-index:1500;padding:16px}.app-modal{width:min(460px,100%);background:var(--modal-bg);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:18px}.app-modal h3{margin-bottom:10px;color:var(--text-primary);font-size:18px}.app-modal p{color:var(--text-secondary);margin-bottom:18px;font-size:14px}.app-modal-actions{display:flex;justify-content:flex-end;gap:10px}[data-theme=dark] .toast-success{background:linear-gradient(180deg,#064e3beb,#047857eb);color:#ecfdf5}[data-theme=dark] .toast-error{background:linear-gradient(180deg,#7f1d1deb,#b91c1ceb);color:#fef2f2}[data-theme=dark] .toast-warning{background:linear-gradient(180deg,#78350feb,#92400eeb);color:#fffbeb}[data-theme=dark] .toast-info{background:linear-gradient(180deg,#1e40afeb,#1d4ed8eb);color:#eff6ff}.topbar .logo{font-weight:800;color:var(--blue);font-size:20px;display:flex;align-items:center;gap:8px}.topbar .logo img{height:68px;width:auto;display:block}.topbar .right{margin-left:auto;display:flex;align-items:center;gap:16px}.topbar .avatar{width:44px;height:44px;border-radius:50%;background:#ebf4ff;color:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:700;cursor:pointer;font-size:14px;border:1px solid #BFDBFE;overflow:hidden}.topbar .avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.main-container{display:flex;min-height:calc(100vh - 64px)}.sidebar{position:fixed;top:64px;left:0;bottom:0;width:240px;background:var(--sidebar-bg);border-right:1px solid var(--border);padding:16px 0;z-index:900;transform:translate(0);transition:transform .3s cubic-bezier(.4,0,.2,1),background-color .3s ease,border-color .3s ease;display:flex;flex-direction:column;overflow-y:auto;white-space:nowrap;box-shadow:4px 0 12px #00000014}.sidebar.collapsed{transform:translate(-100%)}.sidebar-backdrop{position:fixed;top:64px;left:0;right:0;bottom:0;background:#0f172a66;z-index:850}.sidebar nav button{width:100%;display:flex;align-items:center;gap:12px;padding:12px 20px;color:var(--text-secondary);text-decoration:none;font-size:14px;border:none;border-left:3px solid transparent;background:transparent;cursor:pointer;text-align:left;transition:all .2s}.sidebar nav button .icon{font-size:18px;min-width:24px;text-align:center}.sidebar nav button:hover{background:var(--table-hover-bg);color:var(--blue)}.sidebar nav button.active{background:#ebf4ff;color:var(--blue);border-left-color:var(--blue);font-weight:600}[data-theme=dark] .sidebar nav button.active{background:#1e3a8a;color:#93c5fd}.sidebar-group{width:100%;display:flex;align-items:center;gap:12px;padding:12px 20px;color:var(--text-secondary);font-size:14px;border:none;border-left:3px solid transparent;background:transparent;cursor:pointer;text-align:left;transition:all .2s}.sidebar-group:hover{background:var(--table-hover-bg);color:var(--blue)}.sidebar-group .sidebar-caret{margin-left:auto;font-size:12px;color:var(--text-secondary)}.sidebar-submenu{display:flex;flex-direction:column}.sidebar nav .sidebar-submenu button{padding-left:48px}.content{flex:1;padding:28px;overflow-y:auto}.card{background:var(--card-bg);border-radius:12px;box-shadow:var(--shadow);padding:24px;margin-bottom:24px;border:1px solid var(--border);transition:background-color .3s ease,border-color .3s ease}.card h3{margin-bottom:16px;font-size:17px;color:var(--text-primary)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:24px}.stat-card{padding:20px;border-radius:12px;background:var(--card-bg);color:var(--text-primary);border:1px solid var(--border);box-shadow:var(--shadow)}.stat-card .icon{font-size:28px;margin-bottom:6px;color:var(--text-secondary)}.stat-card .label{font-size:13px;color:var(--text-secondary)}.stat-card .value{font-size:24px;font-weight:700;margin:4px 0;color:var(--blue)}.s-blue,.s-green,.s-orange,.s-red{background:var(--card-bg)}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;padding:12px 14px;background:var(--table-header-bg);color:var(--text-secondary);font-size:12px;font-weight:600;text-transform:uppercase;border-bottom:2px solid var(--border)}td{padding:12px 14px;border-bottom:1px solid var(--border);color:var(--text-primary)}tr:hover{background:var(--table-hover-bg)}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.badge-green{background:#d1fae5;color:#065f46}.badge-yellow{background:#fef3c7;color:#92400e}.badge-red{background:#fee2e2;color:#991b1b}.badge-blue{background:#dbeafe;color:#1e40af}[data-theme=dark] .badge-green{background:#064e3b;color:#a7f3d0}[data-theme=dark] .badge-yellow{background:#78350f;color:#fde68a}[data-theme=dark] .badge-red{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .badge-blue{background:#1e3a8a;color:#bfdbfe}.btn{padding:8px 18px;border-radius:8px;font-size:14px;cursor:pointer;border:none;font-weight:500;display:inline-flex;align-items:center;gap:6px;transition:all .2s}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-hover)}.btn-outline{background:transparent;border:1px solid var(--input-border);color:var(--text-primary)}.btn-outline:hover{border-color:var(--blue);color:var(--blue)}.btn-sm{padding:5px 12px;font-size:12px}.btn-success{background:var(--green);color:#fff}.btn-danger{background:var(--red);color:#fff}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.header h2{font-size:22px;color:var(--text-primary)}.filters{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;align-items:center}.filters input,.filters select{padding:9px 14px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-primary);border-radius:8px;font-size:13px;outline:0}.filters input:focus,.filters select:focus{border-color:var(--blue)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.modal{background:var(--modal-bg);color:var(--text-primary);border-radius:14px;padding:32px;width:700px;max-width:95vw;max-height:88vh;overflow-y:auto;box-shadow:0 20px 25px -5px #00000080;border:1px solid var(--border)}.modal-lg{width:1100px;max-width:95vw}.modal h3{margin-bottom:20px;font-size:18px;color:var(--text-primary)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;color:var(--text-secondary);margin-bottom:6px;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-primary);border-radius:8px;font-size:14px;outline:0}.form-group input:focus,.form-group select:focus{border-color:var(--blue)}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.form-grid-3{display:grid;grid-template-columns:1fr 1fr;gap:14px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0}.info-item{padding:12px;background:var(--table-header-bg);border-radius:8px;border:1px solid var(--border)}.info-item .label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;font-weight:600}.info-item .value{font-size:15px;font-weight:600;margin-top:4px;color:var(--text-primary)}.total-geral{text-align:right;font-weight:700;font-size:16px;padding:12px 0;margin-top:12px;border-top:2px solid var(--border);color:var(--blue)}.tree-view{display:flex;flex-direction:column;gap:8px}.tree-node{display:flex;flex-direction:column;gap:4px}.tree-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;cursor:pointer;transition:background .2s;border:1px solid transparent}.tree-row:hover{background:var(--table-hover-bg);border-color:var(--border)}.ata-row{background:#f9fafb;border-color:var(--border);margin-left:24px}.ata-row.carona{background:#fffbeb;border-color:#fde68a}[data-theme=dark] .ata-row.carona{background:#78350f}.contrato-row{background:#fff;border-color:var(--border);margin-left:48px}[data-theme=dark] .contrato-row{background:var(--card-bg)}.tree-toggle{width:20px;text-align:center;font-size:12px;color:var(--text-secondary)}.tree-label{flex:1;font-size:14px;color:var(--text-primary)}.tree-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600;background:#e5e7eb;color:var(--text-secondary)}.tree-badge.s-orange{background:#fef3c7;color:#92400e}.tree-badge.s-green{background:#d1fae5;color:#065f46}.tree-badge.s-red{background:#fee2e2;color:#991b1b}.tree-badge.origem-propria{background:#d1fae5;color:#065f46}.tree-badge.origem-carona{background:#fffbeb;color:#92400e}[data-theme=dark] .tree-badge{background:#334155;color:var(--text-secondary)}[data-theme=dark] .tree-badge.s-orange{background:#78350f;color:#fde68a}[data-theme=dark] .tree-badge.s-green{background:#064e3b;color:#a7f3d0}[data-theme=dark] .tree-badge.s-red{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .tree-badge.origem-propria{background:#064e3b;color:#a7f3d0}[data-theme=dark] .tree-badge.origem-carona{background:#78350f;color:#fde68a}.tree-children{display:flex;flex-direction:column;gap:4px;margin-top:4px}.react-calendar{border:none;width:100%;font-family:inherit}:root{--color-brand-navy: #003087;--color-brand-subtle: #EBF2FA;--color-brand-navy-dark: #00205B;--color-text-primary: #0F172A;--color-text-secondary: #334155;--color-text-muted: #64748B;--color-border: #E2E8F0;--color-bg-page: #F8FAFC;--color-border-strong: #CBD5E1;--color-bg-card: #FFFFFF;--color-bg-hover: #F1F3F5;--color-success: #0D7A57;--color-success-bg: #F0FDF4;--color-warning: #C05621;--color-warning-bg: #FFFBEB;--color-danger: #9B1C1C;--color-danger-bg: #FEF2F2;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 22px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--radius-xs: 2px;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 6px;--shadow-card: 0 1px 2px rgba(0, 0, 0, .04);--shadow-technical: 0 1px 2px rgba(0, 0, 0, .04);--shadow-dropdown: 0 8px 24px rgba(18, 59, 122, .12)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-family);font-size:var(--font-size-md);color:var(--color-text-primary);background-color:var(--color-bg-page);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);margin:0 0 8px}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}a{color:var(--color-brand-navy);text-decoration:none}a:hover{color:var(--color-brand-navy-dark);text-decoration:underline}.btn,button[type=submit],.btn-primary,.btn-success{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:var(--font-size-md);line-height:1;padding:10px 16px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary,.btn-success,button[type=submit]{background-color:var(--color-brand-navy);color:#fff}.btn-primary:hover,.btn-success:hover,button[type=submit]:hover{background-color:var(--color-brand-navy-dark)}.btn-outline,.btn-secondary{background-color:transparent;color:var(--color-brand-navy);border-color:var(--color-border)}.btn-outline:hover,.btn-secondary:hover{background-color:var(--color-bg-hover);border-color:var(--color-brand-navy)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover{background-color:#b91c1c}.btn-outline-danger{background-color:transparent;color:var(--color-danger);border-color:#fecaca}.btn-outline-danger:hover{background-color:var(--color-danger-bg);border-color:var(--color-danger)}.btn-sm{padding:6px 12px;font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.btn-lg{padding:12px 20px;font-size:var(--font-size-lg)}.card,.kpi-card,.stat-card,.dashboard-card{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px}.kpi-card .value,.stat-card .value,.kpi-card .number,.stat-card .number,.kpi-card .label,.stat-card .label{color:var(--color-brand-navy)}.kpi-card .icon,.stat-card .icon{color:var(--color-text-muted)}table{width:100%;border-collapse:collapse;font-size:var(--font-size-md)}thead th{background-color:var(--color-bg-page);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);text-align:left;padding:10px 12px;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.03em}tbody td{padding:10px 12px;border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}tbody tr:hover{background-color:var(--color-bg-hover)}.form-group,.form-field{margin-bottom:16px}.form-group label,.form-field label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:6px}.form-group input,.form-group select,.form-group textarea,.form-field input,.form-field select,.form-field textarea{width:100%;padding:9px 12px;font-family:var(--font-family);font-size:var(--font-size-md);color:var(--color-text-primary);background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .15s ease,box-shadow .15s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--color-brand-navy);box-shadow:0 0 0 3px #123b7a1a}.sidebar,.menu,nav.sidebar{background-color:var(--color-bg-card);border-right:1px solid var(--color-border)}.sidebar a,.menu a,nav.sidebar a{display:flex;align-items:center;gap:10px;padding:10px 16px;color:var(--color-text-secondary);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);text-decoration:none;transition:background-color .15s ease,color .15s ease}.sidebar a:hover,.menu a:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary);text-decoration:none}.sidebar a.active,.menu a.active{background-color:#123b7a14;color:var(--color-brand-navy);font-weight:var(--font-weight-semibold)}.navbar,.header,header{background-color:var(--color-bg-card);border-bottom:1px solid var(--color-border);padding:12px 24px;display:flex;align-items:center;gap:16px;position:sticky;top:0;z-index:100}.navbar .logo,.header .logo{height:36px;width:auto}.badge,.status-badge,.status-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:9999px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.badge-success,.status-badge.success{background-color:var(--color-success-bg);color:var(--color-success)}.badge-warning,.status-badge.pending{background-color:var(--color-warning-bg);color:var(--color-warning)}.badge-danger,.status-badge.danger{background-color:var(--color-danger-bg);color:var(--color-danger)}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot.success{background-color:var(--color-success)}.status-dot.warning{background-color:var(--color-warning)}.status-dot.danger{background-color:var(--color-danger)}#login-page.login-shell{display:flex;align-items:stretch;width:100%;min-height:100vh;background:#fff;padding:0}.login-left{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 32px;background:linear-gradient(135deg,#f0f4ff,#fff 60%)}.login-form-wrap{width:100%;max-width:400px}.login-logo{display:block;width:220px;height:auto;margin:0 auto 40px}.login-title{font-size:26px;font-weight:700;color:var(--color-brand-navy);margin:0 0 6px}.login-subtitle{font-size:14px;color:var(--color-text-secondary);margin:0 0 28px;line-height:1.5}.login-form{display:flex;flex-direction:column;gap:16px}.login-field label{display:block;font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.login-field input{width:100%;height:44px;padding:0 14px;border:1px solid #CBD5E1;border-radius:var(--radius-md);background:#fff;color:var(--color-text-primary);font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s}.login-field input:focus{border-color:var(--color-brand-navy);box-shadow:0 0 0 3px #123b7a1f}.login-input-wrap{position:relative}.login-input-wrap input{padding-right:46px}.login-eye{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:none;background:transparent;cursor:pointer;font-size:16px;color:#94a3b8;padding:0}.login-error{background:var(--color-danger-bg);border:1px solid #FECACA;color:var(--color-danger);border-radius:var(--radius-md);padding:10px 12px;font-size:13px}.login-success{background:var(--color-success-bg);border:1px solid #BBF7D0;color:#065f46;border-radius:var(--radius-md);padding:10px 12px;font-size:13px}button.login-submit{width:100%;height:44px;border:none;border-radius:var(--radius-md);background:var(--color-brand-navy);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s}button.login-submit:hover{background:var(--color-brand-navy-dark)}button.login-submit:disabled{opacity:.6;cursor:not-allowed}.login-links{display:flex;justify-content:space-between;gap:8px;margin-top:4px}.login-link{border:none;background:transparent;color:var(--color-brand-navy);font-size:13px;cursor:pointer;padding:4px 0}.login-link:hover{text-decoration:underline}button.login-back{width:100%;height:42px;border:1px solid #CBD5E1;border-radius:var(--radius-md);background:transparent;color:var(--color-brand-navy);font-size:14px;font-weight:500;cursor:pointer;transition:border-color .2s,color .2s}button.login-back:hover{border-color:var(--color-brand-navy)}.login-demo{margin-top:28px;padding-top:20px;border-top:1px solid var(--color-border);text-align:center;font-size:12px;color:#94a3b8}.login-right{display:none;flex:1;position:relative;overflow:hidden;align-items:center;justify-content:center;background:linear-gradient(145deg,#0d1f4e,#1a3a8a)}@media (min-width: 1024px){.login-right{display:flex}}.login-right-circles{position:absolute;top:50%;left:50%;width:1200px;height:1200px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,transparent 0 90px,rgba(255,255,255,.14) 90px 92px,transparent 92px 200px,rgba(255,255,255,.11) 200px 202px,transparent 202px 320px,rgba(255,255,255,.09) 320px 322px,transparent 322px 450px,rgba(255,255,255,.07) 450px 452px,transparent 452px 590px,rgba(255,255,255,.05) 590px 592px,transparent 592px)}.login-right-content{position:relative;z-index:1;text-align:center;padding:48px;max-width:520px}.login-right-content h2{color:#fff;font-size:26px;font-weight:600;line-height:1.3;margin:0 0 12px}.login-right-content p{color:#ffffffa6;font-size:14px;line-height:1.6;margin:0 0 44px}.login-stats{display:flex;justify-content:center;gap:40px}.login-stat{text-align:center}.login-stat strong{display:block;color:#fff;font-size:24px;font-weight:700}.login-stat span{display:block;color:#ffffff8c;font-size:11px;margin-top:4px}.login-audit{position:absolute;bottom:24px;left:0;right:0;z-index:1;text-align:center;color:#ffffff73;font-size:11px;padding:0 24px}@media (max-width: 1023px){.login-left{padding:32px 20px}.login-stats{gap:24px}}.login-card .btn,.login-card button{width:100%;display:flex;align-items:center;justify-content:center;margin-bottom:10px;padding:10px 16px;font-size:var(--font-size-md);line-height:1.2;min-height:0;white-space:normal;overflow:visible}.login-card .btn:last-child,.login-card button:last-child{margin-bottom:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#123b7a66;display:flex;align-items:center;justify-content:center;z-index:2000}.modal{background-color:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-dropdown);padding:24px;width:100%;max-width:560px}.modal h2,.modal-header{color:var(--color-brand-navy);font-size:var(--font-size-lg)}.user-menu{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown)}.user-menu .user-role{color:var(--color-text-secondary);font-size:var(--font-size-sm);padding:12px 16px;border-bottom:1px solid var(--color-border)}.toast-container{position:fixed;top:16px;right:16px;z-index:99999;display:flex;flex-direction:column;gap:8px;max-width:360px}.toast{border-radius:var(--radius-md);padding:12px 16px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);word-break:break-word;overflow-wrap:anywhere}.toast-success{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid #BBF7D0}.toast-error{background-color:var(--color-danger-bg);color:var(--color-danger);border:1px solid #FECACA}.toast-warning{background-color:var(--color-warning-bg);color:var(--color-warning);border:1px solid #FDE68A}[data-theme=dark]{--color-brand-navy: #60A5FA;--color-brand-navy-dark: #93C5FD;--color-text-primary: #F8FAFC;--color-text-secondary: #94A3B8;--color-text-muted: #64748B;--color-border: #334155;--color-bg-page: #0F172A;--color-bg-card: #1E293B;--color-bg-hover: #334155;--color-success: #4ADE80;--color-success-bg: #064E3B;--color-warning: #FBBF24;--color-warning-bg: #78350F;--color-danger: #F87171;--color-danger-bg: #7F1D1D;--shadow-card: 0 4px 6px -1px rgba(0, 0, 0, .3);--shadow-dropdown: 0 8px 24px rgba(0, 0, 0, .4)}.modal-overlay:has(.form-grid) .modal{max-width:1100px!important;width:95vw}.modal-overlay:has(.form-grid) table{width:100%;border-collapse:collapse}.modal-overlay:has(.form-grid) th,.modal-overlay:has(.form-grid) td{padding:10px 12px;white-space:nowrap}.modal-overlay:has(.form-grid) td:first-child{white-space:normal;min-width:180px}.modal-overlay:has(.form-grid) input[type=number]{width:90px;text-align:center}.modal-overlay:has(.form-grid) td:last-child{text-align:right}.modal-overlay:has(.form-grid) .modal{max-width:900px!important;width:95vw}.modal-overlay:has(.modal-lg) .modal{max-width:960px!important;width:95vw}.topbar{position:sticky;top:0;z-index:1000}.info-item .value{word-break:break-word;overflow-wrap:anywhere;white-space:normal}@media print{@page{size:A4 portrait;margin:12mm 15mm}body{background:#fff!important;color:#0f172a!important;font-size:11pt!important}.sidebar,nav,.topbar,button:not(.print-keep),.no-print{display:none!important}.print-only{display:block!important}.page-break-before{page-break-before:always}.page-break-inside-avoid{break-inside:avoid;page-break-inside:avoid}}
