:root {
    --bg: #111417;
    --panel: #1c2125;
    --panel-2: #20262a;
    --panel-3: #151a1e;
    --line: #334149;
    --line-soft: #252e34;
    --text: #e3e8ea;
    --text-2: #b7c0c5;
    --muted: #79858b;
    --cyan: #28bce7;
    --cyan-dim: #164a68;
    --cyan-soft: #193b4b;
    --green: #42d66e;
    --red: #ff6070;
    --max: 1600px;
}

* { box-sizing: border-box; }
html { background: var(--bg); scroll-behavior: smooth; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: Manrope, "Segoe UI", Arial, sans-serif; -webkit-font-smoothing: antialiased; }
::selection { color: #fff; background: #0f78a8; }
a { color: inherit; }
button, input, select, textarea { font: inherit; }
svg { display: block; }
.page-glow { display: none; }
.site-shell { min-height: 100vh; overflow-x: clip; }
.site-shell > main {
    background-color: var(--bg);
    background-image:
        linear-gradient(rgba(72,103,118,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(72,103,118,.055) 1px, transparent 1px),
        linear-gradient(rgba(72,103,118,.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(72,103,118,.08) 1px, transparent 1px);
    background-size: 40px 40px, 40px 40px, 200px 200px, 200px 200px;
    background-position: -1px -1px;
}
.section-pad { width: min(100%, var(--max)); margin-inline: auto; padding-inline: clamp(24px, 4.5vw, 72px); }

.site-header { width: 100%; height: 58px; margin-inline: 0; padding: 0 clamp(18px, 3vw, 44px); display: grid; grid-template-columns: 295px 1fr auto; align-items: center; border-bottom: 1px solid var(--line); background: rgba(32,38,42,.97); position: sticky; top: 0; z-index: 50; backdrop-filter: blur(10px); }
.site-brand { width: max-content; display: inline-flex; align-items: center; gap: 9px; color: var(--text); text-decoration: none; }
.site-mark { width: 34px; height: 34px; }
.site-brand span { display: inline-flex; font-size: 16px; font-weight: 800; letter-spacing: -.025em; }
.site-brand span em { color: var(--cyan); font-style: normal; }
.site-brand small { margin-left: 9px; padding-left: 12px; border-left: 1px solid var(--line); color: var(--muted); font-size: 6px; font-weight: 700; line-height: 1.35; letter-spacing: .11em; max-width: 105px; }
.site-nav { height: 100%; display: flex; justify-content: center; align-items: stretch; gap: 2px; }
.site-nav a { min-width: 78px; padding: 0 12px; display: grid; place-items: center; border-bottom: 2px solid transparent; color: #a5afb4; font-size: 10px; font-weight: 650; text-decoration: none; transition: .16s ease; }
.site-nav a:hover { color: white; background: #252c31; }
.site-nav a.active { color: white; border-bottom-color: var(--cyan); background: #192126; }
.account-link { min-height: 34px; padding: 0 13px; display: inline-flex; align-items: center; gap: 12px; border: 1px solid #4a5b64; border-radius: 4px; color: #dce3e6; background: #192025; font-size: 9px; font-weight: 700; text-decoration: none; transition: .16s ease; }
.account-link:hover { border-color: var(--cyan); color: white; background: var(--cyan-soft); }
.account-link svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.nav-toggle { display: none; width: 36px; height: 34px; padding: 9px; border: 1px solid #4a5b64; border-radius: 4px; background: #192025; }
.nav-toggle span { display: block; height: 1px; margin: 4px 0; background: #c5cdd1; }

.hero { min-height: 720px; padding-top: 64px; padding-bottom: 34px; display: grid; grid-template-columns: repeat(12, 1fr); grid-template-rows: auto 1fr auto; gap: 18px; border-bottom: 1px solid var(--line); }
.hero-index { grid-column: 1; grid-row: 1 / 3; padding-top: 4px; display: flex; flex-direction: column; gap: 7px; color: #65737a; font-size: 7px; font-weight: 800; letter-spacing: .13em; writing-mode: vertical-rl; transform: rotate(180deg); }
.hero-index span:first-child { color: var(--cyan); }
.hero-copy { grid-column: 2 / 7; grid-row: 1 / 3; align-self: center; padding-bottom: 20px; }
.eyebrow { display: inline-flex; align-items: center; gap: 9px; color: var(--cyan); font-size: 9px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.eyebrow i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 8px rgba(66,214,110,.5); }
.hero h1, .inner-hero h1 { margin: 23px 0 27px; color: #eef2f4; font-size: clamp(58px, 6.2vw, 96px); font-weight: 650; line-height: .92; letter-spacing:-.025em; }
.hero h1 span, .inner-hero h1 span { color: var(--cyan); }
.hero-copy > p { max-width: 570px; margin: 0; color: #9da9af; font-size: 15px; line-height: 1.72; }
.hero-actions { margin-top: 31px; display: flex; align-items: center; gap: 22px; }
.button { min-height: 40px; padding: 0 16px; border: 1px solid #495a63; border-radius: 4px; display: inline-flex; align-items: center; justify-content: center; gap: 11px; color: #d8e0e3; background: #192025; font-size: 9px; font-weight: 750; text-decoration: none; transition: .16s ease; }
.button svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.button:hover, .button.ghost:hover { border-color: var(--cyan); color: white; background: var(--cyan-soft); }
.button.primary { border-color: #168fbd; color: white; background: #0c749f; }
.button.primary:hover { border-color: #33c6ee; background: #1089b8; }
.button.light { border-color: #56717e; background: #1b2a31; }
.text-link { display: inline-flex; align-items: center; gap: 9px; color: #b8c3c8; font-size: 9px; font-weight: 700; text-decoration: none; }
.text-link:hover { color: var(--cyan); }.text-link span { color: var(--cyan); font-size: 15px; }
.hero-product { grid-column: 7 / 13; grid-row: 1 / 3; align-self: center; min-width: 0; margin: 0; }
.product-window { overflow: hidden; border: 1px solid #31556a; border-radius: 5px; background: var(--panel); box-shadow: 0 18px 50px rgba(0,0,0,.32); }
.product-window-bar { height: 34px; padding: 0 11px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; border-bottom: 1px solid #34434b; color: #849198; background: var(--panel-2); font-size: 6px; font-style: normal; letter-spacing: .11em; }
.product-window-bar > span { display: flex; gap: 5px; }.product-window-bar i { width: 6px; height: 6px; border-radius: 50%; background: #68747a; }.product-window-bar i:first-child { background: var(--red); }.product-window-bar b { font-weight: 650; }.product-window-bar em { justify-self: end; color: var(--green); font-style: normal; }
.product-window img { display: block; width: 100%; max-width: 100%; height: auto; }
.hero-product figcaption { margin-top: 12px; display: flex; justify-content: space-between; gap: 15px; color: #637078; font-size: 7px; }.hero-product figcaption b { color: #98a5ab; font-weight: 650; }
.hero-facts { grid-column: 2 / 13; grid-row: 3; display: grid; grid-template-columns: repeat(3, minmax(120px, 190px)); border-top: 1px solid var(--line-soft); }
.hero-facts div { padding: 15px 24px 0 0; }.hero-facts div + div { padding-left: 24px; border-left: 1px solid var(--line-soft); }.hero-facts strong,.hero-facts span { display: block; }.hero-facts strong { font-size: 15px; }.hero-facts span { margin-top: 4px; color: #68757b; font-size: 7px; }

.trust-line { width: min(100%, var(--max)); min-height: 70px; margin-inline: auto; padding: 0 clamp(24px, 4.5vw, 72px); display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid var(--line-soft); color: #748188; background: #14191c; font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.trust-line small { color: var(--cyan); font-size: 7px; letter-spacing: .13em; }
.features { padding-top: 105px; padding-bottom: 110px; }
.section-heading { margin-bottom: 48px; display: grid; grid-template-columns: 1.3fr .7fr; align-items: end; gap: 40px; }
.section-heading .eyebrow { grid-column: 1 / -1; }.section-heading h2 { max-width: 890px; margin: 14px 0 0; font-size: clamp(37px, 4.4vw, 62px); font-weight: 600; line-height: 1.05; letter-spacing:-.02em; }.section-heading p { margin: 0; color: #829098; font-size: 12px; line-height: 1.75; }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.feature-card { min-height: 270px; padding: 25px; border: 1px solid var(--line-soft); border-radius: 4px; background: var(--panel-3); transition: .16s ease; }
.feature-card:hover { border-color: #3d6273; background: #192126; }.feature-card > span { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid #345363; border-radius: 4px; color: var(--cyan); background: #14232b; }.feature-card > span svg,.download-card > span svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.feature-card h3 { margin: 48px 0 11px; font-size: 17px; }.feature-card p { max-width: 350px; min-height: 64px; margin: 0; color: #7f8d94; font-size: 10px; line-height: 1.75; }.feature-card a,.solution-card a { margin-top: 20px; display: inline-flex; align-items: center; gap: 8px; color: var(--cyan); font-size: 8px; font-weight: 800; text-decoration: none; }.feature-card a svg,.solution-card a svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 2; }

.control-showcase { padding-bottom:48px; }
.control-grid { display:grid; gap:10px; }
.control-panel { min-height:510px; display:grid; grid-template-columns:.72fr 1.28fr; gap:42px; padding:32px; border:1px solid var(--line); border-radius:5px; background:#151a1e; }
.control-copy { align-self:center; }
.control-copy>span { color:var(--cyan); font-size:10px; font-weight:800; letter-spacing:.12em; }
.control-copy h3 { margin:17px 0 15px; font-size:30px; line-height:1.15; letter-spacing:-.012em; }
.control-copy p { margin:0; color:#87949b; font-size:14px; line-height:1.75; }
.control-copy ul { margin:27px 0 0; padding:0; display:grid; gap:11px; list-style:none; }
.control-copy li { display:flex; align-items:center; gap:9px; color:#b4bec3; font-size:12px; }
.control-copy li::before { content:""; width:6px; height:6px; border:1px solid var(--cyan); border-radius:50%; }
.ui-toolbar { height:37px; padding:0 12px; display:flex; align-items:center; gap:12px; border-bottom:1px solid #34434b; color:#7e8b91; background:var(--panel-2); font-size:8px; }
.ui-toolbar b { margin-right:auto; color:#bfc8cc; font-size:8px; letter-spacing:.08em; }
.ui-toolbar em { display:flex; align-items:center; gap:7px; color:var(--green); font-size:7px; font-style:normal; }.ui-toolbar em i { width:6px; height:6px; border-radius:50%; background:var(--green); box-shadow:0 0 7px rgba(66,214,110,.55); }
.map-ui { align-self:center; overflow:hidden; border:1px solid #36515e; border-radius:4px; background:#11171a; box-shadow:0 18px 35px rgba(0,0,0,.22); }
.real-map-ui { position:relative; margin:0; background:#0c1318; }
.real-map-ui img { display:block; width:100%; height:auto; aspect-ratio:1400/820; object-fit:cover; }
.real-map-ui figcaption { min-height:42px; padding:0 13px; display:flex; align-items:center; justify-content:space-between; gap:14px; border-top:1px solid #34434b; color:#849198; background:var(--panel-2); font-size:8px; letter-spacing:.055em; }
.real-map-ui figcaption span { display:flex; align-items:center; gap:8px; color:#afbdc3; font-weight:750; }
.real-map-ui figcaption i { width:7px; height:7px; border-radius:50%; background:var(--cyan); box-shadow:0 0 8px rgba(40,188,231,.65); }
.real-map-ui figcaption b { color:#728087; font-size:8px; font-weight:700; }

.architecture { padding-bottom:48px; }
.architecture-panel { min-height: 460px; padding: clamp(35px, 5vw, 68px); display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 40px; border: 1px solid var(--line); border-radius: 5px; background: #161c20; }
.architecture-panel h2 { max-width: 500px; margin: 17px 0; font-size: clamp(38px,4vw,58px); font-weight: 600; line-height: 1; letter-spacing:-.02em; }.architecture-panel p { max-width: 490px; margin: 0 0 28px; color: #87949b; font-size: 11px; line-height: 1.8; }
.node-map { height: 320px; position: relative; }.node { position: absolute; z-index: 2; display: grid; place-items: center; border: 1px solid #3c5968; border-radius: 3px; color: #9fb0b8; background: #192126; font-size: 7px; font-weight: 800; text-align: center; }.node.core { width: 108px; height: 108px; left: 50%; top: 50%; transform: translate(-50%,-50%); border-color: var(--cyan); border-radius: 50%; color: white; background: #15303e; box-shadow: 0 0 28px rgba(40,188,231,.08); font-size: 13px; }.node.device-node { width:64px; height:64px; border-color:#3c6274; border-radius:50%; color:var(--cyan); background:#14232b; box-shadow:0 8px 18px rgba(0,0,0,.22); }.node.device-node svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.35; stroke-linecap:round; stroke-linejoin:round; }.node.device-node small { position:absolute; top:72px; left:50%; width:100px; transform:translateX(-50%); color:#85939a; font-size:8px; font-weight:700; white-space:nowrap; }.node.n1 { left: 3%; top: 10%; }.node.n2 { right: 3%; top: 9%; }.node.n3 { left: 9%; bottom: 12%; }.node.n4 { right: 7%; bottom: 13%; }.node-map i { position: absolute; height: 1px; transform-origin: left; background: #27566d; }.l1 { width: 205px; left: 13%; top: 22%; transform: rotate(23deg); }.l2 { width: 185px; left: 57%; top: 49%; transform: rotate(-31deg); }.l3 { width: 195px; left: 18%; top: 75%; transform: rotate(-29deg); }.l4 { width: 165px; left: 57%; top: 53%; transform: rotate(31deg); }
.node-links { position:absolute; inset:0; z-index:1; width:100%; height:100%; overflow:visible; }
.node-links line { stroke:#2f718f; stroke-width:1.5; vector-effect:non-scaling-stroke; }
.node-links circle { fill:var(--cyan); filter:drop-shadow(0 0 5px rgba(40,188,231,.8)); }
.node.device-node { transform:translate(-50%,-50%); }
.node.device-node small { top:76px; width:140px; color:#aab8be; font-size:12px; font-weight:650; letter-spacing:.01em; }
.node.device-node svg { width:31px; height:31px; stroke-width:1.5; }
.node.n1 { left:10%; top:18%; }.node.n2 { left:90%; right:auto; top:18%; }.node.n3 { left:15%; bottom:auto; top:80%; }.node.n4 { left:87%; right:auto; bottom:auto; top:80%; }
.compatibility { padding-bottom:48px; }
.compatibility-panel { padding:48px; border:1px solid var(--line); border-radius:5px; background:#151a1e; }
.compatibility-heading { display:grid; grid-template-columns:1.15fr .85fr; gap:35px; align-items:end; }
.compatibility-heading .eyebrow { grid-column:1/-1; }
.compatibility-heading h2 { margin:13px 0 0; font-size:clamp(34px,3.4vw,48px); line-height:1.08; letter-spacing:-.018em; }
.compatibility-heading h2 span { color:var(--cyan); }
.compatibility-heading p { margin:0; color:#8a979d; font-size:15px; line-height:1.75; }
.compatibility-grid { margin-top:42px; display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line-soft); border:1px solid var(--line-soft); }
.compatibility-grid article { min-height:205px; padding:23px; background:#12181b; }
.compatibility-grid b { display:block; font-size:15px; }
.compatibility-grid p { min-height:64px; margin:12px 0 22px; color:#7f8c93; font-size:12px; line-height:1.65; }
.compatibility-grid span { display:inline-block; margin:3px 3px 0 0; padding:5px 7px; border:1px solid #345363; border-radius:3px; color:#8dcbe0; background:#14232b; font-size:8px; font-weight:800; letter-spacing:.05em; }
.cta { padding-bottom:48px; }.cta-box { min-height: 210px; padding: 40px 44px; display: flex; align-items: center; justify-content: space-between; gap: 40px; border: 1px solid var(--line); border-radius: 5px; background: var(--panel-3); }.cta-box h2 { margin: 12px 0 7px; font-size: clamp(31px,3.6vw,49px); font-weight: 600; letter-spacing:-.018em; }.cta-box p { margin: 0; color: #7f8d94; font-size: 11px; }

.inner-hero { padding-top: 96px; padding-bottom: 72px; border-bottom: 1px solid var(--line); }.inner-hero.compact { padding-bottom: 56px; }.inner-hero h1 { max-width: 1040px; margin: 21px 0 26px; }.inner-hero p { max-width: 760px; margin: 0; color: #929fa5; font-size: 15px; line-height: 1.7; }
.product-list { padding-bottom: 100px; }.product-row { padding: 44px 0; display: grid; grid-template-columns: 80px 1.2fr .9fr; gap: 40px; align-items: start; border-bottom: 1px solid var(--line-soft); }.product-number { color: var(--cyan); font-size: 10px; font-weight: 800; }.product-row h2 { margin: 0 0 14px; font-size: 25px; letter-spacing: -.03em; }.product-row p { max-width: 600px; margin: 0; color: #7f8d94; font-size: 11px; line-height: 1.8; }.product-row ul { margin: 0; padding: 0; display: grid; gap: 13px; list-style: none; }.product-row li { display: flex; align-items: center; gap: 9px; color: #adb8bd; font-size: 10px; }.product-row li svg { width: 14px; height: 14px; fill: none; stroke: var(--cyan); stroke-width: 2; }
.pricing-layout { padding-top:52px; padding-bottom:48px; display:grid; grid-template-columns:repeat(2,1fr); gap:8px; }
.pricing-card,.pricing-note { border:1px solid var(--line); border-radius:5px; background:var(--panel-3); }
.pricing-card { min-height:470px; padding:48px; display:grid; grid-template-rows:auto 1fr auto auto; gap:30px; }
.pricing-card>.eyebrow { align-self:start; }
.pricing-title { align-self:end; }.pricing-title h2 { margin:0 0 13px; font-size:38px; letter-spacing:-.01em; }.pricing-title p { max-width:480px; margin:0; color:#859299; font-size:15px; line-height:1.7; }
.pricing-value { align-self:end; text-align:left; }.pricing-value strong,.pricing-value span { display:block; }.pricing-value strong { color:var(--cyan); font-size:clamp(54px,5vw,78px); font-weight:650; line-height:.95; letter-spacing:-.025em; white-space:nowrap; }.pricing-value span { margin-top:11px; color:#87949b; font-size:13px; }
.pricing-card>.button { justify-self:start; }
.pricing-note { grid-column:1 / -1; min-height:240px; padding:42px 48px; display:grid; grid-template-columns:.85fr 1.15fr; grid-template-rows:auto 1fr; gap:28px 54px; }.pricing-note>span { grid-column:1 / -1; color:var(--cyan); font-size:10px; font-weight:800; letter-spacing:.12em; }.pricing-note>div { align-self:end; }.pricing-note h2 { max-width:470px; margin:0; font-size:31px; letter-spacing:-.01em; }.pricing-note p { max-width:650px; margin:0 0 24px; color:#859299; font-size:14px; line-height:1.75; }
.protocol-band { min-height: 88px; margin-bottom: 100px; padding-top: 18px; padding-bottom: 18px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid var(--line-soft); border-radius: 4px; background: var(--panel-3); }.protocol-band span { color: var(--cyan); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }.protocol-band b { color: #9aa6ac; font-size: 11px; }
.solution-grid { padding-top: 55px; padding-bottom: 100px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.solution-card { min-height: 360px; padding: 34px; position: relative; isolation: isolate; overflow: hidden; border: 1px solid var(--line-soft); border-radius: 4px; background: #11171a; }
.solution-card::before,.solution-card::after { content:""; position:absolute; inset:0; pointer-events:none; }
.solution-card::before { z-index:-2; background-repeat:no-repeat; background-position:center right; background-size:cover; opacity:.8; transform:scale(1.002); transition:transform .55s ease,opacity .35s ease; }
.solution-card::after { z-index:-1; background:linear-gradient(90deg,rgba(12,16,19,.96) 0%,rgba(12,16,19,.84) 37%,rgba(12,16,19,.46) 66%,rgba(12,16,19,.14) 100%),linear-gradient(0deg,rgba(12,16,19,.88) 0%,rgba(12,16,19,.04) 68%); }
.solution-card:hover::before { opacity:.9; transform:scale(1.04); }
.solution-card-01::before { background-image:url('/assets/site/solutions/residential.webp'); }
.solution-card-02::before { background-image:url('/assets/site/solutions/industrial.webp'); }
.solution-card-03::before { background-image:url('/assets/site/solutions/distributed.webp'); }
.solution-card-04::before { background-image:url('/assets/site/solutions/situation-center.webp'); }
.solution-card-05::before { background-image:url('/assets/site/solutions/education.webp'); }
.solution-card-06::before { background-image:url('/assets/site/solutions/government.webp'); }
.solution-card > span { color: var(--cyan); font-size: 9px; font-weight: 800; text-shadow:0 1px 14px #000; }
.solution-card h2 { max-width:75%; margin: 115px 0 14px; font-size: 25px; letter-spacing: -.03em; text-shadow:0 2px 18px rgba(0,0,0,.9); }
.solution-card p { max-width: 520px; margin: 0; color: #a7b3b8; font-size: 11px; line-height: 1.8; text-shadow:0 1px 12px rgba(0,0,0,.95); }
.update-layout { padding-top: 52px; padding-bottom: 100px; display: grid; grid-template-columns: 250px 1fr; gap: 55px; }.update-layout > aside { align-self: start; padding: 20px; border: 1px solid var(--line-soft); border-radius: 4px; background: var(--panel-3); position: sticky; top: 20px; }.update-layout > aside span,.update-layout > aside p { color: #758289; font-size: 8px; }.update-layout > aside strong { display: block; margin: 17px 0 6px; font-size: 16px; }.update-layout > aside i { display: block; height: 2px; margin-top: 20px; background: var(--cyan); }.update-list { border-top: 1px solid var(--line); }.update-item { padding: 29px 0; display: grid; grid-template-columns: 210px 1fr; gap: 32px; border-bottom: 1px solid var(--line-soft); }.update-version { padding-left: 20px; position: relative; }.update-version i { position: absolute; left: 0; top: 5px; width: 6px; height: 6px; border-radius: 50%; background: #5b6870; }.update-version i.current { background: var(--green); box-shadow: 0 0 8px rgba(66,214,110,.5); }.update-version span,.update-version strong { display: block; }.update-version span { color: #748188; font-size: 8px; }.update-version strong { margin-top: 6px; font-size: 11px; }.update-item > div:last-child small { color: var(--cyan); font-size: 8px; font-weight: 800; letter-spacing: .07em; }.update-item p { margin: 9px 0 0; color: #849198; font-size: 11px; line-height: 1.75; }
.download-grid { padding-top: 52px; padding-bottom: 48px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }.download-card { min-height: 370px; padding: 35px; border: 1px solid var(--line-soft); border-radius: 4px; background: var(--panel-3); }.download-card > span { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid #345363; border-radius: 4px; color: var(--cyan); background: #14232b; }.download-card > small { display: block; margin-top: 40px; color: var(--cyan); font-size: 8px; font-weight: 800; letter-spacing: .1em; }.download-card h2 { margin: 13px 0; font-size: 28px; }.download-card p { max-width: 540px; min-height: 75px; color: #7f8d94; font-size: 11px; line-height: 1.8; }.download-card > div { margin-top: 21px; padding-top: 18px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line-soft); }.download-card b { color: #9ba7ad; font-size: 9px; }
.requirements { margin-bottom: 100px; padding-top: 30px; padding-bottom: 30px; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.requirements h2 { margin: 9px 0; font-size: 24px; }.requirements > p { color: #7f8d94; font-size: 11px; line-height: 1.8; }
.contact-grid { padding-top: 52px; padding-bottom: 100px; display: grid; grid-template-columns: 1.2fr .8fr; gap: 8px; }.contact-primary,.contact-steps { padding: 38px; border: 1px solid var(--line-soft); border-radius: 4px; background: var(--panel-3); }.contact-primary small { color: var(--cyan); font-size: 8px; font-weight: 800; letter-spacing: .1em; }.contact-primary h2 { max-width: 650px; margin: 15px 0; font-size: 28px; line-height: 1.25; letter-spacing: -.03em; }.contact-primary > p { max-width: 610px; color: #7f8d94; font-size: 11px; line-height: 1.8; }.contact-status { margin-top: 48px; padding: 14px; display: flex; align-items: center; gap: 11px; border: 1px solid var(--line-soft); border-radius: 4px; background: #171e22; }.contact-status > i { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 8px rgba(66,214,110,.5); }.contact-status b,.contact-status small { display: block; }.contact-status b { font-size: 10px; }.contact-status small { margin-top: 3px; color: #6e7b82; font-size: 8px; }.contact-steps { display: grid; align-content: center; }.contact-steps > div { padding: 19px 0; display: grid; grid-template-columns: 42px 1fr; border-bottom: 1px solid var(--line-soft); }.contact-steps > div:last-child { border: 0; }.contact-steps span { color: var(--cyan); font-size: 9px; font-weight: 800; }.contact-steps b { display: block; margin-bottom: 5px; font-size: 12px; }.contact-steps p { margin: 0; color: #7f8d94; font-size: 10px; line-height: 1.6; }

.account-page { min-height: calc(100vh - 58px); padding-top: 55px; padding-bottom: 80px; display: grid; place-items: center; }.account-card { width: min(100%, 520px); padding: 46px; border: 1px solid var(--line); border-radius: 5px; background: var(--panel-3); box-shadow: 0 18px 50px rgba(0,0,0,.22); text-align: center; }.account-mark { display: inline-block; }.account-mark .site-mark { width: 45px; height: 45px; }.account-card > small { display: block; margin: 21px 0 11px; color: var(--cyan); font-size: 8px; font-weight: 800; letter-spacing: .13em; }.account-card h1 { margin: 0 0 15px; font-size: 31px; }.account-card p { color: #829097; font-size: 11px; line-height: 1.75; }

.site-footer { border-top: 1px solid var(--line); background: #0d1012; }.footer-main { width: min(100%,var(--max)); margin-inline: auto; padding:68px clamp(24px,4.5vw,72px) 58px; display:grid; grid-template-columns:1.55fr .75fr .75fr 1.35fr; gap:54px; }.site-footer .site-brand small { display:none; }.site-footer .site-mark { width:42px; height:42px; }.site-footer .site-brand span { font-size:20px; }.footer-brand p { max-width:430px; margin-top:22px; color:#68757b; font-size:10px; line-height:1.75; }.footer-main > div:not(.footer-brand) { display:flex; flex-direction:column; gap:14px; }.footer-main .footer-company { gap:7px; }.footer-main strong { margin-bottom:9px; color:#cbd3d6; font-size:10px; }.footer-main a,.footer-main span { color:#69767d; font-size:9px; text-decoration:none; }.footer-main a:hover { color:var(--cyan); }.footer-company b { color:#c4d0d5; font-size:14px; font-weight:700; }.footer-company a { color:#8dcbe0; }.footer-bottom { width:min(100%,var(--max)); margin-inline:auto; padding:10px clamp(24px,4.5vw,72px); display:flex; align-items:center; justify-content:space-between; gap:28px; border-top:1px solid #252d31; color:#536067; font-size:8px; }.footer-legal { display:flex; align-items:center; gap:22px; }.footer-bottom a { color:#8ea0a8; font-weight:700; text-decoration:none; transition:color .15s ease; }.footer-bottom a:hover { color:var(--cyan); }
.scroll-top { position:fixed; z-index:80; right:clamp(16px,2.7vw,42px); bottom:28px; width:48px; height:48px; padding:0; display:grid; place-items:center; border:1px solid #3b687b; border-radius:50%; color:#dff7ff; background:rgba(20,35,43,.94); box-shadow:0 12px 30px rgba(0,0,0,.36); backdrop-filter:blur(8px); cursor:pointer; opacity:0; visibility:hidden; transform:translateY(14px); transition:opacity .2s ease,transform .2s ease,visibility .2s ease,border-color .15s ease,background-color .15s ease; }.scroll-top.visible { opacity:1; visibility:visible; transform:translateY(0); }.scroll-top:hover { border-color:var(--cyan); background:#173a49; }.scroll-top svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; transform:rotate(-90deg); }
.reveal { opacity: 1; transform: none; }

@media (max-width: 1120px) {
    .site-header { grid-template-columns: 220px 1fr auto; }.site-brand small { display: none; }.site-nav a { min-width: auto; padding-inline: 9px; }.hero h1 { font-size: clamp(55px,6vw,78px); }.feature-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 860px) {
    .site-header { height: 58px; grid-template-columns: 1fr auto auto; padding-inline: 16px; }.nav-toggle { display: block; margin-right: 8px; }.site-nav { display: none; position: absolute; left: 16px; right: 16px; top: 57px; height: auto; padding: 8px; flex-direction: column; align-items: stretch; border: 1px solid var(--line); border-radius: 4px; background: var(--panel-2); box-shadow: 0 15px 35px rgba(0,0,0,.4); }.site-nav.open { display: flex; }.site-nav a { min-height: 38px; display: flex; justify-content: flex-start; border: 0; }.site-nav a.active { border-left: 2px solid var(--cyan); }
    .hero { min-height: 680px; }.hero-index { display: none; }.hero-copy { grid-column: 1 / 8; grid-row: 1; }.hero-product { grid-column: 5 / 13; grid-row: 2; margin-top: -45px; }.hero-facts { grid-column: 1 / 13; grid-row: 3; }.section-heading { grid-template-columns: 1fr; }.control-panel { grid-template-columns:1fr; }.architecture-panel { grid-template-columns: 1fr; }.node-map { margin-top: 20px; }.compatibility-heading { grid-template-columns:1fr; }.compatibility-grid { grid-template-columns:1fr 1fr; }.product-row { grid-template-columns: 45px 1fr; }.product-row ul { grid-column: 2; }.update-layout { grid-template-columns: 1fr; }.update-layout > aside { position: static; }.download-grid,.contact-grid,.requirements { grid-template-columns: 1fr; }.footer-main { grid-template-columns:1fr 1fr; }.footer-company { grid-column:2; }
}
@media (max-width: 600px) {
    .section-pad { padding-inline: 18px; }.site-brand span { font-size: 14px; }.site-mark { width: 32px; height: 32px; }.account-link { width: 36px; padding: 0; justify-content: center; }.account-link span { display: none; }.scroll-top { right:16px; bottom:18px; width:44px; height:44px; }
    .hero { display: flex; flex-direction: column; min-height: auto; padding-top: 48px; padding-bottom: 29px; }.hero-copy { padding: 0; }.hero h1,.inner-hero h1 { margin-top: 19px; font-size: 50px; letter-spacing:-.02em; }.hero-copy > p,.inner-hero p { font-size: 13px; }.hero-actions { align-items: stretch; flex-direction: column; gap: 15px; }.hero-actions .button { width: 100%; }.text-link { justify-content: center; }.hero-product { order: 2; width: 100%; max-width: 100%; margin: 42px 0 0; }.product-window { box-shadow: none; }.product-window-bar { grid-template-columns: 1fr auto; }.product-window-bar b { display: none; }.hero-product figcaption { font-size: 6px; }.hero-facts { order: 3; width: 100%; margin-top: 30px; grid-template-columns: 1fr; }.hero-facts div { padding: 13px 0; }.hero-facts div + div { padding-left: 0; border-left: 0; border-top: 1px solid var(--line-soft); }
    .trust-line { padding: 19px 18px; min-height: 0; justify-content: flex-start; overflow-x: auto; }.trust-line small { min-width: 65px; }.trust-line span { min-width: max-content; }.features { padding-top: 78px; padding-bottom: 82px; }.section-heading { margin-bottom: 36px; }.section-heading h2 { font-size: 36px; }.feature-grid { grid-template-columns: 1fr; }.feature-card { min-height: 230px; }.feature-card h3 { margin-top: 35px; }
    .control-showcase { padding-bottom:38px; }.control-panel { min-height:0; padding:20px; gap:28px; }.control-copy h3 { font-size:26px; }.architecture { padding:0 0 38px; }.architecture-panel { padding: 43px 18px; }.architecture-panel h2 { font-size: 39px; }.node-map { height: 280px; transform: scale(.86); margin-left: -34px; margin-right: -34px; }.compatibility { padding-bottom:38px; }.compatibility-panel { padding:30px 20px; }.compatibility-heading h2 { font-size:34px; }.compatibility-heading p { font-size:14px; }.compatibility-grid { grid-template-columns:1fr; }.compatibility-grid article { min-height:0; }.compatibility-grid p { min-height:0; }.cta { padding-bottom:38px; }.cta-box { padding: 32px 23px; display: block; }.cta-box .button { width: 100%; margin-top: 21px; }
    .inner-hero { padding-top:72px; padding-bottom:50px; }.pricing-layout { grid-template-columns:1fr; padding-top:38px; }.pricing-card { min-height:0; padding:30px 24px; grid-template-rows:auto; gap:34px; }.pricing-title,.pricing-value { align-self:auto; text-align:left; }.pricing-value strong { font-size:52px; }.pricing-card>.button { width:100%; }.pricing-note { grid-column:auto; min-height:0; padding:30px 24px; grid-template-columns:1fr; grid-template-rows:auto; gap:34px; }.pricing-note>span { grid-column:auto; }.pricing-note>div { align-self:auto; }.product-row { grid-template-columns: 1fr; gap: 14px; padding: 34px 0; }.product-row ul { grid-column: auto; }.protocol-band { flex-wrap: wrap; justify-content: flex-start; padding: 24px 18px; }.protocol-band span { width: 100%; }.solution-grid { grid-template-columns: 1fr; padding-top: 38px; }.solution-card { min-height: 260px; padding: 25px; }.solution-card h2 { margin-top: 52px; }.update-layout { padding-top: 38px; }.update-item { grid-template-columns: 1fr; gap: 15px; }.download-grid,.contact-grid { padding-top: 38px; }.download-card,.contact-primary,.contact-steps { padding: 25px; }.download-card > div { align-items: stretch; flex-direction: column; gap: 16px; }.account-card { padding: 34px 21px; }
    .footer-main { grid-template-columns:1fr 1fr; padding-top:44px; gap:38px 26px; }.footer-brand,.footer-company { grid-column:1 / -1; }.footer-bottom { display:block; }.footer-legal { align-items:flex-start; flex-direction:column; gap:6px; }.footer-bottom span { display:block; margin-top:5px; }
}
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; } }

/* Readability scale: web typography keeps the product character without desktop-UI microtext. */
.site-nav a { font-size:12px; }
.account-link { font-size:11px; }
.site-brand small { font-size:8px; }
.eyebrow { font-size:11px; }
.hero h1,.inner-hero h1 { font-size:clamp(52px,5.2vw,78px); line-height:.96; }
.hero h1.hero-title-product { font-size:clamp(44px,4vw,58px); line-height:1.02; }
.hero-copy>p { max-width:620px; font-size:18px; line-height:1.68; }
.button,.text-link { font-size:12px; }
.hero-product figcaption { font-size:10px; }
.hero-facts strong { font-size:19px; }
.hero-facts span { font-size:11px; }
.trust-line { font-size:13px; }
.trust-line small { font-size:9px; }
.section-heading h2 { font-size:clamp(36px,3.8vw,52px); line-height:1.08; }
.section-heading p { font-size:16px; }
.feature-card h3 { font-size:21px; }
.feature-card p { min-height:82px; font-size:14px; line-height:1.7; }
.feature-card a,.solution-card a { font-size:11px; }
.architecture-panel h2 { font-size:clamp(36px,3.6vw,50px); }
.architecture-panel p { font-size:15px; }
.cta-box h2 { font-size:clamp(30px,3.2vw,44px); }
.cta-box p { font-size:15px; }
.inner-hero p { font-size:18px; }
.product-number { font-size:13px; }
.product-row h2 { font-size:29px; }
.product-row p { font-size:15px; }
.product-row li { font-size:14px; }
.protocol-band span { font-size:10px; }
.protocol-band b { font-size:14px; }
.solution-card>span { font-size:12px; }
.solution-card h2 { font-size:29px; }
.solution-card p { font-size:15px; }
.update-layout>aside span,.update-layout>aside p { font-size:11px; }
.update-layout>aside strong { font-size:19px; }
.update-version span { font-size:11px; }
.update-version strong { font-size:14px; }
.update-item>div:last-child small { font-size:11px; }
.update-item p { font-size:15px; }
.download-card>small { font-size:10px; }
.download-card h2 { font-size:31px; }
.download-card p { font-size:15px; }
.download-card b { font-size:12px; }
.requirements>p { font-size:15px; }
.contact-primary small { font-size:10px; }
.contact-primary h2 { font-size:31px; }
.section-heading h2,.architecture-panel h2,.compatibility-heading h2,.cta-box h2,.product-row h2,.solution-card h2,.pricing-title h2,.pricing-note h2,.download-card h2,.requirements h2,.contact-primary h2 { letter-spacing:.005em; }
.feature-card h3,.download-card h2,.account-card h1 { letter-spacing:0; }
.contact-primary>p { font-size:15px; }
.contact-status b { font-size:12px; }
.contact-status small { font-size:10px; }
.contact-steps span { font-size:11px; }
.contact-steps b { font-size:15px; }
.contact-steps p { font-size:13px; }
.account-card>small { font-size:10px; }
.account-card h1 { font-size:34px; }
.account-card p { font-size:14px; }
.footer-brand p { font-size:15px; }
.footer-main strong { font-size:15px; }
.footer-main a,.footer-main span { font-size:14px; }
.footer-bottom { font-size:13px; }

@media(max-width:600px){
    .hero h1,.inner-hero h1 { font-size:44px; line-height:.98; }
    .hero h1.hero-title-product { font-size:36px; line-height:1.05; }
    .hero-copy>p,.inner-hero p { font-size:16px; }
    .section-heading h2 { font-size:34px; }
    .section-heading p { font-size:15px; }
    .architecture-panel h2 { font-size:36px; }
    .feature-card p,.solution-card p,.product-row p,.update-item p,.download-card p { font-size:14px; }
}
