:root {
  --ink: #06111f;
  --ink-2: #0a1b2e;
  --ink-3: #102a45;
  --paper: #f4f7fa;
  --paper-2: #e9eff4;
  --white: #f8fbff;
  --text: #dceafa;
  --muted: #89a1b8;
  --cyan: #19a8ff;
  --cyan-2: #0b79e8;
  --blue: #0c3d92;
  --amber: #ffab19;
  --green: #31d4a0;
  --red: #f3646c;
  --border: rgba(178, 211, 239, 0.16);
  --container: 1240px;
  --header-h: 86px;
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: var(--header-h); }
body {
  margin: 0;
  min-width: 320px;
  background: var(--ink);
  color: var(--text);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}
body.nav-open { overflow: hidden; }
img, svg, video, canvas { display: block; max-width: 100%; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
p, h1, h2, h3, blockquote { margin-top: 0; }
::selection { color: var(--ink); background: var(--cyan); }

.skip-link {
  position: fixed;
  z-index: 999;
  top: 12px;
  left: 12px;
  padding: 12px 18px;
  color: var(--ink);
  background: var(--white);
  border-radius: 6px;
  transform: translateY(-150%);
  transition: transform .2s ease;
}
.skip-link:focus { transform: translateY(0); }

.page-progress {
  position: fixed;
  z-index: 120;
  inset: 0 0 auto;
  height: 2px;
  pointer-events: none;
  background: rgba(255, 255, 255, .05);
}
.page-progress span {
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, var(--cyan), var(--amber));
  transform: scaleX(0);
  transform-origin: left;
  will-change: transform;
}

#signal-field {
  position: fixed;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: .18;
  pointer-events: none;
}
.noise {
  position: fixed;
  z-index: 110;
  inset: 0;
  opacity: .025;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E");
}

.container { width: min(calc(100% - 56px), var(--container)); margin-inline: auto; }
.section-dark { position: relative; background: var(--ink); }
.section-light { position: relative; color: var(--ink); background: var(--paper); }
.section-electric { position: relative; color: var(--ink); background: var(--cyan); }

.eyebrow {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 24px;
  color: #a8bfd5;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .22em;
  line-height: 1.3;
}
.eyebrow.dark { color: #435b70; }
.live-dot,
.product-chip i,
.contact-note i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 0 5px rgba(49, 212, 160, .11), 0 0 20px rgba(49, 212, 160, .6);
}

.site-header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  right: 0;
  height: var(--header-h);
  display: grid;
  grid-template-columns: 190px 1fr auto;
  align-items: center;
  gap: 36px;
  padding: 0 clamp(24px, 4vw, 70px);
  border-bottom: 1px solid transparent;
  transition: background .35s ease, border-color .35s ease, height .35s ease;
}
.site-header.scrolled {
  height: 70px;
  background: rgba(4, 14, 25, .8);
  border-color: rgba(255, 255, 255, .08);
  backdrop-filter: blur(18px) saturate(130%);
}
.brand { width: 152px; }
.brand img { width: 100%; height: auto; }
.site-nav { display: flex; justify-content: center; align-items: center; gap: clamp(24px, 3.4vw, 52px); }
.site-nav a {
  position: relative;
  padding: 9px 0;
  color: #a8b9ca;
  font-size: 12px;
  font-weight: 620;
  letter-spacing: .04em;
  transition: color .25s ease;
}
.site-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 3px;
  height: 1px;
  background: var(--cyan);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .35s var(--ease);
}
.site-nav a:hover { color: var(--white); }
.site-nav a:hover::after, .site-nav a.active::after { transform: scaleX(1); transform-origin: left; }
.header-cta {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 11px 12px 11px 18px;
  color: var(--ink);
  background: var(--white);
  border: 1px solid var(--white);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
}
.header-cta i {
  display: grid;
  place-items: center;
  width: 27px;
  height: 27px;
  border-radius: 50%;
  color: var(--white);
  background: var(--ink);
  font-style: normal;
  transition: transform .3s var(--ease);
}
.header-cta:hover i { transform: rotate(45deg); }
.nav-toggle { display: none; }

.hero {
  min-height: 100svh;
  display: flex;
  align-items: center;
  padding: calc(var(--header-h) + 70px) 0 80px;
  isolation: isolate;
  overflow: hidden;
}
.hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 0;
  background:
    linear-gradient(rgba(15, 60, 94, .13) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15, 60, 94, .13) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .85), transparent 88%);
}
.hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: radial-gradient(circle at 55% 45%, transparent 0, rgba(6, 17, 31, .12) 37%, rgba(6, 17, 31, .82) 90%);
}
.hero-glow { position: absolute; z-index: -1; border-radius: 50%; filter: blur(100px); pointer-events: none; }
.glow-a { width: 420px; height: 420px; right: 15%; top: 14%; background: rgba(4, 143, 255, .18); }
.glow-b { width: 310px; height: 310px; right: 3%; bottom: 8%; background: rgba(255, 171, 25, .07); }
.hero-grid { display: grid; grid-template-columns: minmax(0, .93fr) minmax(450px, 1.07fr); align-items: center; gap: clamp(36px, 6vw, 90px); }
.hero-copy { position: relative; z-index: 2; }
.hero-title {
  max-width: 720px;
  margin-bottom: 28px;
  color: var(--white);
  font-size: clamp(54px, 6.1vw, 92px);
  font-weight: 610;
  letter-spacing: -.067em;
  line-height: .96;
}
.hero-title .hero-accent { color: var(--cyan); }
.hero-title .hero-accent .word-inner { color: inherit; }
.hero-title .word { display: inline-block; overflow: hidden; vertical-align: bottom; }
.hero-title .word-inner { display: inline-block; transform: translateY(110%); animation: titleIn .9s var(--ease) forwards; }
.hero-lead {
  max-width: 610px;
  margin-bottom: 34px;
  color: #9eb2c5;
  font-size: clamp(16px, 1.25vw, 19px);
  line-height: 1.7;
}
.hero-actions { display: flex; align-items: center; gap: 12px; margin-bottom: 48px; }
.button {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  min-height: 52px;
  padding: 0 24px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 999px;
  overflow: hidden;
  font-size: 13px;
  font-weight: 720;
  letter-spacing: .015em;
  transition: color .3s ease, border-color .3s ease, transform .3s var(--ease);
}
.button::before { content: ""; position: absolute; inset: 100% 0 -100%; background: var(--white); transition: inset .4s var(--ease); }
.button span, .button svg, .button i { position: relative; z-index: 1; }
.button svg { width: 19px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; }
.button-primary { color: var(--ink); border-color: var(--cyan); background: var(--cyan); }
.button-primary::before { background: var(--white); }
.button-primary:hover::before { inset: 0; }
.button-ghost { color: #b3c4d5; background: rgba(255, 255, 255, .025); }
.button-ghost:hover { color: var(--white); border-color: rgba(255, 255, 255, .42); }
.play-dot { display: grid; place-items: center; width: 27px; height: 27px; border: 1px solid rgba(255, 255, 255, .2); border-radius: 50%; font-size: 8px; }
.hero-proof { display: flex; align-items: center; gap: 22px; }
.hero-proof div { display: grid; gap: 4px; }
.hero-proof strong { color: #d9eafa; font-size: 10px; letter-spacing: .18em; }
.hero-proof span { color: #657e95; font-size: 11px; }
.hero-proof > i { width: 1px; height: 26px; background: rgba(255, 255, 255, .13); }

.hero-stage { position: relative; min-height: 600px; perspective: 1000px; transform-style: preserve-3d; }
.stage-main {
  position: absolute;
  z-index: 3;
  top: 92px;
  left: 3%;
  right: 5%;
  padding: 18px;
  border: 1px solid rgba(130, 203, 255, .2);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(12, 37, 61, .92), rgba(6, 17, 31, .72));
  box-shadow: 0 40px 100px rgba(0, 0, 0, .42), inset 0 1px 0 rgba(255, 255, 255, .07);
  backdrop-filter: blur(20px);
  transform: rotateY(-5deg) rotateX(2deg);
  overflow: hidden;
}
.stage-main::before { content: ""; position: absolute; inset: 0; background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,.07) 47%, transparent 57%); transform: translateX(-110%); animation: glassSweep 8s 2s infinite; }
.stage-topline, .video-footer, .window-bar { display: flex; justify-content: space-between; align-items: center; }
.stage-topline { position: relative; z-index: 2; padding: 0 4px 15px; color: #6f8ca6; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 9px; letter-spacing: .1em; }
.stage-topline span:first-child { display: flex; align-items: center; gap: 7px; color: #a3bdd5; }
.status-pulse { width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 12px var(--green); animation: statusPulse 2s infinite; }
.signal-screen { position: relative; height: 310px; overflow: hidden; border: 1px solid rgba(113, 180, 229, .11); border-radius: 10px; background: rgba(2, 11, 20, .52); }
.signal-screen svg { width: 100%; height: 100%; }
.grid-line { fill: none; stroke: rgba(103, 170, 220, .1); stroke-width: 1; }
.signal-area { fill: url(#signalFill); }
.signal-path { fill: none; stroke: var(--cyan); stroke-width: 3; stroke-linecap: round; filter: url(#signalGlow); stroke-dasharray: 1; stroke-dashoffset: 1; animation: drawSignal 3.2s .5s var(--ease) forwards; }
.scan-line { position: absolute; top: 0; bottom: 0; width: 90px; background: linear-gradient(90deg, transparent, rgba(31, 174, 255, .11), transparent); animation: scan 4s linear infinite; }
.stage-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding-top: 13px; }
.stage-metrics div { padding: 11px 12px; border: 1px solid rgba(117, 179, 225, .1); border-radius: 8px; background: rgba(255, 255, 255, .02); }
.stage-metrics span { display: block; margin-bottom: 4px; color: #607a92; font-family: ui-monospace, Consolas, monospace; font-size: 8px; letter-spacing: .13em; }
.stage-metrics strong { color: #d7e7f5; font-size: 12px; font-weight: 600; }
.stage-float { position: absolute; z-index: 5; display: flex; align-items: center; gap: 12px; padding: 13px 15px; border: 1px solid rgba(148, 203, 242, .18); border-radius: 12px; background: rgba(9, 28, 47, .87); box-shadow: 0 18px 55px rgba(0, 0, 0, .38); backdrop-filter: blur(16px); }
.stage-float small { display: block; margin-bottom: 3px; color: #668199; font-family: ui-monospace, Consolas, monospace; font-size: 7px; letter-spacing: .1em; }
.stage-float strong { color: #dcecf9; font-size: 11px; }
.stage-device { top: 26px; right: 0; animation: float 5s ease-in-out infinite; }
.stage-erp { left: -4%; bottom: 78px; animation: float 6s 1s ease-in-out infinite reverse; }
.device-icon { position: relative; display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid rgba(25, 168, 255, .45); border-radius: 7px; }
.device-icon i { position: absolute; width: 3px; height: 3px; border-radius: 50%; background: var(--cyan); box-shadow: 8px 0 var(--green), -8px 0 var(--amber); }
.online-dot { width: 7px; height: 7px; margin-left: 4px; border-radius: 50%; background: var(--green); box-shadow: 0 0 12px rgba(49, 212, 160, .7); }
.mini-bars { display: flex; align-items: flex-end; gap: 3px; width: 34px; height: 30px; padding: 5px; border-radius: 6px; background: rgba(25, 168, 255, .1); }
.mini-bars i { width: 4px; height: var(--h, 50%); border-radius: 3px 3px 0 0; background: var(--cyan); }
.mini-bars i:nth-child(1) { --h: 45%; }.mini-bars i:nth-child(2) { --h: 80%; }.mini-bars i:nth-child(3) { --h: 60%; }.mini-bars i:nth-child(4) { --h: 95%; }
.stage-orbit { position: absolute; border: 1px solid rgba(28, 159, 242, .12); border-radius: 50%; pointer-events: none; }
.orbit-one { width: 510px; height: 510px; top: 34px; right: -70px; animation: orbitSpin 30s linear infinite; }
.orbit-two { width: 380px; height: 380px; top: 100px; right: -5px; border-style: dashed; animation: orbitSpin 23s linear infinite reverse; }
.stage-node { position: absolute; z-index: 4; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid rgba(53, 179, 255, .5); border-radius: 50%; color: var(--amber); background: var(--ink); box-shadow: 0 0 28px rgba(25, 168, 255, .22); font-family: ui-monospace, Consolas, monospace; font-size: 9px; }
.node-a { top: 58px; left: 10%; }.node-b { top: 39%; right: 1%; }.node-c { left: 22%; bottom: 40px; }.node-d { right: 17%; bottom: 19px; }
.scroll-cue { position: absolute; left: clamp(28px, 4vw, 72px); bottom: 28px; display: flex; align-items: center; gap: 14px; color: #617a91; font-size: 8px; letter-spacing: .18em; writing-mode: vertical-rl; }
.scroll-cue i { position: relative; width: 1px; height: 52px; overflow: hidden; background: rgba(255, 255, 255, .12); }
.scroll-cue i::after { content: ""; position: absolute; inset: -100% 0 100%; background: var(--cyan); animation: scrollCue 2s infinite; }

.ticker { overflow: hidden; border-block: 1px solid rgba(255, 255, 255, .08); background: #081522; }
.ticker-track { display: flex; align-items: center; width: max-content; min-width: 200%; animation: ticker 30s linear infinite; }
.ticker span { padding: 23px 28px; color: #6e879c; font-size: 11px; font-weight: 700; letter-spacing: .17em; white-space: nowrap; }
.ticker i { width: 6px; height: 6px; border-radius: 50%; background: var(--amber); box-shadow: 0 0 13px rgba(255, 171, 25, .52); }

.expertise { padding: 142px 0 160px; overflow: hidden; }
.expertise::before { content: "DONE"; position: absolute; top: 45px; right: -30px; color: rgba(6, 17, 31, .027); font-size: 230px; font-weight: 800; letter-spacing: -.08em; line-height: 1; }
.section-heading { margin-bottom: 70px; }
.split-heading { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(300px, .5fr); align-items: end; gap: 70px; }
.section-heading h2, .projects-title-row h2, .project-copy h2, .story h2, .contact h2 {
  margin-bottom: 0;
  font-size: clamp(44px, 5.2vw, 76px);
  font-weight: 620;
  letter-spacing: -.06em;
  line-height: .98;
}
.section-heading h2 span, .projects-title-row h2 span, .project-copy h2 span, .story h2 span, .contact h2 span { color: var(--cyan-2); }
.section-intro { margin-bottom: 4px; color: #536b80; font-size: 16px; line-height: 1.7; }
.capability-grid { display: grid; grid-template-columns: 1.15fr .85fr .85fr; gap: 16px; }
.capability-card {
  position: relative;
  min-height: 390px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 34px;
  border: 1px solid #d9e2e9;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(13, 36, 58, .06);
  overflow: hidden;
  transform-style: preserve-3d;
}
.capability-card::after { content: ""; position: absolute; inset: 0; opacity: 0; background: radial-gradient(circle at var(--mx, 50%) var(--my, 50%), rgba(25, 168, 255, .12), transparent 38%); transition: opacity .3s ease; pointer-events: none; }
.capability-card:hover::after { opacity: 1; }
.capability-feature { color: var(--white); background: var(--ink-2); border-color: var(--ink-2); }
.card-index { position: absolute; top: 28px; right: 28px; color: #9aaebd; font-family: ui-monospace, Consolas, monospace; font-size: 10px; }
.capability-feature .card-index { color: #547089; }
.card-kicker { display: block; margin-bottom: 10px; color: var(--cyan-2); font-size: 9px; font-weight: 750; letter-spacing: .18em; }
.capability-feature .card-kicker { color: var(--cyan); }
.capability-card h3 { position: relative; z-index: 1; margin-bottom: 12px; font-size: 27px; letter-spacing: -.04em; }
.capability-card p { position: relative; z-index: 1; margin-bottom: 22px; color: #627689; font-size: 14px; line-height: 1.65; }
.capability-feature p { color: #8fa7bc; }
.capability-card > a { position: relative; z-index: 1; display: flex; justify-content: space-between; align-items: center; padding-top: 18px; border-top: 1px solid #e1e7ec; font-size: 12px; font-weight: 700; }
.capability-card > a span { transition: transform .25s var(--ease); }.capability-card > a:hover span { transform: translate(4px, -4px); }
.tag-list { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 7px; margin: 0; padding: 0; list-style: none; }
.tag-list li { padding: 7px 10px; border: 1px solid rgba(169, 210, 240, .15); border-radius: 99px; color: #85a0b7; font-size: 9px; letter-spacing: .06em; }
.chip-visual { position: absolute; top: 33px; left: 34px; width: 144px; height: 130px; display: grid; place-items: center; border: 1px solid rgba(30, 158, 242, .12); border-radius: 50%; }
.chip-visual::before, .chip-visual::after { content: ""; position: absolute; inset: 18px; border: 1px dashed rgba(30, 158, 242, .2); border-radius: 50%; animation: orbitSpin 16s linear infinite; }
.chip-visual::after { inset: 34px; animation-direction: reverse; animation-duration: 9s; }
.chip-core { position: relative; z-index: 2; display: grid; place-items: center; width: 47px; height: 47px; border: 1px solid rgba(25, 168, 255, .55); border-radius: 10px; color: var(--cyan); background: rgba(25, 168, 255, .08); font-family: ui-monospace, Consolas, monospace; font-size: 13px; box-shadow: 0 0 35px rgba(25, 168, 255, .13); }
.pin { position: absolute; z-index: 3; width: 16px; height: 1px; background: var(--cyan); transform-origin: center; }
.p1{left:32px;top:51px}.p2{left:27px;top:68px}.p3{right:32px;top:51px}.p4{right:27px;top:68px}.p5{top:29px;left:64px;transform:rotate(90deg)}.p6{bottom:29px;left:64px;transform:rotate(90deg)}.p7{top:36px;left:42px;transform:rotate(45deg)}.p8{bottom:36px;right:42px;transform:rotate(45deg)}
.cloud-visual { position: absolute; top: 45px; left: 50%; width: 132px; height: 90px; transform: translateX(-50%); }
.cloud-visual span { position: absolute; left: 25px; top: 28px; width: 82px; height: 42px; border: 2px solid #0f7cc9; border-radius: 30px; }
.cloud-visual span::before, .cloud-visual span::after { content: ""; position: absolute; border: 2px solid #0f7cc9; border-bottom: 0; border-radius: 50% 50% 0 0; background: #fff; }
.cloud-visual span::before { width: 36px; height: 28px; left: 8px; top: -22px; }.cloud-visual span::after { width: 29px; height: 23px; right: 9px; top: -15px; }
.cloud-node { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 15px rgba(25, 168, 255, .6); }
.cloud-node::after { content: ""; position: absolute; width: 1px; height: 32px; background: linear-gradient(var(--cyan), transparent); transform-origin: top; }
.c1{left:12px;bottom:0}.c1::after{transform:rotate(-20deg)}.c2{left:63px;bottom:-8px}.c3{right:10px;bottom:1px}.c3::after{transform:rotate(20deg)}
.erp-visual { position: absolute; top: 42px; left: 34px; right: 34px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 7px; height: 94px; }
.erp-visual i { align-self: end; height: var(--h); border-radius: 5px 5px 1px 1px; background: linear-gradient(var(--cyan), #0c5eac); animation: growBar 1.5s var(--ease) both; transform-origin: bottom; }
.erp-visual i:nth-child(1){--h:35%;}.erp-visual i:nth-child(2){--h:65%;animation-delay:.1s}.erp-visual i:nth-child(3){--h:48%;animation-delay:.2s}.erp-visual i:nth-child(4){--h:88%;animation-delay:.3s}
.erp-visual span { position: absolute; inset: auto 0 0; height: 1px; background: #cad8e2; }
.capability-wide { grid-column: 1 / -1; min-height: 190px; display: grid; grid-template-columns: .8fr 1fr; align-items: center; gap: 60px; padding-right: 390px; }
.capability-wide p { margin: 0; }
.flow-mini { position: absolute; top: 50%; right: 32px; width: 330px; display: flex; align-items: center; transform: translateY(-50%); }
.flow-mini span { color: #587087; font-size: 8px; font-weight: 700; letter-spacing: .1em; }
.flow-mini i { flex: 1; height: 1px; margin: 0 7px; background: #c9d5de; }
.flow-mini i::after { content: ""; display: block; width: 5px; height: 5px; margin-top: -2px; border-radius: 50%; background: var(--amber); animation: flowDot 2.5s infinite; }

.projects-intro { padding: 135px 0 90px; overflow: hidden; }
.projects-intro::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(25, 168, 255, .3), transparent); }
.projects-title-row { display: grid; grid-template-columns: 1.3fr .7fr; align-items: end; gap: 60px; }
.projects-title-row h2 { color: var(--white); font-size: clamp(64px, 8vw, 120px); }
.projects-title-row p { max-width: 410px; margin: 0 0 10px auto; color: #7f99af; font-size: 17px; line-height: 1.65; }

.project { padding: 125px 0; overflow: hidden; }
.project-grid { display: grid; grid-template-columns: minmax(380px, .8fr) minmax(560px, 1.2fr); align-items: center; gap: clamp(60px, 8vw, 120px); }
.project-grid.reverse { grid-template-columns: minmax(560px, 1.2fr) minmax(380px, .8fr); }
.project-grid.reverse .project-copy { order: 2; }
.project-number { display: block; margin-bottom: 22px; color: #5d7890; font-family: ui-monospace, Consolas, monospace; font-size: 10px; letter-spacing: .18em; }
.product-chip { width: max-content; display: flex; align-items: center; gap: 10px; margin-bottom: 24px; padding: 7px 11px; border: 1px solid rgba(44, 217, 160, .22); border-radius: 99px; color: #84a89b; font-size: 8px; font-weight: 700; letter-spacing: .14em; }
.dark-chip { color: #49677d; border-color: rgba(9, 78, 134, .2); background: rgba(17, 125, 203, .04); }.dark-chip i { background: var(--cyan); box-shadow: 0 0 0 5px rgba(25, 168, 255, .09), 0 0 17px rgba(25,168,255,.5); }
.project-copy h2 { margin-bottom: 28px; color: var(--white); font-size: clamp(48px, 5vw, 72px); }
.project-erp .project-copy h2 { color: var(--ink); }
.project-lead { margin-bottom: 35px; color: #91a8bc; font-size: 16px; line-height: 1.75; }
.project-erp .project-lead { color: #566e82; }
.feature-list { margin: 0; padding: 0; border-top: 1px solid var(--border); list-style: none; }
.feature-list li { display: flex; align-items: center; gap: 20px; padding: 18px 0; border-bottom: 1px solid var(--border); }
.feature-list li > span { color: var(--amber); font-family: ui-monospace, Consolas, monospace; font-size: 9px; }
.feature-list div { display: grid; gap: 4px; }.feature-list strong { color: #d9e9f8; font-size: 13px; }.feature-list small { color: #668199; font-size: 11px; }
.video-shell { border: 1px solid rgba(130, 198, 247, .18); border-radius: 18px; background: #091828; box-shadow: 0 50px 130px rgba(0, 0, 0, .4); overflow: hidden; }
.window-bar { height: 42px; padding: 0 15px; border-bottom: 1px solid rgba(255,255,255,.07); color: #688299; font-family: ui-monospace, Consolas, monospace; font-size: 8px; letter-spacing: .11em; }
.window-bar > div { display: flex; gap: 5px; }.window-bar > div i { width: 7px; height: 7px; border-radius: 50%; background: #385065; }.window-bar > div i:first-child{background:#f56b6b}.window-bar > div i:nth-child(2){background:#ffbd44}.window-bar > div i:last-child{background:#35c78c}
.window-live { display: flex; align-items: center; gap: 6px; color: #91a9bd; }.window-live i{width:5px;height:5px;border-radius:50%;background:var(--amber);box-shadow:0 0 8px var(--amber)}
.video-frame { position: relative; aspect-ratio: 16 / 9; background: #02070c; overflow: hidden; }
.video-frame video { width: 100%; height: 100%; object-fit: cover; opacity: .76; transition: opacity .35s ease, transform 1.2s var(--ease); }
.video-frame.playing video { opacity: 1; transform: scale(1.01); }
.video-frame::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(4,16,27,.05), rgba(4,16,27,.35)); }
.video-control { position: absolute; z-index: 3; inset: 50% auto auto 50%; display: grid; justify-items: center; gap: 9px; padding: 0; border: 0; color: var(--white); background: transparent; transform: translate(-50%, -50%); cursor: pointer; transition: opacity .25s ease, transform .3s var(--ease); }
.video-frame.playing .video-control { opacity: 0; pointer-events: none; transform: translate(-50%, -50%) scale(.85); }
.video-control-icon { display: grid; place-items: center; width: 76px; height: 76px; padding-left: 4px; border: 1px solid rgba(255,255,255,.6); border-radius: 50%; background: rgba(3,12,21,.5); box-shadow: 0 0 0 12px rgba(255,255,255,.04), 0 0 60px rgba(25,168,255,.3); backdrop-filter: blur(10px); }
.video-control small { font-size: 8px; font-weight: 700; letter-spacing: .16em; }
.video-overlay { position: absolute; z-index: 2; inset: auto 20px 18px; display: flex; align-items: center; gap: 10px; color: rgba(219,235,248,.65); font-family: ui-monospace, Consolas, monospace; font-size: 7px; letter-spacing: .11em; pointer-events: none; }.video-overlay i { width: 70px; height: 1px; background: linear-gradient(90deg,var(--cyan),transparent); }
.video-footer { height: 43px; padding: 0 16px; color: #607a91; font-family: ui-monospace, Consolas, monospace; font-size: 8px; letter-spacing: .1em; }
.architecture { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 70px; margin-top: 115px; padding-top: 40px; }
.architecture-line { position: absolute; top: 0; left: 8%; right: 8%; height: 1px; background: rgba(90, 161, 213, .22); overflow: hidden; }.architecture-pulse { display: block; width: 90px; height: 100%; background: linear-gradient(90deg,transparent,var(--cyan),transparent); animation: architecturePulse 4s linear infinite; }
.architecture-step { display: grid; grid-template-columns: 32px 1fr; align-items: center; column-gap: 12px; }.architecture-step small { grid-column: 2; color: var(--amber); font-family:ui-monospace,Consolas,monospace;font-size:8px}.architecture-step strong{grid-column:2;color:#d7e7f5;font-size:13px}.architecture-step span{grid-column:2;color:#5f7990;font-size:10px}
.step-icon { grid-row: 1 / 4; position: relative; width: 32px; height: 32px; border: 1px solid rgba(25,168,255,.27); border-radius: 8px; }.step-icon::before,.step-icon::after{content:"";position:absolute;background:var(--cyan)}.step-icon::before{width:9px;height:9px;left:10px;top:10px;border-radius:50%;box-shadow:0 0 12px var(--cyan)}.step-icon::after{width:8px;height:1px;right:-8px;top:15px}

.project-erp { padding-block: 155px; }
.erp-modules { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.erp-modules button { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border: 1px solid #d8e1e7; border-radius: 8px; color: #5e7487; background: #f8fafb; font-size: 11px; font-weight: 650; text-align: left; cursor: pointer; transition: color .25s, background .25s, border-color .25s; }
.erp-modules button span { color: #9aabba; font-family: ui-monospace,Consolas,monospace;font-size:8px}.erp-modules button.active{color:#fff;background:var(--ink-2);border-color:var(--ink-2)}.erp-modules button.active span{color:var(--amber)}
.dashboard-shell { position: relative; min-height: 540px; display: grid; grid-template-columns: 66px 1fr; border: 1px solid #d1dce4; border-radius: 18px; background: #fff; box-shadow: 0 45px 120px rgba(9,35,58,.16); overflow: visible; transform-style: preserve-3d; }
.dashboard-sidebar { display: flex; flex-direction: column; align-items: center; gap: 26px; padding: 20px 0; border-radius: 17px 0 0 17px; background: var(--ink-2); }.dashboard-sidebar img{width:34px;height:34px;margin-bottom:16px;filter:brightness(0) invert(1)}.dashboard-sidebar>i{position:relative;width:22px;height:4px;border-radius:4px;background:#334c62}.dashboard-sidebar>i::after{content:"";position:absolute;width:4px;height:4px;left:4px;border-radius:50%;background:#6b8398}.dashboard-sidebar>i.active{height:24px;background:rgba(25,168,255,.13)}.dashboard-sidebar>i.active::after{top:8px;left:9px;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}.dashboard-sidebar>span{width:28px;height:28px;margin-top:auto;border-radius:50%;background:linear-gradient(145deg,#1aa8ff,#0b4f98)}
.dashboard-main { padding: 26px 28px 28px; overflow: hidden; }.dashboard-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.dashboard-head small,.dash-kpis small,.dash-block-head small,.float-report small{display:block;color:#8a9cad;font-size:7px;font-weight:700;letter-spacing:.14em}.dashboard-head strong{display:block;margin-top:4px;color:var(--ink);font-size:21px}.avatar-stack{display:flex;align-items:center}.avatar-stack i,.avatar-stack span{width:27px;height:27px;margin-left:-7px;border:2px solid #fff;border-radius:50%;background:#b7cedd}.avatar-stack i:nth-child(2){background:#89b4ce}.avatar-stack i:nth-child(3){background:#5e92b3}.avatar-stack span{display:grid;place-items:center;color:#fff;background:var(--ink-3);font-size:7px}
.dash-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:15px}.dash-kpis>div{padding:15px;border:1px solid #e1e8ed;border-radius:10px;background:#fafcfd}.dash-kpis>div.accent{color:#fff;background:linear-gradient(145deg,#0c2a47,#0b5b9a);border-color:transparent}.dash-kpis strong{display:block;margin:7px 0 4px;color:var(--ink);font-size:27px;letter-spacing:-.05em}.dash-kpis .accent strong{color:#fff}.dash-kpis em{color:#71a286;font-size:8px;font-style:normal}.dash-kpis .accent em{color:#91d4ff}
.dash-content{display:grid;grid-template-columns:1.1fr .9fr;gap:12px}.dash-chart,.dash-flow{min-height:260px;padding:16px;border:1px solid #e1e8ed;border-radius:10px}.dash-block-head{display:flex;justify-content:space-between;align-items:center;color:#263e53;font-size:10px;font-weight:700}.bar-chart{height:160px;display:flex;align-items:flex-end;gap:10px;padding-top:24px;border-bottom:1px solid #e1e8ed;background:repeating-linear-gradient(to bottom,transparent 0,transparent 38px,#edf2f5 39px)}.bar-chart i{flex:1;height:var(--h);border-radius:4px 4px 0 0;background:linear-gradient(var(--cyan),#086ebf);transform:scaleY(0);transform-origin:bottom;transition:transform .9s var(--ease)}.dashboard-shell.in-view .bar-chart i{transform:scaleY(1)}.bar-chart i:nth-child(2){transition-delay:.08s}.bar-chart i:nth-child(3){transition-delay:.16s}.bar-chart i:nth-child(4){transition-delay:.24s}.bar-chart i:nth-child(5){transition-delay:.32s}.bar-chart i:nth-child(6){transition-delay:.4s}.bar-chart i:nth-child(7){transition-delay:.48s}.chart-days{display:flex;justify-content:space-around;margin-top:8px;color:#94a4b1;font-size:7px}.dash-flow ul{margin:18px 0 0;padding:0;list-style:none}.dash-flow li{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #edf1f4}.dash-flow li>i{width:7px;height:7px;border-radius:50%;background:var(--cyan)}.dash-flow li>i.done{background:var(--green)}.dash-flow li>i.warn{background:var(--amber)}.dash-flow li strong{display:block;color:#334c61;font-size:9px}.dash-flow li small{color:#98a8b5;font-size:7px}.dash-flow li>span{color:#7690a3;font-size:10px}
.float-report{position:absolute;right:-28px;bottom:42px;display:flex;align-items:center;gap:12px;padding:13px 16px;border:1px solid #d8e2e8;border-radius:12px;background:#fff;box-shadow:0 18px 45px rgba(13,42,65,.15);transform:translateZ(30px);animation:float 5.5s ease-in-out infinite}.float-report strong{display:block;margin-top:3px;color:#193950;font-size:11px}.report-ring{position:relative;width:32px;height:32px;border:4px solid #dcecf5;border-top-color:var(--cyan);border-radius:50%;animation:orbitSpin 5s linear infinite}.report-ring i{position:absolute;inset:7px;border-radius:50%;background:#ecf7fd}
.module-panels{display:grid;grid-template-columns:repeat(4,1fr);margin-top:80px;border:1px solid #d8e1e7;border-radius:14px;background:#fff;overflow:hidden}.module-panels article{min-height:210px;padding:28px;border-right:1px solid #e1e8ed;opacity:.5;transition:opacity .3s,background .3s,transform .3s}.module-panels article:last-child{border:0}.module-panels article.active{opacity:1;background:#f8fbfd;transform:translateY(-4px)}.module-panels article>span{color:var(--cyan-2);font-size:8px;font-weight:750;letter-spacing:.15em}.module-panels h3{margin:40px 0 10px;font-size:17px;line-height:1.25}.module-panels p{margin:0;color:#6d8293;font-size:11px;line-height:1.6}
.erp-flow-showcase { display: grid; grid-template-columns: 320px 1fr; gap: 40px; margin-top: 80px; padding: 32px; border: 1px solid #d7e1e8; border-radius: 18px; background: #fff; box-shadow: 0 30px 90px rgba(10,35,55,.07); }
.flow-showcase-nav { padding: 16px 4px; }.flow-showcase-nav h3{margin:0 0 34px;color:var(--ink);font-size:26px;letter-spacing:-.04em;line-height:1.15}.flow-buttons{display:grid;gap:7px}.flow-buttons button{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #dfe7ec;border-radius:8px;color:#607487;background:#f9fbfc;font-size:11px;font-weight:650;text-align:left;cursor:pointer;transition:.25s}.flow-buttons button span{font-family:ui-monospace,Consolas,monospace;color:#98a9b7;font-size:8px}.flow-buttons button.active{color:#fff;background:var(--ink-2);border-color:var(--ink-2)}.flow-buttons button.active span{color:var(--amber)}
.flow-figure{margin:0;border:1px solid #dce5eb;border-radius:11px;background:#f2f5f8;overflow:hidden}.flow-figure-bar{height:35px;display:flex;align-items:center;gap:5px;padding:0 12px;background:var(--ink-2)}.flow-figure-bar i{width:6px;height:6px;border-radius:50%;background:#3a5368}.flow-figure-bar i:first-child{background:#f56969}.flow-figure-bar i:nth-child(2){background:#ffbd44}.flow-figure-bar i:nth-child(3){background:#35c78c}.flow-figure-bar span{margin-left:auto;color:#6e879b;font-family:ui-monospace,Consolas,monospace;font-size:7px;letter-spacing:.11em}.flow-figure img{width:100%;height:360px;object-fit:contain;padding:20px;background:#f3f6f8;transition:opacity .2s ease,transform .4s var(--ease)}.flow-figure img.switching{opacity:0;transform:scale(.985)}.flow-figure figcaption{padding:11px 16px;color:#667c8e;background:#fff;border-top:1px solid #e1e8ed;font-size:9px;letter-spacing:.04em}

.approach { padding: 150px 0 170px; }
.approach::before { content:"";position:absolute;inset:0;background:radial-gradient(circle at 60% 45%,rgba(25,168,255,.1),transparent 45%);pointer-events:none }.approach .section-heading h2{color:var(--white)}.approach .section-heading h2 span{color:var(--cyan)}.approach .section-intro{color:#7790a5}.process{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:38px;margin-top:115px}.process-track{position:absolute;left:3%;right:3%;top:21px;height:1px;background:rgba(132,193,235,.15);overflow:hidden}.process-track i{display:block;width:35%;height:100%;background:linear-gradient(90deg,transparent,var(--cyan),transparent);transform:translateX(-110%);transition:transform 2.2s var(--ease)}.process.active .process-track i{transform:translateX(290%)}.process-step{position:relative;padding-top:58px}.process-step>span{position:absolute;top:-5px;left:18px;color:#4f6c84;font-family:ui-monospace,Consolas,monospace;font-size:9px}.process-node{position:absolute;z-index:2;top:14px;left:0;width:15px;height:15px;border:3px solid var(--ink);border-radius:50%;background:#476176;box-shadow:0 0 0 1px rgba(107,177,226,.25);transition:background .3s,box-shadow .3s}.process.active .process-node{background:var(--cyan);box-shadow:0 0 0 6px rgba(25,168,255,.1),0 0 24px rgba(25,168,255,.55)}.process-step small{color:var(--amber);font-size:8px;font-weight:700;letter-spacing:.16em}.process-step h3{margin:13px 0 12px;color:#e1edf8;font-size:25px}.process-step p{margin:0;color:#718ba1;font-size:13px;line-height:1.65}

.story { padding: 145px 0; overflow: hidden; }
.principles { margin: 0; list-style: none; }
.story::before{content:"";position:absolute;inset:-100px auto -100px 53%;width:1px;background:rgba(3,37,64,.14);transform:rotate(13deg)}.story::after{content:"DONE";position:absolute;right:-45px;bottom:-36px;color:rgba(4,39,64,.07);font-size:190px;font-weight:850;letter-spacing:-.08em;line-height:1}.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:100px}.story-copy{position:relative;z-index:1}.story h2{margin-bottom:30px}.story h2 span{color:#fff}.story-copy>p:not(.eyebrow){max-width:580px;margin-bottom:30px;color:#174d70;font-size:16px;line-height:1.75}.story blockquote{margin:0;padding-left:20px;border-left:2px solid var(--amber);color:#073052;font-size:14px;font-weight:650}.principles{position:relative;display:grid;gap:12px;padding-left:22px}.principles::before{content:"";position:absolute;top:24px;bottom:24px;left:5px;width:1px;background:linear-gradient(180deg,transparent,rgba(5,51,83,.35) 12%,rgba(5,51,83,.35) 88%,transparent)}.principle{position:relative;min-height:150px;display:grid;grid-template-columns:52px minmax(0,1fr) 12px;align-items:center;gap:24px;padding:24px 28px;border:1px solid rgba(5,51,83,.19);border-radius:14px;background:linear-gradient(120deg,rgba(250,253,255,.61),rgba(235,247,255,.25));box-shadow:0 18px 45px rgba(3,41,68,.08);overflow:visible}.principle::before{content:"";position:absolute;left:-22px;top:50%;width:22px;height:1px;background:rgba(5,51,83,.35)}.principle>span{display:grid;width:50px;height:50px;place-items:center;border:1px solid rgba(5,51,83,.22);border-radius:50%;color:#073554;background:rgba(255,255,255,.24);font-family:ui-monospace,Consolas,monospace;font-size:10px;font-weight:750;letter-spacing:.12em}.principle>div{position:relative;z-index:1;min-width:0;transition:transform .35s var(--ease)}.principle:hover>div{transform:translateX(5px)}.principle small{display:block;margin-bottom:8px;color:#17628f;font-family:ui-monospace,Consolas,monospace;font-size:8px;font-weight:750;letter-spacing:.18em}.principle h3{margin:0 0 7px;color:#052f50;font-size:21px;letter-spacing:-.025em}.principle p{max-width:470px;margin:0;color:#245c7e;font-size:12px;line-height:1.55}.principle>i{position:relative;width:9px;height:9px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 6px rgba(255,171,25,.13),0 0 20px rgba(255,171,25,.4)}.principle>i::before{content:"";position:absolute;right:9px;top:4px;width:42px;height:1px;background:linear-gradient(90deg,transparent,rgba(5,51,83,.24))}.principle:nth-child(2)>i{background:var(--cyan-2);box-shadow:0 0 0 6px rgba(11,121,232,.1),0 0 20px rgba(11,121,232,.35)}.principle:nth-child(3)>i{background:var(--green);box-shadow:0 0 0 6px rgba(49,212,160,.11),0 0 20px rgba(49,212,160,.35)}

.contact { min-height: 760px; display:flex;align-items:center;padding:140px 0;overflow:hidden }.contact::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(14,118,189,.16),transparent 48%)}.contact-inner{position:relative;z-index:2;text-align:center}.contact-mark{width:76px;height:76px;margin:0 auto 28px;filter:brightness(1.5) saturate(.85);animation:float 6s ease-in-out infinite}.contact .eyebrow{justify-content:center}.contact h2{margin-bottom:26px;color:var(--white);font-size:clamp(52px,7vw,100px)}.contact h2 span{color:var(--cyan)}.contact-inner>p:not(.eyebrow){max-width:680px;margin:0 auto 35px;color:#829bb0;font-size:16px;line-height:1.7}.contact-actions{display:flex;justify-content:center;align-items:center;gap:25px}.button-large{min-height:60px;padding-inline:29px}.contact-note{display:flex;align-items:center;gap:10px;color:#708ba1;font-size:10px;letter-spacing:.05em}.contact-orbit{position:absolute;left:50%;top:50%;width:780px;height:780px;border:1px solid rgba(25,168,255,.09);border-radius:50%;transform:translate(-50%,-50%);animation:orbitSpin 45s linear infinite}.contact-orbit::before,.contact-orbit::after{content:"";position:absolute;border:1px dashed rgba(25,168,255,.09);border-radius:50%}.contact-orbit::before{inset:90px}.contact-orbit::after{inset:190px}.contact-orbit i{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--amber);box-shadow:0 0 20px rgba(255,171,25,.65)}.contact-orbit i:nth-child(1){top:8%;left:28%}.contact-orbit i:nth-child(2){right:8%;top:45%}.contact-orbit i:nth-child(3){bottom:12%;left:30%}.contact-orbit i:nth-child(4){left:4%;top:45%}

.site-footer{padding:65px 0 30px;border-top:1px solid rgba(255,255,255,.08);background:#030a12}.footer-grid{display:grid;grid-template-columns:210px 1fr auto;align-items:start;gap:60px}.footer-brand{width:170px}.site-footer p{max-width:340px;margin:8px 0 0;color:#5f778c;font-size:12px;line-height:1.65}.site-footer nav{display:flex;gap:25px;margin-top:9px}.site-footer nav a{color:#7a91a5;font-size:10px;transition:color .2s}.site-footer nav a:hover{color:var(--white)}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-top:55px;padding-top:22px;border-top:1px solid rgba(255,255,255,.07);color:#40566a;font-family:ui-monospace,Consolas,monospace;font-size:8px;letter-spacing:.1em}.footer-bottom i{color:var(--green);font-style:normal}.footer-bottom a{transition:color .2s}.footer-bottom a:hover{color:var(--cyan)}
.site-footer p{color:#758ca0}.footer-bottom{color:#758ca0;font-size:9px}
.toast{position:fixed;z-index:200;left:50%;bottom:25px;max-width:min(90%,500px);padding:12px 18px;border:1px solid rgba(127,198,247,.2);border-radius:999px;color:#dcebf7;background:rgba(7,24,40,.93);box-shadow:0 15px 60px rgba(0,0,0,.45);backdrop-filter:blur(15px);font-size:11px;transform:translate(-50%,150%);transition:transform .5s var(--ease)}.toast.show{transform:translate(-50%,0)}

.reveal { opacity: 0; transform: translateY(30px); transition: opacity .8s var(--ease), transform .8s var(--ease); }
.reveal.in-view { opacity: 1; transform: translateY(0); }

@keyframes titleIn{to{transform:translateY(0)}}
@keyframes glassSweep{0%,15%{transform:translateX(-120%)}38%,100%{transform:translateX(140%)}}
@keyframes statusPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}
@keyframes drawSignal{to{stroke-dashoffset:0}}
@keyframes scan{from{left:-100px}to{left:100%}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes orbitSpin{to{transform:rotate(360deg)}}
@keyframes scrollCue{0%{inset:-100% 0 100%}50%,100%{inset:100% 0 -100%}}
@keyframes ticker{to{transform:translateX(-50%)}}
@keyframes growBar{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes flowDot{from{transform:translateX(0)}to{transform:translateX(70px)}}
@keyframes architecturePulse{from{transform:translateX(-100px)}to{transform:translateX(calc(100vw - 100px))}}

@media (max-width: 1120px) {
  :root { --header-h: 74px; }
  .site-header{grid-template-columns:150px 1fr auto;padding-inline:28px}.site-nav{gap:22px}.header-cta{display:none}
  .hero-grid{grid-template-columns:1fr .9fr;gap:30px}.hero-stage{min-height:520px}.stage-main{left:0;right:0}.signal-screen{height:255px}
  .capability-grid{grid-template-columns:1fr 1fr}.capability-feature{grid-row:span 1}.capability-wide{padding-right:34px;grid-template-columns:1fr 1fr}.flow-mini{position:relative;top:auto;right:auto;width:100%;grid-column:1/-1;transform:none}.capability-wide{min-height:250px}
  .project-grid,.project-grid.reverse{grid-template-columns:1fr;gap:60px}.project-grid.reverse .project-copy{order:0}.project-copy{max-width:760px}.video-shell,.dashboard-shell{width:min(100%,850px);margin-inline:auto}.architecture{gap:28px}.module-panels{grid-template-columns:1fr 1fr}.module-panels article:nth-child(2){border-right:0}.module-panels article:nth-child(-n+2){border-bottom:1px solid #e1e8ed}
  .erp-flow-showcase{grid-template-columns:1fr}.flow-buttons{grid-template-columns:repeat(3,1fr)}
}

@media (max-width: 820px) {
  .container{width:min(calc(100% - 36px),var(--container))}.site-header{height:68px;grid-template-columns:1fr auto;padding-inline:18px}.brand{position:relative;z-index:12;width:130px}.nav-toggle{position:relative;z-index:12;display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(255,255,255,.15);border-radius:50%;background:rgba(255,255,255,.03);cursor:pointer}.nav-toggle span{grid-area:1/1;width:16px;height:1px;background:#fff;transition:transform .3s var(--ease)}.nav-toggle span:first-child{transform:translateY(-3px)}.nav-toggle span:last-child{transform:translateY(3px)}.nav-toggle[aria-expanded="true"] span:first-child{transform:rotate(45deg)}.nav-toggle[aria-expanded="true"] span:last-child{transform:rotate(-45deg)}
  .site-nav{position:absolute;z-index:10;top:100%;left:0;width:100vw;height:calc(100svh - 68px);display:flex;flex-direction:column;justify-content:center;gap:22px;background:#04101c;box-shadow:0 30px 80px rgba(0,0,0,.5);transform:translateX(100%);transition:transform .5s var(--ease)}.site-nav.open{transform:translateX(0)}.site-nav a{font-size:25px;letter-spacing:-.03em}
  .hero{padding-top:115px;min-height:auto}.hero-grid{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-copy .eyebrow,.hero-proof{justify-content:center}.hero-lead{margin-inline:auto}.hero-actions{justify-content:center}.hero-stage{min-height:530px;max-width:650px;width:100%;margin:0 auto}.scroll-cue{display:none}
  .split-heading,.projects-title-row{grid-template-columns:1fr;gap:32px}.section-intro,.projects-title-row p{max-width:600px;margin:0}.capability-grid{grid-template-columns:1fr 1fr}.capability-card{min-height:350px}.capability-feature{grid-column:1/-1}.capability-wide{grid-template-columns:1fr;gap:20px}.flow-mini{margin-top:20px}
  .project{padding-block:100px}.project-grid{gap:45px}.architecture{grid-template-columns:1fr 1fr;row-gap:50px}.architecture-line{display:none}.dashboard-shell{min-height:500px}.dash-content{grid-template-columns:1fr}.dash-flow{display:none}.float-report{right:15px}.erp-flow-showcase{padding:18px}.flow-figure img{height:290px}.process{grid-template-columns:1fr 1fr;gap:55px}.process-track{display:none}.story-grid{grid-template-columns:1fr;gap:55px}.story::before{display:none}.contact{min-height:680px}.contact-orbit{width:620px;height:620px}.footer-grid{grid-template-columns:1fr 1fr}.site-footer nav{justify-content:flex-end}.site-footer p{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;gap:15px}
}

@media (max-width: 580px) {
  .container{width:min(calc(100% - 28px),var(--container))}.hero-title{font-size:47px}.hero-title br:nth-of-type(2){display:none}.hero-lead{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}.hero-proof{gap:11px}.hero-proof>i{display:none}.hero-proof div{flex:1}.hero-stage{min-height:430px}.stage-main{top:68px;padding:11px;border-radius:13px;transform:none}.signal-screen{height:205px}.stage-topline{font-size:7px}.stage-metrics{gap:5px}.stage-metrics div{padding:8px}.stage-device{top:18px;right:5px}.stage-erp{left:4px;bottom:10px}.orbit-one{width:370px;height:370px}.orbit-two{width:290px;height:290px}.stage-node{display:none}
  .ticker span{padding:18px 20px}.expertise{padding:100px 0}.section-heading{margin-bottom:45px}.section-heading h2,.project-copy h2,.story h2{font-size:42px}.capability-grid{grid-template-columns:1fr}.capability-feature{grid-column:auto}.capability-card{min-height:330px;padding:26px}.capability-wide{min-height:330px}.flow-mini{display:grid;grid-template-columns:auto 1fr;gap:8px}.flow-mini i{width:30px;flex:none}.flow-mini i:last-of-type{display:none}.flow-mini span:last-child{grid-column:2}
  .projects-intro{padding:100px 0 60px}.projects-title-row h2{font-size:62px}.project{padding-block:80px}.project-lead{font-size:14px}.feature-list small{line-height:1.45}.video-shell{border-radius:12px}.window-bar{font-size:6px}.video-control-icon{width:62px;height:62px}.video-overlay{display:none}.architecture{grid-template-columns:1fr;margin-top:70px}.architecture-step{padding:13px;border:1px solid rgba(117,179,225,.1);border-radius:9px}.erp-modules{grid-template-columns:1fr}.dashboard-shell{grid-template-columns:45px 1fr;min-height:430px}.dashboard-sidebar{gap:22px}.dashboard-main{padding:17px 14px}.dash-kpis{grid-template-columns:1fr 1fr}.dash-kpis>div:last-child{grid-column:1/-1}.dash-chart{min-height:200px}.bar-chart{height:125px}.float-report{display:none}.module-panels{grid-template-columns:1fr;margin-top:55px}.module-panels article,.module-panels article:nth-child(2){min-height:170px;border-right:0;border-bottom:1px solid #e1e8ed}.module-panels h3{margin-top:24px}.flow-buttons{grid-template-columns:1fr}.flow-figure img{height:220px;padding:8px}.erp-flow-showcase{margin-top:55px}.process{grid-template-columns:1fr;gap:40px;margin-top:70px}.process-step{padding-left:50px;padding-top:0}.process-node{top:3px}.process-step>span{top:4px;left:20px}.principles{gap:9px;padding-left:13px}.principles::before{left:2px}.principle{min-height:0;grid-template-columns:42px minmax(0,1fr);gap:14px;padding:19px 17px}.principle::before{left:-13px;width:13px}.principle>span{width:40px;height:40px}.principle>i{display:none}.principle h3{font-size:18px}.principle p{font-size:11px}.contact{min-height:650px;padding-block:100px}.contact h2{font-size:47px}.contact-actions{flex-direction:column}.contact-mark{width:65px}.site-footer{padding-top:50px}.footer-grid{grid-template-columns:1fr}.site-footer nav{justify-content:flex-start;flex-wrap:wrap}.footer-bottom{display:grid;justify-items:start}.footer-bottom span:nth-child(2){line-height:1.6}
}

/* Final clarity and usability refinements */
.video-control small { display: none; }
.toast { opacity: 0; visibility: hidden; pointer-events: none; transform: translate(-50%, calc(100% + 50px)); transition: transform .5s var(--ease), opacity .2s ease, visibility 0s linear .5s; }
.toast.show { opacity: 1; visibility: visible; transform: translate(-50%, 0); transition-delay: 0s; }
#measurement .project-number { color: #718aa1; }
#erp .project-number { color: #4f687d; }

/* Project contact panel */
body.dialog-open { overflow: hidden; }
.header-cta,
.button,
.contact-close { cursor: pointer; }
.header-cta { font-family: inherit; }

.contact-dialog {
  position: fixed;
  inset: 0 0 0 auto;
  width: min(680px, 100vw);
  max-width: none;
  height: 100dvh;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--text);
  background: transparent;
  opacity: 1;
  overflow: hidden;
  transform: translateX(0);
  transition: transform .55s var(--ease), opacity .35s ease;
}
.contact-dialog::backdrop {
  background: rgba(1, 7, 14, .76);
  backdrop-filter: blur(10px) saturate(80%);
}
.contact-dialog.is-closing { opacity: .35; transform: translateX(100%); }
@starting-style {
  .contact-dialog[open] { opacity: .35; transform: translateX(100%); }
}

.contact-panel {
  position: relative;
  min-height: 100%;
  height: 100%;
  padding: 0 clamp(26px, 5vw, 62px) 48px;
  border-left: 1px solid rgba(89, 185, 250, .25);
  background:
    linear-gradient(rgba(25, 168, 255, .045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(25, 168, 255, .045) 1px, transparent 1px),
    linear-gradient(145deg, #071522 0%, #05101c 58%, #07192a 100%);
  background-size: 38px 38px, 38px 38px, auto;
  box-shadow: -35px 0 100px rgba(0, 0, 0, .45);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-color: rgba(25, 168, 255, .32) transparent;
}
.contact-panel::before {
  content: "";
  position: absolute;
  top: 0;
  left: 68%;
  width: 1px;
  height: 320px;
  background: linear-gradient(180deg, var(--cyan), transparent);
  opacity: .35;
  pointer-events: none;
}
.contact-panel__glow {
  position: absolute;
  top: -170px;
  right: -150px;
  width: 430px;
  height: 430px;
  border-radius: 50%;
  background: rgba(25, 168, 255, .13);
  filter: blur(85px);
  pointer-events: none;
}
.contact-panel > *:not(.contact-panel__glow) { position: relative; z-index: 1; }

.contact-panel__head {
  position: sticky;
  z-index: 5 !important;
  top: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 92px;
  padding: 15px 0;
  border-bottom: 1px solid rgba(139, 195, 235, .13);
  background: linear-gradient(180deg, rgba(7, 21, 34, .98) 68%, rgba(7, 21, 34, .82));
  backdrop-filter: blur(18px);
}
.contact-panel__head > div { display: grid; gap: 8px; }
.contact-panel__head strong { color: #dcebf7; font-size: 11px; letter-spacing: .2em; }
.contact-panel__index {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #6f8ca3;
  font-family: ui-monospace, Consolas, monospace;
  font-size: 8px;
  letter-spacing: .17em;
}
.contact-panel__index i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 15px rgba(49, 212, 160, .8);
}
.contact-close {
  position: relative;
  width: 46px;
  height: 46px;
  padding: 0;
  border: 1px solid rgba(139, 195, 235, .17);
  border-radius: 50%;
  color: var(--white);
  background: rgba(255, 255, 255, .025);
  transition: border-color .25s ease, background .25s ease, transform .35s var(--ease);
}
.contact-close:hover { border-color: rgba(25, 168, 255, .65); background: rgba(25, 168, 255, .09); transform: rotate(90deg); }
.contact-close span { position: absolute; top: 22px; left: 14px; width: 17px; height: 1px; background: currentColor; }
.contact-close span:first-child { transform: rotate(45deg); }
.contact-close span:last-child { transform: rotate(-45deg); }

.contact-panel__intro { padding-top: 52px; }
.contact-panel__intro .eyebrow { margin-bottom: 18px; color: #7f9bb2; }
.contact-panel__intro .eyebrow::before { content: ""; width: 24px; height: 1px; background: var(--cyan); }
.contact-panel__intro h2 {
  margin: 0 0 20px;
  color: var(--white);
  font-size: clamp(46px, 5.2vw, 72px);
  font-weight: 610;
  letter-spacing: -.06em;
  line-height: .96;
}
.contact-panel__intro h2 span { color: var(--cyan); }
.contact-panel__intro > p:last-child { max-width: 500px; margin: 0; color: #8099ad; font-size: 14px; line-height: 1.7; }

.contact-form { margin-top: 44px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 23px 15px; }
.form-field { position: relative; display: grid; gap: 9px; min-width: 0; color: #9fb3c5; }
.form-field--full { grid-column: 1 / -1; }
.form-field > span,
.reply-field legend {
  color: #a8bdd0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .09em;
}
.form-field em { color: var(--cyan); font-style: normal; }
.form-field :is(input, select, textarea) {
  width: 100%;
  border: 1px solid rgba(133, 185, 222, .16);
  border-radius: 9px;
  outline: 0;
  color: #edf7ff;
  background: rgba(255, 255, 255, .035);
  transition: border-color .25s ease, background .25s ease, box-shadow .25s ease;
}
.form-field :is(input, select) { height: 50px; padding: 0 14px; }
.form-field textarea { min-height: 132px; padding: 14px; line-height: 1.55; resize: vertical; }
.form-field select { appearance: none; padding-right: 40px; color-scheme: dark; background-image: linear-gradient(45deg, transparent 50%, #6e8ca4 50%), linear-gradient(135deg, #6e8ca4 50%, transparent 50%); background-position: calc(100% - 19px) 21px, calc(100% - 14px) 21px; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; }
.form-field :is(input, textarea)::placeholder { color: #536b7f; }
.form-field :is(input, select, textarea):hover { border-color: rgba(133, 185, 222, .3); }
.form-field :is(input, select, textarea):focus { border-color: var(--cyan); background-color: rgba(25, 168, 255, .055); box-shadow: 0 0 0 3px rgba(25, 168, 255, .09), 0 12px 35px rgba(0, 0, 0, .15); }
.form-field :is(input, select, textarea)[aria-invalid="true"] { border-color: var(--red); box-shadow: 0 0 0 3px rgba(243, 100, 108, .08); }
.field-error { min-height: 12px; margin: -3px 0 -9px; color: #ff8e95; font-size: 9px; line-height: 1.35; }
.field-meta { position: absolute; right: 12px; bottom: 20px; color: #567086; font-size: 8px; pointer-events: none; }
.field-meta b { font-weight: 500; }
.form-trap { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }

.reply-field { margin: 0; padding: 0; border: 0; }
.reply-field legend { margin-bottom: 10px; }
.reply-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.reply-options label { position: relative; cursor: pointer; }
.reply-options input { position: absolute; opacity: 0; pointer-events: none; }
.reply-options span {
  display: grid;
  min-height: 44px;
  place-items: center;
  border: 1px solid rgba(133, 185, 222, .16);
  border-radius: 8px;
  color: #7892a8;
  background: rgba(255, 255, 255, .025);
  font-size: 10px;
  transition: color .2s ease, border-color .2s ease, background .2s ease;
}
.reply-options input:checked + span { color: #e7f4ff; border-color: rgba(25, 168, 255, .58); background: rgba(25, 168, 255, .1); }
.reply-options input:focus-visible + span { outline: 2px solid var(--cyan); outline-offset: 2px; }

.consent-field { display: grid; grid-template-columns: 18px 1fr; align-items: start; gap: 10px; cursor: pointer; }
.consent-field input { appearance: none; width: 18px; height: 18px; margin: 0; border: 1px solid rgba(133, 185, 222, .3); border-radius: 4px; background: rgba(255, 255, 255, .035); cursor: pointer; }
.consent-field input:checked { border-color: var(--cyan); background: var(--cyan) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 8 3 3 7-7' fill='none' stroke='%2306111f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px no-repeat; }
.consent-field span { color: #70899e; font-size: 10px; line-height: 1.55; }
.consent-error { margin-top: -18px; }

.contact-form__footer { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 18px; margin-top: 30px; padding-top: 24px; border-top: 1px solid rgba(139, 195, 235, .12); }
.contact-status { min-height: 20px; margin: 0; color: #8da7bc; font-size: 11px; line-height: 1.5; }
.contact-status.is-error { color: #ff9299; }
.contact-status.is-success { color: var(--green); }
.contact-submit { min-width: 185px; }
.contact-submit:disabled { cursor: wait; opacity: .7; }
.contact-submit.is-loading i { animation: orbitSpin 1s linear infinite; }
.contact-dialog :focus-visible { outline: 2px solid var(--cyan); outline-offset: 3px; }

@media (max-width: 700px) {
  .contact-dialog { width: 100vw; }
  .contact-panel { padding: 0 20px max(32px, env(safe-area-inset-bottom)); border-left: 0; }
  .contact-panel__head { min-height: 76px; }
  .contact-panel__intro { padding-top: 36px; }
  .contact-panel__intro h2 { font-size: clamp(44px, 14vw, 62px); }
  .contact-form { margin-top: 34px; }
  .form-grid { grid-template-columns: 1fr; gap: 21px; }
  .form-field--full { grid-column: auto; }
  .reply-options { grid-template-columns: 1fr; }
  .contact-form__footer { grid-template-columns: 1fr; }
  .contact-submit { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .contact-dialog { transition-duration: .01ms; }
}
.window-bar, .video-footer { color: #7893aa; }
.architecture-step span { color: #718ba1; }
.erp-modules button span, .flow-buttons button span { color: #536b80; }
.dashboard-head small, .dash-kpis small, .dash-block-head small, .float-report small { color: #596f82; }
.dash-kpis em { color: #3f7258; }
.dash-kpis .accent small { color: #b7dcf4; }
.dash-kpis .accent em { color: #b8e4ff; }
.chart-days { color: #596f82; }
.module-panels article { opacity: 1; }
.module-panels article > span { color: #0868c7; }
.module-panels p { color: #526a7e; }
.flow-figure figcaption { color: #596f81; }
.story { color: var(--ink); background-color: #edf3f7; background-image: linear-gradient(rgba(7,48,82,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(7,48,82,.035) 1px, transparent 1px); background-size: 54px 54px; isolation: isolate; }
.story::before { inset: 0; width: auto; background: radial-gradient(circle at 12% 18%, rgba(25,168,255,.12), transparent 31%), radial-gradient(circle at 86% 82%, rgba(11,121,232,.08), transparent 27%); transform: none; pointer-events: none; }
.story::after { right: -35px; bottom: -28px; color: rgba(4,39,64,.035); }
.story-grid { position: relative; z-index: 1; grid-template-columns: .84fr 1.16fr; gap: 90px; }
.story .eyebrow.dark { color: #526a7e; }
.story h2 { color: var(--ink); }
.story h2 span { position: static; color: var(--cyan-2); background: none; box-shadow: none; }
.story-copy > p:not(.eyebrow) { color: #526a7e; }
.story-signal { width: max-content; display: flex; align-items: center; gap: 10px; padding: 11px 14px; border: 1px solid #d2dfe8; border-radius: 999px; color: #3f5c71; background: rgba(255,255,255,.68); box-shadow: 0 14px 35px rgba(8,39,62,.06); font-family: ui-monospace,Consolas,monospace; font-size: 8px; font-weight: 750; letter-spacing: .13em; }
.story-signal i { position: relative; width: 38px; height: 1px; background: linear-gradient(90deg, rgba(11,121,232,.25), var(--cyan-2), rgba(11,121,232,.25)); }
.story-signal i::after { content: ""; position: absolute; top: -3px; left: 50%; width: 7px; height: 7px; border-radius: 50%; background: var(--cyan-2); box-shadow: 0 0 0 4px rgba(11,121,232,.08); transform: translateX(-50%); }
.principles::before { background: linear-gradient(180deg, transparent, rgba(11,121,232,.35) 12%, rgba(11,121,232,.35) 88%, transparent); }
.principle { border-color: #d2dee7; background: rgba(255,255,255,.86); box-shadow: 0 18px 50px rgba(7,35,56,.07); }
.principle::before { background: rgba(11,121,232,.4); }
.principle.reveal { transition: opacity .8s var(--ease), transform .8s var(--ease), background .3s ease, border-color .3s ease, box-shadow .3s ease; }
.principle:hover { border-color: rgba(11,121,232,.36); background: #fff; box-shadow: 0 22px 60px rgba(7,48,82,.12); }
.principle > span { border-color: var(--ink-2); color: #fff; background: var(--ink-2); box-shadow: 0 0 0 6px rgba(11,121,232,.07); }
.principle small { color: #0868c7; }
.principle h3 { color: var(--ink-2); }
.principle p { color: #526a7e; }
.principle > i::before { background: linear-gradient(90deg, transparent, rgba(11,121,232,.3)); }

@media (max-width: 820px) {
  .story-grid { grid-template-columns: 1fr; gap: 55px; }
}

@media (max-width: 580px) {
  .story { padding-block: 105px; }
  .story-signal { max-width: 100%; gap: 8px; padding: 10px 12px; }
  .story-signal i { width: 25px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
  .reveal { opacity: 1; transform: none; }
  .hero-title .word-inner { transform: none; }
  #signal-field { display: none; }
}

/* Language control, accessible tabs, and contact success state */
.site-header { grid-template-columns: 190px minmax(0, 1fr) auto auto; gap: 22px; }
.language-switcher {
  position: relative;
  z-index: 12;
  display: grid;
  grid-template-columns: 36px 1px 36px;
  align-items: center;
  min-height: 38px;
  padding: 2px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  background: rgba(255,255,255,.035);
  backdrop-filter: blur(12px);
}
.language-switcher > span { width: 1px; height: 15px; background: rgba(255,255,255,.13); }
.language-switcher button {
  width: 36px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  color: #71899e;
  background: transparent;
  font-family: ui-monospace, Consolas, monospace;
  font-size: 9px;
  font-weight: 750;
  letter-spacing: .08em;
  cursor: pointer;
  transition: color .2s ease, background .2s ease, box-shadow .2s ease;
}
.language-switcher button.active { color: var(--ink); background: var(--white); box-shadow: 0 3px 14px rgba(0,0,0,.22); }
.language-switcher button:focus-visible { outline: 2px solid var(--cyan); outline-offset: 3px; }
.mobile-nav-cta { display: none; }

.contact-success {
  min-height: calc(100dvh - 92px);
  align-content: center;
  justify-items: start;
  padding: 58px 0 max(64px, env(safe-area-inset-bottom));
  animation: successEnter .48s var(--ease) both;
}
.contact-success:not([hidden]) { display: grid; }
.success-signal { position: relative; width: 108px; height: 108px; margin-bottom: 36px; }
.success-signal > span { position: absolute; inset: 0; border: 1px solid rgba(25,168,255,.24); border-radius: 50%; box-shadow: 0 0 60px rgba(25,168,255,.12); }
.success-signal > span::before,
.success-signal > span::after { content: ""; position: absolute; border: 1px dashed rgba(25,168,255,.17); border-radius: 50%; }
.success-signal > span::before { inset: 10px; }
.success-signal > span::after { inset: 23px; }
.success-signal > span i { position: absolute; top: -4px; left: 50%; width: 8px; height: 8px; border-radius: 50%; background: var(--amber); box-shadow: 0 0 18px rgba(255,171,25,.7); transform: translateX(-50%); }
.success-signal svg { position: absolute; inset: 24px; width: 60px; height: 60px; padding: 13px; border-radius: 50%; background: rgba(25,168,255,.12); }
.success-signal path { fill: none; stroke: var(--cyan); stroke-width: 7; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 70; animation: successCheck .7s .18s var(--ease) both; }
.contact-success .eyebrow { margin-bottom: 18px; color: #7f9bb2; }
.contact-success .eyebrow::before { content: ""; width: 24px; height: 1px; background: var(--green); }
.contact-success h2 { margin: 0 0 22px; color: var(--white); font-size: clamp(52px, 6vw, 76px); font-weight: 610; letter-spacing: -.06em; line-height: .95; }
.contact-success h2 span { color: var(--cyan); }
.contact-success > p:not(.eyebrow) { max-width: 510px; margin: 0; color: #88a0b3; font-size: 14px; line-height: 1.72; }
.success-reference { width: 100%; display: flex; justify-content: space-between; gap: 20px; margin-top: 34px; padding: 17px 0; border-top: 1px solid rgba(139,195,235,.12); border-bottom: 1px solid rgba(139,195,235,.12); color: #668298; font-family: ui-monospace,Consolas,monospace; font-size: 8px; letter-spacing: .13em; }
.success-reference strong { margin-left: 8px; color: #dbeaf5; font-weight: 700; }
.success-reference span:last-child { display: flex; align-items: center; gap: 8px; color: #87a497; }
.success-reference span:last-child i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 14px rgba(49,212,160,.75); }
.success-actions { width: 100%; display: flex; align-items: center; gap: 22px; margin-top: 31px; }
.success-actions .button { min-height: 54px; }
.success-new { padding: 12px 0; border: 0; border-bottom: 1px solid rgba(139,195,235,.2); color: #8aa3b7; background: transparent; font-size: 11px; font-weight: 650; cursor: pointer; }
.success-auto { width: 100%; display: grid; gap: 10px; margin-top: 34px; }
.success-auto > span { height: 2px; background: rgba(139,195,235,.1); overflow: hidden; }
.success-auto > span i { display: block; width: 100%; height: 100%; background: linear-gradient(90deg,var(--cyan),var(--green)); transform: scaleX(0); transform-origin: left; }
.contact-success.is-counting .success-auto > span i { animation: successCountdown var(--success-duration, 6500ms) linear forwards; }
.contact-success.is-paused .success-auto > span i { animation-play-state: paused; }
.success-auto p { margin: 0; color: #5e778c; font-size: 9px; letter-spacing: .04em; }

@keyframes successEnter { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes successCheck { from { stroke-dashoffset: 70; } to { stroke-dashoffset: 0; } }
@keyframes successCountdown { to { transform: scaleX(1); } }

@media (max-width: 1120px) {
  .site-header { grid-template-columns: 150px minmax(0, 1fr) auto; }
}

@media (hover: hover) and (pointer: fine) {
  .language-switcher button:not(.active):hover { color: var(--white); }
  .success-new:hover { color: var(--white); border-color: var(--cyan); }
}

/* Touch devices use a calmer, deterministic motion system. */
@media (hover: none), (pointer: coarse) {
  #signal-field { display: none !important; }
  .stage-main::before,
  .scan-line,
  .stage-float,
  .stage-orbit,
  .chip-visual::before,
  .chip-visual::after,
  .flow-mini i::after,
  .architecture-pulse,
  .float-report,
  .report-ring,
  .contact-mark,
  .contact-orbit { animation: none !important; }
  .stage-float { transform: none; }
  .capability-card::after { opacity: 0 !important; }
  .capability-card > a span,
  .principle > div,
  .header-cta i { transform: none !important; }
  .button-primary::before { display: none; }
  .button-ghost:hover { color: #a9bed1; border-color: rgba(255,255,255,.18); }
  .site-nav a:hover { color: #a8b9ca; }
  .site-nav a:hover::after { transform: scaleX(0); }
  .site-nav a.active::after { transform: scaleX(1); }
  .contact-close:hover { border-color: rgba(139,195,235,.17); background: rgba(255,255,255,.025); transform: none; }
  .form-field :is(input, select, textarea):hover { border-color: rgba(133,185,222,.16); }
  .principle:hover { border-color: #d2dee7; background: rgba(255,255,255,.86); box-shadow: 0 18px 50px rgba(7,35,56,.07); }
  :is(.button, .header-cta, .mobile-nav-cta, .erp-modules button, .flow-buttons button, .language-switcher button):active { transform: scale(.98); }
  .noise { opacity: .13; }
  .site-header.scrolled,
  .contact-panel__head { backdrop-filter: blur(9px); }
}

@media (max-width: 820px) {
  .site-header,
  .site-header.scrolled { height: 68px; grid-template-columns: minmax(0, 1fr) auto auto; gap: 9px; }
  .language-switcher { grid-template-columns: 44px 1px 44px; min-height: 50px; }
  .language-switcher button { width: 44px; height: 44px; }
  .nav-toggle { width: 46px; height: 46px; }
  .site-nav {
    position: fixed;
    top: 68px;
    left: 0;
    width: 100vw;
    height: calc(100dvh - 68px);
    padding: 36px 24px max(36px, env(safe-area-inset-bottom));
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    transform: translateY(-12px);
    transition: opacity .26s ease, transform .34s var(--ease), visibility 0s linear .34s;
  }
  .site-nav.open { visibility: visible; pointer-events: auto; opacity: 1; transform: none; transition-delay: 0s; }
  .site-nav a { min-height: 48px; display: grid; place-items: center; }
  .mobile-nav-cta { display: flex; align-items: center; justify-content: center; gap: 15px; min-width: min(100%, 280px); min-height: 52px; margin-top: 14px; padding: 0 22px; border: 0; border-radius: 999px; color: var(--ink); background: var(--white); font-size: 12px; font-weight: 750; }
  .mobile-nav-cta i { font-style: normal; }
  .reveal { transform: translateY(16px); transition-duration: .48s; }
  .contact-dialog { transition: opacity .25s ease, transform .3s var(--ease); }
  .contact-dialog.is-closing { opacity: 0; transform: translateY(24px); }
  .contact-dialog::backdrop { backdrop-filter: blur(5px); }
  @starting-style { .contact-dialog[open] { opacity: 0; transform: translateY(24px); } }
  .contact-panel { box-shadow: 0 -20px 65px rgba(0,0,0,.35); background-size: 52px 52px, 52px 52px, auto; }
  #signal-field { display: none !important; }
  .stage-main::before,
  .scan-line,
  .stage-float,
  .stage-orbit,
  .chip-visual::before,
  .chip-visual::after,
  .flow-mini i::after,
  .architecture-pulse,
  .float-report,
  .report-ring,
  .contact-mark,
  .contact-orbit { animation: none !important; }
}

@media (max-width: 580px) {
  .hero-stage.reveal { opacity: 1; transform: none; }
  .erp-modules,
  .flow-buttons {
    display: flex;
    width: calc(100vw - 28px);
    gap: 8px;
    padding: 2px 2px 8px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
  .erp-modules::-webkit-scrollbar,
  .flow-buttons::-webkit-scrollbar { display: none; }
  .erp-modules button,
  .flow-buttons button { flex: 0 0 auto; min-width: 148px; min-height: 48px; scroll-snap-align: start; }
  .module-panels { margin-top: 24px; border-radius: 12px; }
  .module-panels article,
  .module-panels article:nth-child(2) { min-height: 190px; border: 0; animation: mobilePanelIn .34s var(--ease) both; }
  .module-panels article[hidden] { display: none; }
  .erp-flow-showcase { padding: 16px 14px 14px; overflow: hidden; }
  .flow-buttons { width: 100%; }
  .flow-figure { overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-color: rgba(11,121,232,.35) transparent; }
  .flow-figure-bar,
  .flow-figure img,
  .flow-figure figcaption { min-width: 680px; }
  .flow-figure img { width: 680px; height: auto; min-height: 275px; padding: 12px; }
  .contact-panel { padding-inline: 18px; }
  .contact-panel__intro { padding-top: 30px; }
  .contact-panel__intro h2 { font-size: clamp(42px, 13.5vw, 56px); }
  .contact-form { margin-top: 29px; }
  .reply-options { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .reply-options span { min-height: 48px; padding-inline: 4px; font-size: 9px; }
  .contact-success { min-height: calc(100dvh - 76px); padding-top: 42px; align-content: center; }
  .success-signal { width: 92px; height: 92px; margin-bottom: 28px; }
  .success-signal svg { inset: 20px; width: 52px; height: 52px; }
  .contact-success h2 { font-size: clamp(48px, 16vw, 64px); }
  .success-reference { display: grid; gap: 11px; }
  .success-actions { display: grid; gap: 13px; }
  .success-actions .button { width: 100%; }
  .success-new { justify-self: start; }
}

@media (max-width: 360px) {
  .site-header,
  .site-header.scrolled { gap: 6px; padding-inline: 12px; }
  .brand { width: 112px; }
}

@keyframes mobilePanelIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
