:root {
  --ink: #081512;
  --ink-2: #102a23;
  --paper: #f7f8f4;
  --paper-2: #e9eee9;
  --white: #fff;
  --lime: #caff45;
  --lime-dark: #91c617;
  --teal: #37d6aa;
  --muted: #52615b;
  --line: rgba(8, 21, 18, .19);
  --mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  --sans: "Aptos", "Segoe UI", Helvetica, Arial, sans-serif;
  --radius: 3px;
  --container: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
a { color: inherit; }
button, input, textarea, select { font: inherit; }
svg { display: block; }
.container { width: min(calc(100% - 48px), var(--container)); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 1000; top: 8px; left: 8px; padding: 10px 16px; background: var(--lime); color: var(--ink); transform: translateY(-150%); transition: transform .2s; }
.skip-link:focus { transform: translateY(0); }

.site-header { position: fixed; z-index: 100; inset: 0 0 auto; height: 90px; color: white; border-bottom: 1px solid rgba(255,255,255,.13); transition: background .25s, height .25s; }
.site-header.scrolled { height: 78px; background: rgba(8,17,15,.94); backdrop-filter: blur(14px); }
.nav-wrap { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; color: inherit; text-decoration: none; line-height: 1; }
.brand-logo { display: block; width: 310px; height: auto; transition: width .25s; }
.site-header.scrolled .brand-logo { width: 282px; }
.main-nav { height: 100%; display: flex; align-items: center; gap: 31px; }
.main-nav a { position: relative; color: rgba(255,255,255,.86); font-size: 13px; font-weight: 600; text-decoration: none; transition: color .2s; }
.main-nav a:not(.nav-cta)::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -7px; height: 1px; background: var(--lime); transition: right .2s; }
.main-nav a:hover, .main-nav a.active { color: white; }
.main-nav a:hover::after, .main-nav a.active::after { right: 0; }
.main-nav .nav-cta { align-self: stretch; display: flex; align-items: center; gap: 26px; padding: 0 24px; color: var(--ink); background: var(--lime); }
.nav-cta span { font-size: 19px; }
.menu-toggle { display: none; padding: 10px; border: 0; background: transparent; color: white; }
.menu-toggle > span:not(.sr-only) { display: block; width: 24px; height: 2px; margin: 5px; background: currentColor; }

.hero { position: relative; min-height: 770px; padding: 176px 0 0; overflow: hidden; color: white; background: var(--ink); }
.hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 80% 35%, rgba(58,195,157,.12), transparent 27%), linear-gradient(120deg, transparent 55%, rgba(201,255,70,.035)); }
.hero-grid { position: absolute; inset: 0; opacity: .32; background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(to right, transparent 0, #000 35%, #000); }
.hero-layout { position: relative; display: grid; grid-template-columns: 1.02fr .98fr; gap: 70px; align-items: center; }
.eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 28px; color: rgba(255,255,255,.72); font: 500 11px/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.eyebrow span { width: 29px; height: 1px; background: var(--lime); }
.hero h1, .section h2 { margin: 0; font-size: clamp(42px, 5.15vw, 76px); line-height: 1.04; letter-spacing: -.055em; font-weight: 500; }
.hero h1 em, .section h2 em { color: var(--lime); font-style: normal; }
.hero-lead { max-width: 660px; margin: 28px 0 34px; color: rgba(255,255,255,.78); font-size: 18px; line-height: 1.75; }
.hero-actions { display: flex; align-items: center; gap: 34px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 30px; min-height: 55px; padding: 0 24px; border: 1px solid transparent; border-radius: var(--radius); font-size: 13px; font-weight: 700; text-decoration: none; cursor: pointer; transition: transform .2s, background .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: var(--ink); background: var(--lime); }
.button-primary:hover { background: var(--lime-dark); }
.text-link { color: white; font-size: 13px; font-weight: 600; text-decoration: none; }
.text-link span { margin-left: 14px; color: var(--lime); }
.hero-tags { display: flex; flex-wrap: wrap; gap: 11px; margin: 44px 0 0; padding: 0; list-style: none; }
.hero-tags li { padding: 10px 14px; border: 1px solid rgba(255,255,255,.3); color: rgba(255,255,255,.84); font: 500 11px/1 var(--mono); letter-spacing: .07em; text-transform: uppercase; }

.system-visual { position: relative; height: 452px; border: 1px solid rgba(255,255,255,.14); background: rgba(12,28,24,.74); box-shadow: 0 35px 100px rgba(0,0,0,.28); backdrop-filter: blur(4px); }
.visual-head { height: 48px; padding: 0 18px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.16); color: rgba(255,255,255,.7); font: 500 11px var(--mono); letter-spacing: .09em; }
.live { color: var(--teal); }.live i { display: inline-block; width: 5px; height: 5px; margin-right: 5px; border-radius: 50%; background: currentColor; box-shadow: 0 0 8px currentColor; animation: pulse 2s infinite; }
.core-orbit { position: relative; height: 335px; overflow: hidden; }
.core-orbit::before, .core-orbit::after { content: ""; position: absolute; background: rgba(255,255,255,.06); }
.core-orbit::before { width: 1px; height: 100%; left: 50%; }.core-orbit::after { width: 100%; height: 1px; top: 50%; }
.orbit { position: absolute; left: 50%; top: 50%; border: 1px solid rgba(201,255,70,.16); border-radius: 50%; transform: translate(-50%,-50%); }
.orbit-one { width: 205px; height: 205px; animation: orbit-pulse 4s ease-in-out infinite; }.orbit-two { width: 310px; height: 310px; border-style: dashed; animation: spin 36s linear infinite; }
.connection-lines { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; overflow: visible; fill: none; stroke: rgba(55,214,170,.7); stroke-width: 1.2; stroke-linecap: square; stroke-linejoin: miter; vector-effect: non-scaling-stroke; filter: drop-shadow(0 0 3px rgba(55,214,170,.35)); }.connection-lines path { stroke-dasharray: 8 6; animation: signal-flow 2.2s linear infinite; }.connection-lines path:nth-child(2) { animation-delay: -.55s; }.connection-lines path:nth-child(3) { animation-delay: -1.1s; }.connection-lines path:nth-child(4) { animation-delay: -1.65s; }.connection-lines circle { fill: var(--lime); stroke: none; transform-box: fill-box; transform-origin: center; animation: terminal-pulse 1.8s ease-in-out infinite; }.connection-lines circle:nth-of-type(2) { animation-delay: -.45s; }.connection-lines circle:nth-of-type(3) { animation-delay: -.9s; }.connection-lines circle:nth-of-type(4) { animation-delay: -1.35s; }
.system-core { position: absolute; z-index: 2; left: 50%; top: 50%; width: 118px; height: 118px; display: grid; place-content: center; text-align: center; transform: translate(-50%,-50%); border: 1px solid var(--lime); background: rgba(201,255,70,.07); box-shadow: 0 0 50px rgba(201,255,70,.1), inset 0 0 25px rgba(201,255,70,.05); animation: core-pulse 3.2s ease-in-out infinite; }
.system-core::before, .system-core::after { content: ""; position: absolute; width: 8px; height: 8px; border-color: var(--lime); }.system-core::before { top: -1px; left: -1px; border-top: 2px solid; border-left: 2px solid; }.system-core::after { right: -1px; bottom: -1px; border-right: 2px solid; border-bottom: 2px solid; }
.system-core span { color: var(--lime); font: 600 28px var(--mono); }.system-core small { color: rgba(255,255,255,.68); font: 9px var(--mono); letter-spacing: .11em; text-transform: uppercase; }
.node { position: absolute; z-index: 4; display: flex; align-items: center; gap: 8px; padding: 7px 10px; border: 1px solid rgba(255,255,255,.2); background: #102a23; color: rgba(255,255,255,.84); font: 500 10px var(--mono); letter-spacing: .09em; transition: border-color .25s, background .25s; }
.node:hover { border-color: rgba(55,214,170,.65); background: #14372d; }
.node i { width: 6px; height: 6px; border-radius: 50%; background: var(--teal); box-shadow: 0 0 7px var(--teal); animation: node-blink 2.4s ease-in-out infinite; }
.node-a { top: 23%; left: 11%; }.node-b { top: 22%; right: 10%; }.node-c { bottom: 18%; left: 13%; }.node-d { bottom: 17%; right: 8%; }
.node-b i { animation-delay: -.6s; }.node-c i { animation-delay: -1.2s; }.node-d i { animation-delay: -1.8s; }
.visual-stats { height: 68px; display: grid; grid-template-columns: 1fr 1fr 1.25fr; align-items: center; border-top: 1px solid rgba(255,255,255,.1); }
.visual-stats > div { height: 100%; padding: 13px 16px; border-right: 1px solid rgba(255,255,255,.1); }
.visual-stats small { display: block; color: rgba(255,255,255,.35); font: 500 9px var(--mono); letter-spacing: .08em; }.visual-stats strong { color: var(--teal); font: 600 11px var(--mono); }
.signal { display: flex; align-items: end; gap: 5px; }.signal i { width: 6px; height: calc(8px + var(--n, 1) * 3px); transform-origin: bottom; background: rgba(202,255,69,.7); animation: equalizer 1.8s ease-in-out infinite alternate; }.signal i:nth-child(2) {--n:3;animation-delay:-.3s}.signal i:nth-child(3) {--n:2;animation-delay:-.7s}.signal i:nth-child(4) {--n:5;animation-delay:-1.1s}.signal i:nth-child(5) {--n:4;animation-delay:-.5s}.signal i:nth-child(6) {--n:7;animation-delay:-1.4s}.signal i:nth-child(7) {--n:5;animation-delay:-.9s}.signal i:nth-child(8) {--n:8;animation-delay:-1.7s}
.trust-strip { position: relative; height: 112px; margin-top: 82px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.2); }
.trust-strip p { color: rgba(255,255,255,.82); font: 600 14px var(--mono); letter-spacing: .085em; text-transform: uppercase; }.trust-strip div { display: flex; align-items: center; gap: 25px; color: rgba(255,255,255,.92); font-size: 15px; font-weight: 500; }.trust-strip i { width: 6px; height: 6px; background: var(--lime); box-shadow: 0 0 8px rgba(202,255,69,.35); transform: rotate(45deg); }

.section { padding: 125px 0; }
.section-label { display: flex; align-items: center; gap: 16px; color: var(--muted); font: 600 14px/1.15 var(--mono); letter-spacing: .085em; text-transform: uppercase; }.section-label span { display: grid; flex: 0 0 42px; place-items: center; width: 42px; height: 42px; border: 1px solid var(--line); color: var(--ink); font-size: 12px; }
.section-label.light { color: rgba(255,255,255,.68); }.section-label.light span { border-color: rgba(255,255,255,.3); color: var(--lime); }
.intro-grid { display: grid; grid-template-columns: .42fr 1.55fr .7fr; gap: 60px; align-items: start; }
.intro h2, .services h2, .process h2 { font-size: clamp(39px, 4.4vw, 64px); }.intro h2 em, .services h2 em, .process h2 em { color: #356e5d; }
.intro-copy p { max-width: 760px; margin: 32px 0 0; color: var(--muted); font-size: 18px; line-height: 1.8; }.intro-copy p strong { color: var(--ink); font-weight: 650; }
.intro-note { padding-top: 55px; }.intro-note > p { color: var(--muted); font-size: 14px; }.scope { display: flex; gap: 13px; align-items: end; margin-top: 34px; padding-top: 25px; border-top: 1px solid var(--line); }.scope strong { font: 500 39px/1 var(--mono); }.scope span { color: var(--muted); font: 9px/1.35 var(--mono); letter-spacing: .09em; text-transform: uppercase; }

.services { background: var(--paper-2); }
.section-heading { display: flex; justify-content: space-between; align-items: end; margin-bottom: 62px; }.section-heading .section-label { margin-bottom: 34px; }.section-heading > p { max-width: 370px; margin: 0 0 7px; color: var(--muted); font-size: 15px; }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.service-card { position: relative; min-height: 430px; padding: 34px 30px 30px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.42); transition: background .3s, transform .3s; }
.service-card:hover { z-index: 2; background: var(--white); transform: translateY(-5px); box-shadow: 0 22px 55px rgba(12,28,24,.08); }
.service-card.featured { color: white; background: var(--ink-2); }.service-card.featured p, .service-card.featured li { color: rgba(255,255,255,.75); }.service-card.featured .service-number { color: rgba(255,255,255,.55); }.service-card.featured .service-icon { border-color: rgba(255,255,255,.25); color: var(--lime); }
.service-icon { width: 50px; height: 50px; display: grid; place-items: center; border: 1px solid var(--line); color: #306e5d; }.service-icon svg { width: 27px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.service-number { position: absolute; top: 35px; right: 29px; color: #95a09c; font: 10px var(--mono); }
.service-card h3 { max-width: 260px; margin: 45px 0 17px; font-size: 21px; line-height: 1.28; letter-spacing: -.025em; }.service-card p { margin: 0 0 23px; color: var(--muted); font-size: 13px; }.service-card ul { margin: 0; padding: 0; list-style: none; }.service-card li { position: relative; margin: 8px 0; padding-left: 15px; color: #596660; font-size: 11px; }.service-card li::before { content: ""; position: absolute; left: 0; top: .68em; width: 5px; height: 1px; background: var(--teal); }
.service-more { display:inline-flex; align-items:center; gap:12px; margin-top:22px; color:#246a57; font-size:12px; font-weight:700; text-underline-offset:4px; }.service-card.featured .service-more { color:var(--lime); }

.design-office { position: relative; color: white; background: #11251f; }.design-office::after { content: ""; position: absolute; right: 0; bottom: 0; width: 46%; height: 100%; opacity: .18; pointer-events: none; background-image: linear-gradient(rgba(201,255,70,.18) 1px, transparent 1px), linear-gradient(90deg, rgba(201,255,70,.18) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to left, #000, transparent); }.design-layout { position: relative; z-index: 1; display: grid; grid-template-columns: .92fr 1fr; gap: 115px; align-items: start; }.design-kicker { margin: 42px 0 14px; color: var(--lime); font: 500 10px var(--mono); letter-spacing: .11em; text-transform: uppercase; }.design-heading h2 { font-size: clamp(42px,4.5vw,65px); }.design-heading > p:last-of-type { max-width: 580px; margin: 30px 0 8px; color: rgba(255,255,255,.6); font-size: 15px; }.button-outline-lime { margin-top: 28px; border-color: rgba(201,255,70,.55); color: var(--lime); }.button-outline-lime:hover { color: var(--ink); background: var(--lime); }.design-scope { border-top: 1px solid rgba(255,255,255,.16); }.design-scope article { display: grid; grid-template-columns: 46px 1fr; gap: 18px; padding: 27px 0; border-bottom: 1px solid rgba(255,255,255,.16); }.design-scope article > span { color: var(--lime); font: 10px var(--mono); }.design-scope h3 { margin: 0 0 8px; font-size: 17px; }.design-scope p { margin: 0; color: rgba(255,255,255,.52); font-size: 12px; }.design-disciplines { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; margin-top: 80px; padding-top: 30px; border-top: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.78); }.design-disciplines > i { flex: 0 0 5px; width: 5px; height: 5px; background: var(--lime); transform: rotate(45deg); }.discipline { display: flex; align-items: center; gap: 12px; font: 500 11px var(--mono); letter-spacing: .1em; text-transform: uppercase; }.discipline svg { width: 37px; height: 37px; padding: 7px; border: 1px solid rgba(255,255,255,.28); fill: none; stroke: var(--lime); stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }

.advantages { color: white; background: #0b1a16; }
.advantages-layout { display: grid; grid-template-columns: .85fr 1fr; gap: 130px; }
.advantages h2 { margin: 34px 0 28px; font-size: clamp(40px, 4.2vw, 63px); }.advantages-copy > p { max-width: 520px; margin: 0 0 34px; color: rgba(255,255,255,.57); font-size: 15px; }.button-light { color: white; border-color: rgba(255,255,255,.3); }.button-light:hover { border-color: var(--lime); color: var(--lime); }
.advantages-list { border-top: 1px solid rgba(255,255,255,.14); }.advantage { display: grid; grid-template-columns: 55px 1fr; gap: 20px; padding: 34px 0; border-bottom: 1px solid rgba(255,255,255,.14); }.advantage > span { color: var(--lime); font: 10px var(--mono); }.advantage h3 { margin: 0 0 10px; font-size: 18px; }.advantage p { max-width: 490px; margin: 0; color: rgba(255,255,255,.5); font-size: 13px; }

.innovations { position: relative; overflow: hidden; background: #dbe5df; }.innovation-grid { position: absolute; inset: 0; opacity: .5; background-image: linear-gradient(rgba(11,23,20,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(11,23,20,.055) 1px, transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(to right, #000, transparent 62%); }.innovations-layout { position: relative; display: grid; grid-template-columns: 1fr .95fr; gap: 100px; align-items: center; }.innovation-kicker { margin: 42px 0 16px; color: #245f4f; font: 600 14px/1.35 var(--mono); letter-spacing: .075em; text-transform: uppercase; }.innovations h2 { max-width: 720px; font-size: clamp(42px,4.65vw,68px); }.innovations h2 em { color: #31705e; }.innovation-lead { margin: 31px 0 17px; color: #354b44; font-size: 17px; line-height: 1.75; }.innovations-copy > p:last-of-type { color: #5a6964; font-size: 14px; }.button-dark { margin-top: 20px; color: white; background: var(--ink); }.button-dark:hover { color: var(--lime); }
.innovation-system { position: relative; min-height: 600px; padding: 28px 25px; border: 1px solid rgba(11,23,20,.18); background: rgba(243,242,237,.55); }.innovation-system::before { content: "SBMS / CUSTOM ENGINEERING"; display: block; padding-bottom: 20px; border-bottom: 1px solid var(--line); color: #6b7873; font: 9px var(--mono); letter-spacing: .1em; }.innovation-line { position: absolute; top: 84px; bottom: 78px; left: 47px; width: 1px; background: linear-gradient(var(--teal), #31705e); }.innovation-module { position: relative; z-index: 1; min-height: 84px; display: grid; grid-template-columns: 45px 1fr; align-items: start; gap: 18px; margin: 12px 0; padding: 13px 14px 13px 0; background: rgba(243,242,237,.82); border: 1px solid rgba(11,23,20,.09); transition: transform .25s, background .25s; }.innovation-module:hover { transform: translateX(-5px); background: var(--white); }.innovation-module > span { display: grid; place-items: center; width: 44px; height: 44px; margin-left: 0; color: var(--ink); background: var(--lime); font: 500 10px var(--mono); }.innovation-module small { display: block; color: #648177; font: 8px var(--mono); letter-spacing: .1em; }.innovation-module strong { display: block; margin: 2px 0; font-size: 15px; }.innovation-module p { margin: 0; color: var(--muted); font-size: 11px; }.innovation-result { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; margin-top: 18px; padding: 15px 17px; color: white; background: var(--ink); }.innovation-result span { color: var(--lime); font: 500 19px var(--mono); letter-spacing: .08em; }.innovation-result small { color: rgba(255,255,255,.55); font: 8px var(--mono); letter-spacing: .08em; text-transform: uppercase; }.innovation-statement { position: relative; display: flex; justify-content: space-between; align-items: center; margin-top: 80px; padding-top: 30px; border-top: 1px solid rgba(11,23,20,.18); }.innovation-statement span { color: #40574f; font: 600 14px/1.45 var(--mono); letter-spacing: .065em; text-transform: uppercase; }.innovation-statement strong { font-size: 21px; letter-spacing: -.02em; }

.technologies { background: var(--paper); }
.technologies h2 em { color: #31705e; }
.technology-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.technology-card { min-height: 390px; padding: 29px 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.18); transition: background .25s, transform .25s; }
.technology-card:hover { z-index: 1; background: white; transform: translateY(-4px); box-shadow: 0 18px 45px rgba(11,23,20,.07); }
.technology-head { display: flex; align-items: center; gap: 15px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.technology-head > span { color: #367563; font: 9px var(--mono); }
.technology-head h3 { margin: 0; font-size: 18px; letter-spacing: -.025em; }
.technology-card > p { min-height: 68px; margin: 21px 0 17px; color: var(--muted); font-size: 12px; }
.technology-card ul { margin: 0; padding: 0; list-style: none; }
.technology-card li { position: relative; margin: 9px 0; padding-left: 16px; color: #4f5e58; font-size: 11px; }
.technology-card li::before { content: "+"; position: absolute; left: 0; color: #2e7c66; font: 500 11px var(--mono); }
.technology-note { margin: 28px 0 0; padding: 20px 24px; border-left: 3px solid var(--lime-dark); color: var(--muted); background: var(--paper-2); font-size: 13px; }
.technology-note a { color: #256d59; font-weight: 700; text-underline-offset: 3px; }

.process-list { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; padding: 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); list-style: none; counter-reset: steps; }
.process-list li { position: relative; min-height: 330px; padding: 27px; overflow: hidden; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: background .25s; }.process-list li:hover { background: white; }.process-list li > span { color: #73817c; font: 10px var(--mono); }.process-art { height: 100px; display: flex; align-items: center; margin: 27px -4px 17px; color: #81908a; }.process-art svg { width: 100%; max-width: 210px; fill: none; stroke: currentColor; stroke-width: 1.15; stroke-linecap: round; stroke-linejoin: round; }.process-art .accent { stroke: #2d826a; }.process-art .accent-fill { fill: var(--lime-dark); stroke: none; }.process-art .check { stroke: var(--ink); stroke-width: 2; }.process-list li:hover .process-art { color: #5f716a; }.process-copy { margin-top: 0; }.process-list h3 { margin: 0 0 12px; font-size: 18px; }.process-list p { margin: 0; color: var(--muted); font-size: 12px; }

.contact { padding: 115px 0; color: white; background: #12392f; }
.contact-layout { display: grid; grid-template-columns: .85fr 1fr; gap: 130px; }.contact h2 { margin: 35px 0 26px; font-size: clamp(40px, 4.5vw, 64px); }.contact-copy > p { max-width: 500px; color: rgba(255,255,255,.62); }.contact-mail { display: inline-flex; gap: 25px; margin-top: 25px; color: var(--lime); font: 500 clamp(19px,2vw,25px) var(--mono); text-underline-offset: 6px; }.contact-meta { display: flex; gap: 26px; flex-wrap: wrap; margin-top: 50px; color: rgba(255,255,255,.42); font: 600 12px/1.4 var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.contact-direct { align-self: stretch; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(34px,5vw,64px); border: 1px solid rgba(255,255,255,.24); background: #0a211b; box-shadow: 0 24px 70px rgba(0,0,0,.14); }
.contact-direct-label { color: var(--aqua); font: 700 11px var(--mono); letter-spacing: .09em; text-transform: uppercase; }
.contact-direct h3 { margin: 25px 0 18px; color: white; font-size: clamp(27px,3vw,40px); line-height: 1.08; letter-spacing: -.035em; }
.contact-direct p { max-width: 560px; margin: 0; color: rgba(255,255,255,.72); font-size: 15px; line-height: 1.75; }
.contact-direct p strong { color: white; }
.contact-direct .button { width: fit-content; margin-top: 30px; }
.contact-direct small { max-width: 530px; margin-top: 24px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.52); font: 600 10px/1.6 var(--mono); letter-spacing: .04em; }
.contact-meta a { color: inherit; text-decoration: none; }.contact-meta a:hover { color: var(--lime); }

.site-footer { padding: 78px 0 25px; color: white; background: #07100e; }.footer-main { display: grid; grid-template-columns: repeat(4,1fr); gap: 50px; padding-bottom: 72px; }.footer-main .footer-brand { grid-column: 1/-1; margin-bottom: 28px; }.footer-brand .brand-logo { width: min(520px, 100%); }.footer-nav { display: flex; flex-direction: column; align-items: start; gap: 10px; }.footer-nav strong { margin-bottom: 11px; color: rgba(255,255,255,.65); font: 600 11px var(--mono); letter-spacing: .08em; text-transform: uppercase; }.footer-nav a { color: rgba(255,255,255,.78); font-size: 14px; text-decoration: none; }.footer-nav a:hover { color: var(--lime); }
.company-register { display: grid; grid-template-columns: 1.15fr 1fr 1.25fr; gap: 42px; padding-top: 30px; padding-bottom: 30px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.62); font: 600 11px/1.65 var(--mono); letter-spacing: .035em; }.company-register > div { display: flex; flex-direction: column; align-items: flex-start; }.company-register strong { margin-bottom: 5px; color: white; font-size: 13px; }.company-register span,.company-register a { display: block; color: inherit; text-decoration: none; }.company-register a:hover { color: var(--lime); }.company-register p { max-width: 430px; margin: 0; }
.footer-bottom { display: flex; gap: 35px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.65); font: 10px var(--mono); letter-spacing: .05em; text-transform: uppercase; }.footer-bottom p { margin: 0; }.footer-bottom a { margin-left: auto; text-decoration: none; }.footer-bottom a + a { margin-left: 0; }

.legal { min-height: 100vh; padding: 120px 0; background: var(--paper); }.legal .brand { margin-bottom: 60px; color: var(--ink); }.legal-brand .brand-logo { width: 390px; }.legal article { max-width: 760px; }.legal h1 { font-size: clamp(38px,6vw,65px); line-height: 1.05; letter-spacing:-.05em; }.legal h2 { margin-top: 42px; font-size: 21px; }.legal p, .legal li { color: var(--muted); }.legal-eyebrow { color: var(--muted); }.back { display: inline-block; margin-top: 40px; color: #286e5b; font-weight: 700; }

/* Wzmocniony kontrast i czytelniejsza hierarchia kolorów */
.design-office { background-color: #0d2922; }
.design-heading > p:last-of-type { color: rgba(255,255,255,.78); }
.design-scope, .design-scope article { border-color: rgba(255,255,255,.26); }
.design-scope p { color: rgba(255,255,255,.72); }
.design-disciplines { border-color: rgba(255,255,255,.25); color: rgba(255,255,255,.74); }
.advantages { background-color: #071b16; }
.advantages-copy > p { color: rgba(255,255,255,.78); }
.button-light { border-color: rgba(255,255,255,.5); }
.advantages-list, .advantage { border-color: rgba(255,255,255,.25); }
.advantage p { color: rgba(255,255,255,.72); }
.innovations { background-color: #e1ebe6; }
.innovation-lead { color: #203d35; }
.innovations-copy > p:last-of-type { color: #42564f; }
.innovation-system { border-color: rgba(8,21,18,.28); background: rgba(255,255,255,.62); }
.innovation-module { border-color: rgba(8,21,18,.15); background: rgba(255,255,255,.78); }
.innovation-system { min-height: 680px; padding: 32px 28px; }
.innovation-system::before { padding-bottom: 24px; color: #3f5f55; font-size: 11px; font-weight: 600; letter-spacing: .08em; }
.innovation-line { top: 96px; bottom: 88px; left: 51px; }
.innovation-module { min-height: 96px; grid-template-columns: 50px 1fr; gap: 20px; margin: 14px 0; padding: 15px 16px 15px 0; }
.innovation-module > span { width: 48px; height: 48px; font-size: 12px; font-weight: 600; }
.innovation-module small { color: #245f4f; font-size: 12px; font-weight: 700; letter-spacing: .065em; line-height: 1.25; }
.innovation-module strong { margin: 4px 0; font-size: 17px; }
.innovation-module p { color: #40554e; font-size: 13px; line-height: 1.45; }
.innovation-result { margin-top: 20px; padding: 18px 20px; }
.innovation-result span { font-size: 22px; }
.innovation-result small { color: rgba(255,255,255,.78); font-size: 10px; font-weight: 600; }
.technology-card { background: rgba(255,255,255,.64); }
.technology-card li { color: #354941; }
.process { background: #f8f9f6; }
.process-list li { background: rgba(255,255,255,.58); }
.process-art { color: #667a72; }
.contact { background: #0d4437; }
.contact-copy > p { color: rgba(255,255,255,.8); }
.contact-meta { color: rgba(255,255,255,.7); }
.visual-stats small { color: rgba(255,255,255,.6); }
.system-core small { color: rgba(255,255,255,.65); }
.footer-nav a { color: rgba(255,255,255,.78); }

.reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s ease; }.reveal.visible { opacity: 1; transform: none; }.delay-1 { transition-delay: .08s; }.delay-2 { transition-delay: .16s; }.delay-3 { transition-delay: .24s; }
@keyframes spin { to { transform: translate(-50%,-50%) rotate(360deg); } }
@keyframes pulse { 50% { opacity: .35; } }
@keyframes orbit-pulse { 50% { border-color: rgba(202,255,69,.45); box-shadow: 0 0 24px rgba(202,255,69,.08); } }
@keyframes core-pulse { 50% { background: rgba(202,255,69,.11); box-shadow: 0 0 68px rgba(202,255,69,.17), inset 0 0 30px rgba(202,255,69,.09); } }
@keyframes node-blink { 50% { opacity: .45; box-shadow: 0 0 3px var(--teal); } }
@keyframes equalizer { from { transform: scaleY(.45); opacity: .55; } to { transform: scaleY(1); opacity: 1; } }
@keyframes signal-flow { to { stroke-dashoffset: -28; } }
@keyframes terminal-pulse { 50% { transform: scale(1.8); opacity: .55; } }

@media (max-width: 1120px) {
  .site-header, .site-header.scrolled { height: 82px; }
  .brand-logo, .site-header.scrolled .brand-logo { width: 278px; }
  .menu-toggle { display: block; }
  .main-nav { position: fixed; inset: 82px 0 auto; height: auto; padding: 25px max(24px, calc((100vw - var(--container)) / 2)); flex-direction: column; align-items: stretch; gap: 0; background: #091410; border-top: 1px solid rgba(255,255,255,.1); transform: translateY(-130%); opacity: 0; transition: transform .25s, opacity .25s; }
  .main-nav.open { transform: none; opacity: 1; }
  .main-nav a { padding: 13px 5px; font-size: 14px; }
  .main-nav .nav-cta { align-self: auto; margin-top: 10px; padding: 15px; justify-content: space-between; }
}

@media (max-width: 1020px) {
  .hero { padding-top: 135px; }.hero-layout { grid-template-columns: 1fr; }.system-visual { max-width: 640px; width: 100%; margin-inline: auto; }.trust-strip { margin-top: 60px; }
  .intro-grid { grid-template-columns: 1fr 2fr; }.intro-note { grid-column: 2; padding-top: 0; }.service-grid { grid-template-columns: repeat(2,1fr); }
  .design-layout { gap: 60px; }.advantages-layout, .contact-layout { gap: 70px; }.innovations-layout { gap: 55px; }.technology-grid { grid-template-columns: repeat(2,1fr); }.process-list { grid-template-columns: repeat(2,1fr); }.footer-main { grid-template-columns: repeat(2,1fr); }.company-register { grid-template-columns: 1fr 1fr; }.company-register p { grid-column: 1/-1; }
}

@media (max-width: 760px) {
  .container { width: min(calc(100% - 32px), var(--container)); }.site-header, .site-header.scrolled { height: 68px; }.brand-logo, .site-header.scrolled .brand-logo { width: 232px; }.menu-toggle { display: block; }.main-nav { position: fixed; inset: 68px 0 auto; height: auto; padding: 25px 16px; flex-direction: column; align-items: stretch; gap: 0; background: #091410; border-top: 1px solid rgba(255,255,255,.1); transform: translateY(-130%); opacity: 0; transition: transform .25s, opacity .25s; }.main-nav.open { transform: none; opacity: 1; }.main-nav a { padding: 14px 5px; font-size: 14px; }.main-nav .nav-cta { margin-top: 10px; padding: 15px; justify-content: space-between; }
  .hero { min-height: auto; padding-top: 115px; }.hero-layout { gap: 55px; }.hero h1 { font-size: clamp(39px,12vw,58px); }.hero-lead { font-size: 16px; }.hero-actions { align-items: stretch; flex-direction: column; gap: 20px; }.button { width: 100%; justify-content: space-between; }.text-link { text-align: center; }.system-visual { height: 390px; }.core-orbit { height: 273px; }.connection-lines { transform: scale(1.12,1.18); transform-origin: center; }.orbit-two { width: 250px; height: 250px; }.orbit-one { width: 175px; height: 175px; }.system-core { width: 100px; height: 100px; }.node-a { top: 19%; left: 4%; }.node-b { top: 18%; right: 4%; }.node-c { bottom: 13%; left: 4%; }.node-d { bottom: 12%; right: 3%; }.visual-stats { height: 68px; grid-template-columns: 1fr 1fr; }.visual-stats .signal { display: none; }.trust-strip { height: auto; padding: 30px 0; align-items: start; gap: 20px; flex-direction: column; }.trust-strip div { width: 100%; gap: 11px; justify-content: space-between; font-size: 12px; }
  .section { padding: 86px 0; }.intro-grid { grid-template-columns: 1fr; gap: 32px; }.intro-note { grid-column: auto; }.intro-copy p { font-size: 16px; }.section-heading { align-items: start; flex-direction: column; gap: 25px; margin-bottom: 42px; }.section-heading > p { max-width: 540px; }.service-grid, .technology-grid, .process-list { grid-template-columns: 1fr; }.service-card { min-height: 390px; }.technology-card { min-height: auto; }.technology-card > p { min-height: auto; }.design-layout, .advantages-layout, .innovations-layout, .contact-layout { grid-template-columns: 1fr; gap: 65px; }.design-disciplines { flex-wrap: wrap; justify-content: start; gap: 13px 20px; margin-top: 55px; }.design-disciplines i { width: 3px; height: 3px; }.advantages { padding-block: 90px; }.innovation-system { min-height: 570px; }.innovation-statement { align-items: start; flex-direction: column; gap: 14px; margin-top: 55px; }.innovation-statement strong { font-size: 17px; }.process-list li { min-height: 300px; }.process-art { margin-top: 25px; }.process-copy { margin-top: 0; }.contact-direct { padding: 32px 26px; }.footer-main { grid-template-columns: 1fr 1fr; }.footer-main .brand { grid-column: 1/-1; margin-bottom: 20px; }.company-register { grid-template-columns: 1fr; gap: 22px; }.company-register p { grid-column: auto; }.footer-bottom { flex-wrap: wrap; gap: 16px; }.footer-bottom a { margin-left: 0; }
}

@media (max-width: 760px) {
  .innovation-system { min-height: auto; padding: 25px 20px; }
  .innovation-line { top: 90px; bottom: 84px; left: 43px; }
  .innovation-module { grid-template-columns: 48px 1fr; gap: 14px; }
  .innovation-result { align-items: start; flex-direction: column; gap: 6px; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }.reveal { opacity: 1; transform: none; } }
