:root {
  --ink: #05080f;
  --ink-soft: #0a101b;
  --panel: #0c1422;
  --panel-high: #111d2e;
  --paper: #f4f7fb;
  --paper-blue: #eaf2ff;
  --text: #eaf2ff;
  --muted: #8da0bd;
  --blue: #0a84ff;
  --blue-light: #66c5ff;
  --line: rgba(141, 160, 189, .18);
  --shadow: 0 36px 100px -45px rgba(0, 0, 0, .85);
  --radius: 28px;
  --shell: min(1440px, calc(100% - 48px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: clip; }
body {
  margin: 0;
  overflow-x: clip;
  background: var(--ink);
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
body.menu-open { overflow: hidden; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
::selection { background: var(--blue); color: #fff; }

.skip-link { position: fixed; z-index: 100; left: 1rem; top: 1rem; transform: translateY(-160%); border-radius: 999px; background: white; color: var(--ink); padding: .75rem 1rem; font-weight: 800; transition: transform .2s; }
.skip-link:focus { transform: none; }
.shell { width: var(--shell); margin-inline: auto; }
.ambient { position: fixed; z-index: -2; border-radius: 50%; filter: blur(100px); pointer-events: none; }
.ambient-one { width: 42rem; height: 42rem; right: -20rem; top: 5rem; background: rgba(10, 132, 255, .11); }
.ambient-two { width: 30rem; height: 30rem; left: -19rem; top: 48rem; background: rgba(51, 91, 255, .08); }
.pointer-glow { position: fixed; z-index: -1; width: 28rem; height: 28rem; margin: -14rem 0 0 -14rem; border-radius: 50%; background: radial-gradient(circle, rgba(10,132,255,.08), transparent 67%); pointer-events: none; opacity: 0; transition: opacity .4s; }

.site-header { position: fixed; z-index: 50; inset: 0 0 auto; border-bottom: 1px solid transparent; transition: background-color .3s, border-color .3s, backdrop-filter .3s; }
.site-header.scrolled { background: rgba(5, 8, 15, .78); border-color: rgba(255,255,255,.08); backdrop-filter: blur(22px) saturate(1.3); }
.nav-wrap { min-height: 84px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 2rem; }
.brand { display: inline-flex; align-items: center; gap: .8rem; width: max-content; }
.brand-mark { width: 42px; height: 42px; flex: 0 0 42px; overflow: hidden; border: 1px solid rgba(141,160,189,.26); border-radius: 12px; background: #020408 url('/rynor-brand-original.png') 50% 90.3% / 640% auto no-repeat; box-shadow: inset 0 0 12px rgba(10,132,255,.08); filter: drop-shadow(0 0 15px rgba(10,132,255,.45)); transition: transform .4s cubic-bezier(.2,.8,.2,1), border-color .3s; }
.brand:hover .brand-mark { transform: rotate(-4deg) scale(1.04); border-color: rgba(102,197,255,.55); }
.brand-type { line-height: 1; }
.brand-type strong { display: block; font-size: .92rem; letter-spacing: .2em; }
.brand-type small { display: block; margin-top: .35rem; color: var(--blue-light); font-size: .5rem; font-weight: 900; letter-spacing: .38em; }
.primary-nav { display: flex; align-items: center; gap: .25rem; padding: .35rem; border: 1px solid rgba(255,255,255,.07); border-radius: 999px; background: rgba(255,255,255,.025); }
.primary-nav a { border-radius: 999px; padding: .65rem 1rem; color: rgba(234,242,255,.62); font-size: .82rem; font-weight: 650; transition: color .2s, background-color .2s; }
.primary-nav a:hover, .primary-nav a:focus-visible { color: white; background: rgba(255,255,255,.075); }
.header-cta { justify-self: end; display: inline-flex; align-items: center; gap: .65rem; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; padding: .75rem 1.05rem; font-size: .8rem; font-weight: 800; background: rgba(255,255,255,.05); transition: transform .2s, background-color .2s, border-color .2s; }
.header-cta:hover { transform: translateY(-2px); background: var(--blue); border-color: var(--blue); }
.menu-toggle { display: none; }

.hero { position: relative; isolation: isolate; min-height: 100svh; overflow: hidden; padding: 8rem 0 4rem; background: radial-gradient(circle at 77% 33%, rgba(10,132,255,.13), transparent 31rem), linear-gradient(155deg,#05080f 42%,#07101d); }
.hero::after { content: ""; position: absolute; z-index: -1; width: 56vw; aspect-ratio: 1; right: -16vw; top: 8%; border: 1px solid rgba(102,197,255,.11); border-radius: 50%; box-shadow: 0 0 0 5rem rgba(255,255,255,.012), 0 0 0 11rem rgba(255,255,255,.009); }
.hero-grid { position: absolute; inset: 0; z-index: -2; opacity: .21; mask-image: linear-gradient(to bottom, black, transparent 88%); 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: 68px 68px; }
.hero-layout { min-height: calc(100svh - 12rem); display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(3rem,6vw,7rem); }
.eyebrow { display: flex; align-items: center; gap: .8rem; margin: 0 0 1.5rem; color: var(--muted); font-size: .68rem; font-weight: 850; letter-spacing: .26em; text-transform: uppercase; }
.eyebrow span { width: 2.8rem; height: 1px; background: var(--blue); box-shadow: 0 0 16px var(--blue); }
.eyebrow.light { color: rgba(234,242,255,.58); }
.hero h1 { max-width: 800px; margin: 0; font-size: clamp(4rem,7.4vw,8.8rem); line-height: .82; letter-spacing: -.075em; font-weight: 930; }
h1 em, h2 em { color: var(--blue); font-style: normal; }
.hero-lead { max-width: 39rem; margin: 2rem 0 0; color: rgba(234,242,255,.68); font-size: clamp(1rem,1.3vw,1.2rem); line-height: 1.75; text-wrap: balance; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2.25rem; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: .8rem; min-height: 50px; border: 0; border-radius: 999px; padding: .85rem 1.35rem; cursor: pointer; font-size: .88rem; font-weight: 820; transition: transform .25s, box-shadow .25s, background-color .25s, border-color .25s; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: white; background: var(--blue); box-shadow: 0 20px 55px -22px rgba(10,132,255,.95); }
.button-primary:hover { background: #168dff; box-shadow: 0 25px 65px -20px rgba(10,132,255,1); }
.button-ghost { border: 1px solid rgba(255,255,255,.17); background: rgba(255,255,255,.045); backdrop-filter: blur(12px); }
.button-ghost:hover { border-color: rgba(255,255,255,.4); background: rgba(255,255,255,.08); }
.hero-tags { display: flex; flex-wrap: wrap; gap: .55rem; margin: 2rem 0 0; padding: 0; list-style: none; }
.hero-tags li { border: 1px solid rgba(255,255,255,.09); border-radius: 999px; padding: .48rem .8rem; color: rgba(234,242,255,.46); font-size: .66rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }

.system-scene { position: relative; height: min(680px, 66vh); min-height: 520px; perspective: 1500px; transform-style: preserve-3d; }
.scene-orbit { position: absolute; border: 1px solid rgba(102,197,255,.14); border-radius: 50%; }
.orbit-one { inset: 9% 0 7% 5%; transform: rotateX(67deg) rotateZ(-13deg); box-shadow: 0 0 80px rgba(10,132,255,.08); }
.orbit-two { inset: 19% 10% 17% 15%; border-style: dashed; transform: rotateX(67deg) rotateZ(20deg); animation: orbit-spin 28s linear infinite; }
.dashboard-card { position: absolute; overflow: hidden; border: 1px solid rgba(255,255,255,.14); background: rgba(9,16,28,.9); box-shadow: var(--shadow); backdrop-filter: blur(22px); }
.dashboard-main { inset: 6% 2% 4% 7%; border-radius: 1.7rem; transform: rotateY(-7deg) rotateX(1deg) translateZ(20px); transition: transform .8s cubic-bezier(.2,.8,.2,1); }
.system-scene:hover .dashboard-main { transform: rotateY(-3deg) rotateX(0) translate3d(-5px,-8px,50px); }
.panel-header { height: 54px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.08); padding: 0 1.25rem; background: rgba(255,255,255,.02); }
.panel-brand { display: flex; align-items: center; gap: .55rem; font-size: .72rem; font-weight: 800; }
.live-dot { width: .5rem; height: .5rem; border-radius: 50%; background: #3fe39a; box-shadow: 0 0 14px #3fe39a; }
.panel-status { border: 1px solid rgba(63,227,154,.25); border-radius: 999px; padding: .35rem .6rem; color: #75e8b4; background: rgba(63,227,154,.06); font-size: .56rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.dashboard-body { padding: 1.25rem; }
.dashboard-title { display: flex; align-items: center; justify-content: space-between; }
.dashboard-title div span, .mini-label { display: block; color: var(--muted); font-size: .57rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.dashboard-title div strong { display: block; margin-top: .28rem; font-size: 1.25rem; letter-spacing: -.03em; }
.dashboard-title button { border: 0; color: var(--muted); background: transparent; }
.kpi-row { display: grid; grid-template-columns: repeat(3,1fr); gap: .7rem; margin-top: 1.1rem; }
.kpi { border: 1px solid rgba(255,255,255,.07); border-radius: 1rem; padding: .85rem; background: rgba(255,255,255,.025); }
.kpi > span { display: block; color: var(--muted); font-size: .6rem; }
.kpi strong { display: block; margin-top: .25rem; font-size: 1.65rem; letter-spacing: -.05em; }
.kpi strong span { color: var(--blue-light); font-size: .9rem; }
.kpi small { color: rgba(234,242,255,.4); font-size: .55rem; }
.kpi small.positive { color: #75e8b4; }
.chart-card { margin-top: .7rem; border: 1px solid rgba(255,255,255,.07); border-radius: 1rem; padding: .85rem .85rem .2rem; background: rgba(255,255,255,.02); }
.chart-head { display: flex; justify-content: space-between; font-size: .62rem; }
.chart-head small { color: var(--muted); }
.chart-card svg { width: 100%; height: 104px; overflow: visible; }
.chart-grid-line { fill: none; stroke: rgba(255,255,255,.06); }
.chart-area { fill: url(#area); }
.chart-line { fill: none; stroke: var(--blue-light); stroke-width: 3; filter: drop-shadow(0 0 7px rgba(10,132,255,.7)); }
.activity-list { margin-top: .7rem; }
.activity-list > div { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .7rem; padding: .65rem; border-top: 1px solid rgba(255,255,255,.06); }
.activity-icon { display: grid; place-items: center; width: 1.8rem; height: 1.8rem; border-radius: .55rem; color: var(--blue-light); background: rgba(10,132,255,.12); }
.activity-icon.violet { color: #bba3ff; background: rgba(150,110,255,.13); }
.activity-list p { margin: 0; }
.activity-list strong, .activity-list small { display: block; }
.activity-list strong { font-size: .64rem; }
.activity-list small { margin-top: .15rem; color: var(--muted); font-size: .53rem; }
.activity-list b { color: var(--blue-light); font-size: .54rem; }
.dashboard-side { z-index: 4; width: 170px; right: -3%; top: 1%; border-radius: 1.3rem; padding: 1rem; transform: rotateY(-12deg) rotateZ(4deg) translateZ(120px); transition: transform .7s; }
.system-scene:hover .dashboard-side { transform: rotateY(-5deg) rotateZ(2deg) translate3d(8px,-8px,155px); }
.ring-value { position: absolute; top: 4.4rem; left: 50%; z-index: 2; transform: translateX(-50%); font-size: 1.4rem; }
.ring-value small { color: var(--blue-light); font-size: .65rem; }
.capacity-ring { width: 86px; aspect-ratio: 1; margin: 1.1rem auto; border-radius: 50%; background: conic-gradient(var(--blue) 74%,rgba(255,255,255,.08) 0); mask: radial-gradient(circle,transparent 55%,black 57%); }
.dashboard-side p { margin: 0; color: var(--muted); font-size: .6rem; line-height: 1.5; text-align: center; }
.dashboard-mobile { z-index: 5; width: 155px; left: -1%; bottom: 0; border-radius: 1.45rem; padding: 1rem; transform: rotateY(12deg) rotateZ(-4deg) translateZ(170px); transition: transform .7s; }
.system-scene:hover .dashboard-mobile { transform: rotateY(5deg) rotateZ(-2deg) translate3d(-8px,4px,200px); }
.mobile-top { display: flex; align-items: center; gap: .4rem; font-size: .55rem; }
.mobile-top .live-dot { width: .35rem; height: .35rem; }
.mobile-top small { margin-left: auto; color: var(--muted); }
.dashboard-mobile > p { margin: 1.2rem 0 .2rem; color: var(--muted); font-size: .55rem; }
.dashboard-mobile > strong { font-size: .8rem; }
.mobile-bars { height: 54px; display: flex; align-items: end; gap: .3rem; margin: .85rem 0; }
.mobile-bars i { flex: 1; height: 45%; border-radius: .2rem .2rem 0 0; background: rgba(10,132,255,.25); }
.mobile-bars i:nth-child(2) { height: 65%; }.mobile-bars i:nth-child(3) { height: 52%; }.mobile-bars i:nth-child(4) { height: 83%; background: var(--blue); }.mobile-bars i:nth-child(5) { height: 72%; }
.mobile-pill { display: block; border-radius: 999px; padding: .45rem; color: #75e8b4; background: rgba(63,227,154,.08); font-size: .5rem; font-weight: 800; text-align: center; }
.scroll-cue { position: absolute; bottom: 1.5rem; left: 50%; display: flex; align-items: center; gap: .7rem; transform: translateX(-50%); color: rgba(234,242,255,.35); font-size: .55rem; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.scroll-cue i { position: relative; display: block; width: 3.5rem; height: 1px; overflow: hidden; background: rgba(255,255,255,.12); }
.scroll-cue i::after { content: ""; position: absolute; inset: 0; width: 50%; background: var(--blue); animation: scroll-line 1.8s ease-in-out infinite; }

.signal-strip { overflow: hidden; border-block: 1px solid rgba(255,255,255,.07); padding: 1rem 0; background: #07101b; }
.signal-track { display: flex; width: max-content; animation: marquee 28s linear infinite; }
.signal-track > div { display: flex; flex: none; align-items: center; gap: 2.5rem; padding-right: 2.5rem; }
.signal-track span { color: rgba(234,242,255,.35); font-size: .67rem; font-weight: 850; letter-spacing: .28em; text-transform: uppercase; }
.signal-track i { width: .3rem; height: .3rem; border-radius: 50%; background: var(--blue); box-shadow: 0 0 14px var(--blue); }

.section { position: relative; padding: clamp(6rem,10vw,10rem) 0; }
.platform, .process, .contact { color: #111a27; background: var(--paper); }
.platform::before, .process::before, .contact::before { content: ""; position: absolute; width: min(40rem,70vw); aspect-ratio: 1; border-radius: 50%; filter: blur(85px); pointer-events: none; background: rgba(10,132,255,.07); }
.platform::before { left: -25rem; top: 5rem; }.process::before { right: -24rem; top: 8rem; }.contact::before { left: -20rem; bottom: -12rem; }
.section-intro { max-width: 58rem; }
.section-intro .eyebrow, .solutions .eyebrow, .contact .eyebrow { color: #5f7189; }
.section h2 { margin: 0; font-size: clamp(2.8rem,5.6vw,6.5rem); line-height: .95; letter-spacing: -.06em; text-wrap: balance; }
.section-intro > p:last-child { max-width: 43rem; margin: 1.5rem 0 0; color: #607088; font-size: 1.04rem; line-height: 1.75; }
.layers-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; margin-top: 4rem; }
.layer-card { position: relative; min-height: 430px; display: flex; flex-direction: column; overflow: hidden; border: 1px solid rgba(9,23,42,.1); border-radius: var(--radius); padding: 2rem; background: rgba(255,255,255,.62); box-shadow: 0 28px 65px -48px rgba(12,30,55,.45); transition: transform .4s, box-shadow .4s, border-color .4s; }
.layer-card::after { content: ""; position: absolute; width: 13rem; aspect-ratio: 1; right: -8rem; top: -8rem; border-radius: 50%; background: rgba(10,132,255,.08); transition: transform .5s; }
.layer-card:hover { transform: translateY(-8px); border-color: rgba(10,132,255,.35); box-shadow: 0 40px 90px -45px rgba(12,30,55,.42); }
.layer-card:hover::after { transform: scale(1.5); }
.layer-card.featured { color: white; border-color: rgba(102,197,255,.24); background: linear-gradient(145deg,#091523,#0c1b2c); box-shadow: 0 35px 85px -45px rgba(2,10,24,.9); }
.layer-card.featured p, .layer-card.featured li { color: rgba(234,242,255,.6); }
.layer-number { color: #8da0b8; font-size: .65rem; font-weight: 900; letter-spacing: .2em; }
.layer-icon { width: 3.5rem; height: 3.5rem; display: grid; place-items: center; margin-top: 4.5rem; border: 1px solid rgba(10,132,255,.22); border-radius: 1.1rem; color: var(--blue); background: rgba(10,132,255,.07); font-size: 1.4rem; box-shadow: 0 18px 40px -25px rgba(10,132,255,.7); }
.layer-card h3 { margin: 1.3rem 0 .8rem; font-size: 1.55rem; letter-spacing: -.04em; }
.layer-card p { margin: 0; color: #607088; line-height: 1.65; }
.layer-card ul { display: grid; gap: .55rem; margin: auto 0 0; padding: 1.5rem 0 0; border-top: 1px solid rgba(128,146,170,.15); list-style: none; color: #53647a; font-size: .76rem; font-weight: 700; }
.layer-card li::before { content: "↗"; margin-right: .65rem; color: var(--blue); }

.solutions { background: linear-gradient(180deg,#05080f,#07101d); }
.solutions-shell { display: grid; grid-template-columns: .9fr 1.1fr; align-items: start; gap: clamp(3rem,6vw,7rem); }
.solutions-copy > p:not(.eyebrow) { max-width: 38rem; margin: 1.5rem 0 0; color: rgba(234,242,255,.6); line-height: 1.75; }
.solution-tabs { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: 2.3rem; }
.solution-tabs button { border: 1px solid rgba(255,255,255,.1); border-radius: 999px; padding: .68rem .85rem; color: rgba(234,242,255,.5); background: rgba(255,255,255,.025); cursor: pointer; font-size: .72rem; font-weight: 800; transition: color .2s, background-color .2s, border-color .2s; }
.solution-tabs button[aria-selected="true"] { color: white; border-color: var(--blue); background: var(--blue); }
.sector-content { margin-top: 2rem; padding-top: 1.75rem; border-top: 1px solid rgba(255,255,255,.09); }
.sector-content > span { color: var(--blue-light); font-size: .62rem; font-weight: 850; letter-spacing: .18em; text-transform: uppercase; }
.sector-content h3 { margin: .7rem 0; font-size: clamp(1.6rem,3vw,2.5rem); letter-spacing: -.045em; }
.sector-content p { margin: 0; color: rgba(234,242,255,.58); line-height: 1.65; }
.module-configurator { margin-top: 1.6rem; border: 1px solid rgba(255,255,255,.1); border-radius: 1.45rem; padding: 1rem; background: rgba(255,255,255,.025); }
.module-configurator-head { display: flex; align-items: end; justify-content: space-between; gap: 1rem; padding: .25rem .25rem .9rem; }
.module-configurator-head small { display: block; color: var(--blue-light); font-size: .5rem; font-weight: 850; letter-spacing: .16em; }
.module-configurator-head strong { display: block; max-width: 20rem; margin-top: .35rem; font-size: .83rem; line-height: 1.35; }
.module-configurator-head > span { flex: 0 0 auto; border-radius: 999px; padding: .42rem .62rem; color: #80d1ff; background: rgba(10,132,255,.1); font-size: .53rem; font-weight: 850; }
.module-options { display: grid; grid-template-columns: 1fr 1fr; gap: .55rem; }
.module-option { min-width: 0; min-height: 88px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .65rem; border: 1px solid rgba(255,255,255,.08); border-radius: 1rem; padding: .75rem; color: rgba(234,242,255,.76); background: rgba(255,255,255,.025); text-align: left; cursor: pointer; transition: transform .2s,border-color .2s,background-color .2s,box-shadow .2s; }
.module-option:hover { transform: translateY(-2px); border-color: rgba(102,197,255,.35); background: rgba(10,132,255,.055); }
.module-option[aria-pressed="true"] { border-color: rgba(102,197,255,.42); background: linear-gradient(145deg,rgba(10,132,255,.15),rgba(10,132,255,.055)); box-shadow: inset 0 0 0 1px rgba(10,132,255,.08),0 12px 28px -24px rgba(10,132,255,.9); }
.module-number { width: 1.7rem; height: 1.7rem; display: grid; place-items: center; border-radius: .55rem; color: rgba(234,242,255,.42); background: rgba(255,255,255,.055); font-size: .48rem; font-weight: 900; }
.module-option[aria-pressed="true"] .module-number { color: white; background: var(--blue); }
.module-option-copy { min-width: 0; }.module-option-copy strong { display: block; font-size: .66rem; line-height: 1.25; }.module-option-copy small { display: block; margin-top: .28rem; color: rgba(234,242,255,.42); font-size: .52rem; line-height: 1.35; }
.module-toggle { width: 1.65rem; height: .9rem; border-radius: 999px; padding: .14rem; background: rgba(255,255,255,.1); transition: background-color .2s; }.module-toggle i { display: block; width: .62rem; height: .62rem; border-radius: 50%; background: rgba(255,255,255,.55); transition: transform .2s,background-color .2s; }
.module-option[aria-pressed="true"] .module-toggle { background: var(--blue); }.module-option[aria-pressed="true"] .module-toggle i { transform: translateX(.72rem); background: white; }
.module-configurator-actions { display: flex; align-items: center; justify-content: space-between; gap: .8rem; margin-top: .8rem; }
.module-reset { border: 0; padding: .45rem .25rem; color: rgba(234,242,255,.5); background: transparent; cursor: pointer; font-size: .57rem; font-weight: 750; }
.module-reset:hover { color: white; }.configurator-cta { min-height: 44px; padding: .68rem .9rem; font-size: .62rem; }.configurator-cta:disabled { cursor: not-allowed; opacity: .42; transform: none; }
.sector-stage { position: sticky; top: 110px; perspective: 1500px; }
.sector-screen { position: relative; min-height: 690px; overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 2rem; background: #0b1421; box-shadow: 0 45px 120px -45px #000, 0 0 80px rgba(10,132,255,.07); transform: rotateY(-4deg) rotateX(1deg); transition: transform .7s; }
.sector-stage:hover .sector-screen { transform: none; }
.sector-screen > header { height: 54px; display: flex; align-items: center; justify-content: space-between; padding: 0 1.2rem; border-bottom: 1px solid rgba(255,255,255,.08); color: rgba(234,242,255,.65); font-size: .68rem; font-weight: 800; }
.sector-screen > header span { display: flex; align-items: center; gap: .55rem; }.sector-screen > header span i { width: .45rem; height: .45rem; border-radius: 50%; background: #3fe39a; box-shadow: 0 0 12px #3fe39a; }
.workspace-sector { display: flex; align-items: center; gap: .55rem; }.workspace-sector b { border: 1px solid rgba(255,255,255,.08); border-radius: 999px; padding: .35rem .55rem; color: rgba(234,242,255,.58); background: rgba(255,255,255,.035); font-size: .5rem; letter-spacing: .08em; text-transform: uppercase; }.workspace-sector > i { width: .42rem; height: .42rem; border-radius: 50%; background: rgba(255,255,255,.2); }
.sector-screen aside { position: absolute; inset: 54px auto 0 0; width: 62px; display: flex; flex-direction: column; align-items: center; gap: 1.1rem; padding-top: 1rem; border-right: 1px solid rgba(255,255,255,.07); }
.side-logo { width: 2rem; height: 2rem; display: grid; place-items: center; border-radius: .65rem; color: white; background: var(--blue); font-size: .65rem; font-weight: 900; }
.sector-screen aside > div { display: grid; gap: .8rem; }.sector-screen aside > div i { width: 1.3rem; height: 1.3rem; border-radius: .4rem; background: rgba(255,255,255,.07); transition: background-color .25s,box-shadow .25s; }.sector-screen aside > div i.active { background: rgba(10,132,255,.25); box-shadow: inset 0 0 0 1px rgba(102,197,255,.3),0 0 16px rgba(10,132,255,.12); }
.sector-ui { margin-left: 62px; padding: 2rem; }
.ui-heading { display: flex; justify-content: space-between; align-items: center; }
.ui-heading small { display: block; color: var(--blue-light); font-size: .55rem; font-weight: 800; letter-spacing: .15em; }.ui-heading strong { display: block; margin-top: .35rem; font-size: 1.5rem; }.ui-heading > span { display: inline-flex; align-items: center; gap: .4rem; border-radius: 999px; padding: .45rem .7rem; color: #75e8b4; background: rgba(63,227,154,.07); font-size: .55rem; font-weight: 800; }.ui-heading > span i { width: .35rem; height: .35rem; border-radius: 50%; background: #3fe39a; box-shadow: 0 0 8px #3fe39a; }
.ui-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: .8rem; margin-top: 1.6rem; }
.ui-stat,.ui-chart,.ui-list,.ui-system-summary { border: 1px solid rgba(255,255,255,.07); border-radius: 1.1rem; padding: 1rem; background: rgba(255,255,255,.025); }
.ui-stat small,.ui-chart > small,.ui-list > small { color: var(--muted); font-size: .55rem; font-weight: 750; }.ui-stat strong { display: block; margin: 1.6rem 0 .2rem; font-size: 3.1rem; letter-spacing: -.08em; }.ui-stat span { color: #75e8b4; font-size: .55rem; }
.bar-chart { height: 120px; display: flex; align-items: end; gap: .45rem; margin-top: 1rem; }.bar-chart i { flex: 1; height: 38%; border-radius: .3rem .3rem 0 0; background: rgba(10,132,255,.18); }.bar-chart i:nth-child(2){height:55%}.bar-chart i:nth-child(3){height:43%}.bar-chart i:nth-child(4){height:74%;background:rgba(10,132,255,.45)}.bar-chart i:nth-child(5){height:64%}.bar-chart i:nth-child(6){height:88%;background:var(--blue)}.bar-chart i:nth-child(7){height:72%}
.ui-list { grid-column: 1/-1; }.ui-list p { display: grid; grid-template-columns: auto 1fr auto; gap: .65rem; align-items: center; margin: .8rem 0 0; padding-top: .8rem; border-top: 1px solid rgba(255,255,255,.06); font-size: .62rem; }.ui-list p i { width: .5rem; height: .5rem; border-radius: .18rem; background: var(--blue); }.ui-list p b { color: var(--muted); font-size: .52rem; }
.ui-system-summary { grid-column: 1/-1; }
.ui-system-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }.ui-system-head small { display: block; color: var(--blue-light); font-size: .5rem; font-weight: 850; letter-spacing: .14em; }.ui-system-head strong { display: block; margin-top: .3rem; font-size: .82rem; }.ui-system-head > span { border-radius: 999px; padding: .38rem .55rem; color: #75e8b4; background: rgba(63,227,154,.07); font-size: .5rem; font-weight: 850; }
.ui-module-preview { display: grid; grid-template-columns: 1fr 1fr; gap: .55rem; margin-top: .9rem; }
.ui-module-card { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .6rem; min-width: 0; border: 1px solid rgba(255,255,255,.065); border-radius: .8rem; padding: .62rem; background: rgba(255,255,255,.025); animation: module-in .35s ease both; animation-delay: var(--module-delay); }.ui-module-icon { width: 1.65rem; height: 1.65rem; display: grid; place-items: center; border-radius: .5rem; color: #8ed8ff; background: rgba(10,132,255,.14); font-size: .42rem; font-style: normal; font-weight: 900; }.ui-module-icon.tone-2 { color: #8cf1c0; background: rgba(63,227,154,.1); }.ui-module-icon.tone-3 { color: #c9a9ff; background: rgba(158,101,255,.12); }.ui-module-icon.tone-4 { color: #ffd19b; background: rgba(255,162,67,.11); }
.ui-module-card > div { min-width: 0; }.ui-module-card strong { display: block; overflow: hidden; font-size: .56rem; text-overflow: ellipsis; white-space: nowrap; }.ui-module-card small { display: block; overflow: hidden; margin-top: .2rem; color: rgba(234,242,255,.35); font-size: .45rem; text-overflow: ellipsis; white-space: nowrap; }.ui-module-card > span { color: #75e8b4; font-size: .44rem; font-weight: 800; }
.ui-modules-empty { grid-column: 1/-1; margin: 0; border: 1px dashed rgba(102,197,255,.2); border-radius: .9rem; padding: 1.4rem; color: rgba(234,242,255,.45); font-size: .62rem; line-height: 1.55; text-align: center; }

.control-story { overflow: hidden; background: #07101d; }
.control-backdrop { position: absolute; inset: 0; opacity: .32; background: radial-gradient(circle at 75% 50%,rgba(10,132,255,.25),transparent 27rem), linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.05) 50%,transparent 50.2%); }
.control-layout { position: relative; display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(4rem,9vw,10rem); }
.control-copy p:not(.eyebrow) { max-width: 40rem; color: rgba(234,242,255,.6); line-height: 1.75; }
.text-link { display: inline-flex; gap: .8rem; margin-top: 1.2rem; color: white; font-weight: 800; }.text-link span { color: var(--blue-light); transition: transform .2s; }.text-link:hover span { transform: translateX(.3rem); }
.control-stack { display: grid; gap: .75rem; }
.control-stack article { display: grid; grid-template-columns: auto 1fr; gap: 1.3rem; border: 1px solid rgba(255,255,255,.09); border-radius: 1.3rem; padding: 1.4rem; background: rgba(255,255,255,.035); backdrop-filter: blur(15px); transition: transform .35s,border-color .35s,background-color .35s; }
.control-stack article:hover { transform: translateX(-8px); border-color: rgba(10,132,255,.35); background: rgba(10,132,255,.055); }
.control-stack article > span { color: var(--blue-light); font-size: .58rem; font-weight: 900; letter-spacing: .15em; }
.control-stack small { color: var(--muted); font-size: .55rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.control-stack strong { display: block; margin-top: .35rem; font-size: 1.2rem; }.control-stack p { margin: .35rem 0 0; color: rgba(234,242,255,.48); font-size: .8rem; }

.section-intro.split { max-width: none; display: grid; grid-template-columns: 1.25fr .75fr; align-items: end; gap: 4rem; }.section-intro.split > p { margin: 0 0 .5rem; }
.process-list { margin: 4.5rem 0 0; padding: 0; border-top: 1px solid rgba(19,38,63,.13); list-style: none; }
.process-list li { display: grid; grid-template-columns: 80px 1fr auto; align-items: center; gap: 2rem; min-height: 145px; border-bottom: 1px solid rgba(19,38,63,.13); transition: padding .35s,background-color .35s; }
.process-list li:hover { padding-inline: 1rem; background: rgba(255,255,255,.45); }
.process-list li > span { color: var(--blue); font-size: .7rem; font-weight: 900; letter-spacing: .2em; }.process-list h3 { margin: 0; font-size: 1.55rem; letter-spacing: -.04em; }.process-list p { margin: .35rem 0 0; color: #607088; }.process-list i { border: 1px solid rgba(19,38,63,.1); border-radius: 999px; padding: .55rem .8rem; color: #6a7a90; font-size: .65rem; font-style: normal; font-weight: 750; }

.promise { padding-top: 0; color: white; background: var(--paper); }
.promise-card { position: relative; isolation: isolate; display: grid; grid-template-columns: 1.1fr .9fr; gap: 5rem; overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 2.5rem; padding: clamp(2rem,5vw,5rem); background: linear-gradient(145deg,#07101d,#0b1827); box-shadow: 0 45px 100px -55px rgba(3,12,25,.85); }
.promise-grid { position: absolute; z-index: -1; inset: 0; opacity: .18; 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: 52px 52px; mask-image: radial-gradient(circle at 30% 50%,black,transparent 70%); }
.promise-card h2 { font-size: clamp(2.5rem,4.4vw,5rem); }
.promise-points { display: grid; gap: 1rem; align-content: center; }.promise-points p { display: grid; grid-template-columns: auto 1fr; column-gap: 1rem; margin: 0; padding-bottom: 1rem; border-bottom: 1px solid rgba(255,255,255,.1); }.promise-points span { grid-row: 1/3; color: var(--blue-light); font-size: .58rem; font-weight: 900; }.promise-points strong { font-size: .95rem; }.promise-points small { margin-top: .3rem; color: rgba(234,242,255,.5); line-height: 1.5; }

.contact-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(3rem,8vw,9rem); }
.contact-copy > p:not(.eyebrow) { max-width: 37rem; color: #607088; line-height: 1.75; }
.contact-meta { margin-top: 2rem; }.contact-meta a { display: inline-flex; align-items: center; gap: .8rem; font-size: 1.05rem; font-weight: 850; }.contact-meta a span { color: var(--blue); }.contact-meta small { display: block; margin-top: .55rem; color: #7b8ba0; }
.contact-form { display: grid; gap: 1rem; border: 1px solid rgba(9,23,42,.1); border-radius: 2rem; padding: clamp(1.5rem,3vw,2.5rem); background: rgba(255,255,255,.72); box-shadow: 0 35px 80px -55px rgba(12,30,55,.45); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }.contact-form label span { display: block; margin: 0 0 .5rem .15rem; color: #53647a; font-size: .68rem; font-weight: 800; }.contact-form input,.contact-form select,.contact-form textarea { width: 100%; border: 1px solid rgba(19,38,63,.13); border-radius: 1rem; outline: 0; padding: .9rem 1rem; color: #142034; background: rgba(244,247,251,.85); transition: border-color .2s,box-shadow .2s,background-color .2s; }.contact-form textarea { resize: vertical; min-height: 110px; }.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus { border-color: var(--blue); background: white; box-shadow: 0 0 0 4px rgba(10,132,255,.09); }.form-honey { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }.form-consent { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: .65rem; cursor: pointer; }.contact-form .form-consent input { width: 1rem; height: 1rem; margin: .12rem 0 0; accent-color: var(--blue); }.contact-form .form-consent span { margin: 0; color: #607087; font-size: .66rem; font-weight: 650; line-height: 1.45; }.form-submit { width: 100%; margin-top: .25rem; }.form-submit:disabled { cursor: wait; opacity: .72; transform: none; }.form-note { margin: 0; color: #718198; font-size: .65rem; line-height: 1.5; text-align: center; }.form-note.is-success { color: #14754c; font-weight: 750; }.form-note.is-error { color: #ad2b3c; font-weight: 750; }

.site-footer { border-top: 1px solid rgba(255,255,255,.08); background: #04070c; }
.footer-top { min-height: 220px; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; gap: 2rem; }.footer-top > p { max-width: 25rem; margin: 0 auto; color: rgba(234,242,255,.45); line-height: 1.6; text-align: center; }.footer-action { justify-self: end; display: inline-flex; gap: .7rem; border-bottom: 1px solid rgba(255,255,255,.3); padding-bottom: .35rem; font-weight: 800; }.footer-action span { color: var(--blue-light); }
.footer-bottom { min-height: 70px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 2rem; border-top: 1px solid rgba(255,255,255,.07); color: rgba(234,242,255,.35); font-size: .65rem; }.footer-bottom nav { display: flex; gap: 1.2rem; }.footer-bottom > span:last-child { justify-self: end; }

.reveal { opacity: 0; transform: translateY(30px); transition: opacity .8s ease,transform .8s cubic-bezier(.2,.75,.2,1); }
.reveal.is-visible { opacity: 1; transform: none; }

@keyframes orbit-spin { to { transform: rotateX(67deg) rotateZ(380deg); } }
@keyframes scroll-line { 0% { transform: translateX(-110%); } 75%,100% { transform: translateX(210%); } }
@keyframes marquee { to { transform: translateX(-50%); } }
@keyframes module-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

@media (max-width: 1100px) {
  :root { --shell: min(calc(100% - 36px), 1200px); }
  .hero-layout { grid-template-columns: 1fr; padding-top: 4rem; }
  .hero-copy { position: relative; z-index: 2; }
  .hero h1 { font-size: clamp(4rem,12vw,7.6rem); }
  .system-scene { width: min(760px,100%); margin-inline: auto; }
  .solutions-shell,.control-layout,.contact-layout { grid-template-columns: 1fr; }
  .solutions-copy { max-width: 48rem; }
  .sector-stage { position: static; width: min(800px,100%); margin-inline: auto; }
  .control-copy { max-width: 50rem; }
  .control-stack { max-width: 700px; }
  .contact-copy { max-width: 55rem; }
}

@media (max-width: 820px) {
  .nav-wrap { grid-template-columns: 1fr auto; min-height: 72px; }
  .menu-toggle { position: relative; z-index: 2; display: grid; place-items: center; width: 43px; height: 43px; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; color: white; background: rgba(255,255,255,.04); }
  .menu-toggle span { position: absolute; width: 17px; height: 1px; background: currentColor; transition: transform .3s,top .3s; }.menu-toggle span:first-child { top: 17px; }.menu-toggle span:last-child { top: 24px; }.menu-toggle[aria-expanded="true"] span:first-child { top: 21px; transform: rotate(45deg); }.menu-toggle[aria-expanded="true"] span:last-child { top: 21px; transform: rotate(-45deg); }
  .primary-nav { position: fixed; inset: 0; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: .3rem; border: 0; border-radius: 0; padding: 6rem 2rem; background: rgba(5,8,15,.98); transform: translateY(-105%); visibility: hidden; transition: transform .45s cubic-bezier(.2,.8,.2,1),visibility .45s; }
  .primary-nav.open { transform: none; visibility: visible; }.primary-nav a { width: 100%; padding: .6rem 0; font-size: clamp(2rem,8vw,4rem); letter-spacing: -.04em; }.header-cta { display: none; }
  .layers-grid { grid-template-columns: 1fr; }.layer-card { min-height: 360px; }.layer-icon { margin-top: 2.5rem; }
  .section-intro.split { grid-template-columns: 1fr; gap: 1.5rem; }
  .promise-card { grid-template-columns: 1fr; gap: 3rem; }
  .footer-top { grid-template-columns: 1fr; padding-block: 3.5rem; text-align: center; }.footer-brand,.footer-action { justify-self: center; }.footer-top > p { margin-inline: auto; }.footer-bottom { grid-template-columns: 1fr; gap: 1rem; padding-block: 1.5rem; text-align: center; }.footer-bottom nav { justify-content: center; }.footer-bottom > span:last-child { justify-self: center; }
}

@media (max-width: 600px) {
  :root { --shell: calc(100% - 28px); --radius: 22px; }
  .brand-mark { width: 38px; height: 38px; flex-basis: 38px; }.brand-type strong { font-size: .78rem; }.brand-type small { font-size: .44rem; }
  .hero { padding-top: 6.5rem; }.hero-layout { min-height: auto; }.hero h1 { font-size: clamp(3.5rem,17vw,5.4rem); }.hero-lead { font-size: .96rem; }.hero-actions { display: grid; }.hero-actions .button { width: 100%; }.hero-tags { display: grid; grid-template-columns: 1fr 1fr; }
  .system-scene { height: 465px; min-height: 0; margin-top: 1rem; }.dashboard-main { inset: 5% 0 8%; transform: rotateY(-4deg); }.dashboard-side { width: 132px; right: -5%; }.dashboard-mobile { width: 125px; left: -3%; }.panel-header { height: 44px; }.dashboard-body { padding: .75rem; }.kpi { padding: .55rem; }.kpi strong { font-size: 1.2rem; }.chart-card svg { height: 74px; }.activity-list > div { padding: .45rem; }.activity-list > div:last-child { display: none; }.scroll-cue { display: none; }
  .section { padding: 5.5rem 0; }.section h2 { font-size: clamp(2.65rem,12vw,4rem); }.section-intro > p:last-child { font-size: .95rem; }
  .layer-card { min-height: 330px; padding: 1.5rem; }
  .solution-tabs { display: grid; grid-template-columns: 1fr 1fr; }.solution-tabs button { width: 100%; }.module-options { grid-template-columns: 1fr; }.module-configurator-actions { align-items: stretch; flex-direction: column; }.module-reset { order: 2; }.configurator-cta { width: 100%; }.sector-screen { min-height: 560px; border-radius: 1.4rem; transform: none; }.sector-screen aside { display: none; }.sector-ui { margin-left: 0; padding: 1rem; }.ui-grid { grid-template-columns: 1fr 1fr; }.ui-list { grid-column: 1/-1; }.ui-list p:last-child { display: none; }.ui-module-preview { grid-template-columns: 1fr; }
  .process-list li { grid-template-columns: 42px 1fr; gap: 1rem; padding-block: 1.3rem; }.process-list li > i { grid-column: 2; justify-self: start; }.process-list p { font-size: .85rem; line-height: 1.55; }
  .promise-card { width: calc(100% - 20px); padding: 2rem 1.3rem; border-radius: 1.7rem; }.promise-card h2 { font-size: 2.65rem; }
  .form-grid { grid-template-columns: 1fr; }.contact-form { padding: 1.25rem; border-radius: 1.5rem; }
}

@media (hover: hover) and (pointer: fine) { .pointer-glow.active { opacity: 1; } }
@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; }
  .pointer-glow { display: none; }
}

:focus-visible { outline: 2px solid var(--blue-light); outline-offset: 4px; }
