@font-face { font-family: Manrope; src: url('/assets/fonts/manrope-latin-wght-normal.woff2') format('woff2'); font-weight: 200 800; font-style: normal; font-display: swap; }
@font-face { font-family: Newsreader; src: url('/assets/fonts/newsreader-latin-variable-normal.woff2') format('woff2'); font-weight: 300 700; font-style: normal; font-display: swap; }
@font-face { font-family: Newsreader; src: url('/assets/fonts/newsreader-latin-variable-italic.woff2') format('woff2'); font-weight: 300 700; font-style: italic; font-display: swap; }
@font-face { font-family: 'IBM Plex Mono'; src: url('/assets/fonts/ibm-plex-mono-latin-500.woff2') format('woff2'); font-weight: 500; font-style: normal; font-display: swap; }

:root { color-scheme: dark; --void:#061722; --panel:#0a2229; --panel-2:#0e2b33; --ice:#e4f1ed; --muted:#90aaa6; --line:rgba(130,190,181,.25); --aqua:#6cdfc5; --lime:#b7ed64; --blue:#76c8df; --amber:#f3b35f; font-family:Manrope,sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--void); color:var(--ice); -webkit-font-smoothing:antialiased; }
body::before { content:""; position:fixed; inset:0; pointer-events:none; background:radial-gradient(circle at 75% 5%,rgba(108,223,197,.09),transparent 34%),linear-gradient(rgba(118,200,223,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(118,200,223,.035) 1px,transparent 1px); background-size:auto,34px 34px,34px 34px; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
.site-header { position:relative; z-index:2; min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:30px; padding:0 clamp(24px,5vw,78px); border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:11px; font-size:17px; font-weight:700; letter-spacing:-.02em; }
.brand img { width:35px; height:35px; }
.site-header nav, footer nav { display:flex; gap:26px; font-size:12px; color:var(--muted); }
.site-header nav a:hover, footer a:hover { color:var(--aqua); }
.header-action { border:1px solid var(--aqua); padding:11px 15px; color:var(--aqua); font-size:11px; font-weight:700; }
.header-action:hover { background:var(--aqua); color:var(--void); }
main, footer { position:relative; z-index:1; }
.hero { width:min(1380px,calc(100% - 48px)); min-height:760px; margin:0 auto; display:grid; grid-template-columns:minmax(390px,.8fr) minmax(580px,1.2fr); align-items:center; gap:70px; padding:90px 0; }
.eyebrow { margin:0; font-family:'IBM Plex Mono',monospace; font-size:10px; letter-spacing:.16em; color:var(--blue); }
.hero h1, .section-heading h2, .controls-copy h2 { margin:20px 0 24px; font-family:Newsreader,Georgia,serif; font-weight:400; letter-spacing:-.045em; }
.hero h1 { font-size:clamp(64px,7vw,105px); line-height:.93; }
.hero h1 em { color:var(--lime); font-weight:400; }
.lede { max-width:650px; margin:0; font-size:18px; line-height:1.75; color:var(--muted); }
.hero-actions { display:flex; flex-wrap:wrap; gap:11px; margin-top:30px; }
.button { min-height:48px; display:inline-flex; align-items:center; justify-content:center; padding:0 18px; border:1px solid var(--line); font-size:12px; font-weight:750; }
.button-primary { background:var(--lime); border-color:var(--lime); color:var(--void); box-shadow:0 12px 40px rgba(183,237,100,.12); }
.button-primary:hover { background:var(--ice); border-color:var(--ice); }
.button-secondary { color:var(--blue); }
.button-secondary:hover { border-color:var(--blue); }
.download-note { margin:14px 0 0; font-family:'IBM Plex Mono',monospace; font-size:9px; color:var(--muted); }

.engine-visual { position:relative; min-height:570px; border:1px solid var(--line); background:rgba(10,34,41,.78); overflow:hidden; box-shadow:0 30px 90px rgba(0,6,10,.28); }
.visual-label { height:46px; display:flex; align-items:center; justify-content:space-between; padding:0 18px; border-bottom:1px solid var(--line); font-family:'IBM Plex Mono',monospace; font-size:9px; letter-spacing:.15em; color:var(--muted); }
.visual-label i { width:7px; height:7px; border-radius:50%; background:var(--aqua); box-shadow:0 0 12px var(--aqua); }
.source-stack { position:absolute; left:5%; top:90px; width:31%; display:grid; gap:12px; }
.source-stack article { position:relative; min-height:92px; padding:18px; border:1px solid var(--line); background:rgba(6,23,34,.92); }
.source-stack small,.report-card small { display:block; font-family:'IBM Plex Mono',monospace; font-size:8px; letter-spacing:.14em; color:var(--muted); }
.source-stack strong { display:block; margin-top:10px; font-family:Newsreader,serif; font-size:19px; font-weight:450; }
.source-stack span { position:absolute; right:15px; bottom:17px; color:var(--lime); font-family:'IBM Plex Mono',monospace; font-size:10px; }
.flow-line { position:absolute; left:35%; top:137px; width:17%; height:225px; border-right:1px solid rgba(108,223,197,.45); }
.flow-line::after { content:""; position:absolute; top:50%; left:0; right:-30px; border-top:1px solid rgba(108,223,197,.45); }
.flow-line span { position:absolute; left:0; width:100%; border-top:1px solid rgba(108,223,197,.45); }
.flow-line span:nth-child(1){top:0}.flow-line span:nth-child(2){top:50%}.flow-line span:nth-child(3){bottom:0}
.lens-node { position:absolute; left:45%; top:226px; width:118px; height:118px; display:grid; place-items:center; border:1px solid var(--aqua); border-radius:50%; background:var(--panel-2); box-shadow:0 0 42px rgba(108,223,197,.12); }
.lens-node { align-content:center; gap:8px; }
.lens-node img { display:block; width:56px; height:56px; }
.lens-node strong { position:relative; z-index:1; text-align:center; font-size:11px; line-height:1.35; color:var(--ice); }
.report-card { position:absolute; right:4%; top:108px; width:35%; min-height:360px; padding:28px 25px; border:1px solid rgba(183,237,100,.38); background:#0b252b; box-shadow:-22px 22px 0 rgba(7,25,35,.7); }
.report-card h2 { margin:20px 0 34px; font-family:Newsreader,serif; font-size:36px; font-weight:400; line-height:1.03; letter-spacing:-.035em; }
.report-card ul { list-style:none; margin:0; padding:0; }
.report-card li { display:flex; align-items:center; gap:10px; padding:13px 0; border-top:1px solid var(--line); font-size:10px; color:var(--muted); }
.report-card li i { width:6px; height:6px; border-radius:50%; background:var(--lime); }

.trust-strip { min-height:68px; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.trust-strip span { display:grid; place-items:center; padding:18px; border-right:1px solid var(--line); font-family:'IBM Plex Mono',monospace; font-size:9px; color:var(--muted); text-align:center; }
.trust-strip span:last-child { border-right:0; }
.trust-strip code { color:var(--aqua); }
.section { width:min(1280px,calc(100% - 48px)); margin:0 auto; padding:130px 0; }
.section-heading { max-width:720px; }
.section-heading h2,.controls-copy h2 { font-size:clamp(52px,5.3vw,78px); line-height:.97; }
.section-heading>p:last-child,.controls-copy>p:last-child { max-width:650px; font-size:16px; line-height:1.75; color:var(--muted); }
.mode-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:62px; background:var(--line); border:1px solid var(--line); }
.mode-grid article { position:relative; min-height:350px; padding:40px; background:var(--panel); }
.mode-grid article.mode-local { box-shadow:inset 4px 0 0 var(--lime); background:linear-gradient(135deg,rgba(183,237,100,.06),transparent 60%),var(--panel); }
.mode-number { position:absolute; right:35px; top:30px; font-family:'IBM Plex Mono',monospace; font-size:10px; color:var(--muted); }
.mode-grid h3,.steps h3,.faq-grid h3 { margin:26px 0 15px; font-family:Newsreader,serif; font-size:34px; font-weight:400; }
.mode-grid p:not(.eyebrow) { max-width:460px; color:var(--muted); font-size:14px; line-height:1.75; }
.mode-grid strong { position:absolute; left:40px; bottom:35px; font-family:'IBM Plex Mono',monospace; font-size:9px; color:var(--aqua); }

.install-section { border-top:1px solid var(--line); }
.steps { list-style:none; margin:62px 0 0; padding:0; border-top:1px solid var(--line); }
.steps li { display:grid; grid-template-columns:110px minmax(0,1fr); gap:24px; padding:38px 0; border-bottom:1px solid var(--line); }
.steps>li>span { font-family:'IBM Plex Mono',monospace; font-size:11px; color:var(--blue); }
.steps h3 { margin:0 0 10px; font-size:31px; }
.steps p { max-width:720px; margin:0; color:var(--muted); font-size:14px; line-height:1.7; }
.steps a { display:inline-block; margin-top:16px; color:var(--lime); font-size:11px; font-weight:700; }
.security-authorization { display:grid; grid-template-columns:minmax(280px,.75fr) minmax(420px,1fr); gap:55px 80px; margin-top:58px; padding:42px; border:1px solid rgba(243,179,95,.48); background:linear-gradient(120deg,rgba(243,179,95,.08),transparent 55%),var(--panel); }
.security-authorization h3 { max-width:510px; margin:22px 0 0; font-family:Newsreader,serif; font-size:38px; line-height:1.03; font-weight:400; letter-spacing:-.035em; }
.security-authorization ol { list-style:none; margin:0; padding:0; border-top:1px solid rgba(243,179,95,.3); }
.security-authorization li { display:grid; grid-template-columns:42px 1fr; gap:12px; padding:17px 0; border-bottom:1px solid rgba(243,179,95,.22); }
.security-authorization li span { font-family:'IBM Plex Mono',monospace; font-size:10px; color:var(--amber); }
.security-authorization li p { margin:0; color:var(--muted); font-size:13px; line-height:1.6; }
.security-authorization li strong { color:var(--ice); font-weight:700; }
.security-note { grid-column:2; margin:0; color:var(--muted); font-size:12px; line-height:1.7; }
.security-note code { color:var(--aqua); }
.controls-section { display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:90px; align-items:center; border-top:1px solid var(--line); }
.menu-mock { border:1px solid rgba(228,241,237,.26); padding:8px; background:rgba(18,34,38,.96); box-shadow:0 36px 90px rgba(0,0,0,.35); }
.menu-title { display:grid; grid-template-columns:30px 1fr auto; align-items:center; gap:10px; padding:12px; }
.menu-title img { width:26px; }
.menu-title strong { font-size:12px; }
.menu-title span { color:var(--aqua); font-size:9px; }
.menu-item { width:100%; min-height:38px; display:flex; align-items:center; justify-content:space-between; padding:0 12px; color:var(--ice); font-size:11px; }
.menu-mock hr { border:0; border-top:1px solid var(--line); }
.menu-mock kbd { color:var(--muted); font-family:inherit; }
.faq-section { border-top:1px solid var(--line); }
.faq-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:35px; background:var(--line); border:1px solid var(--line); }
.faq-grid article { min-height:210px; padding:32px; background:var(--panel); }
.faq-grid h3 { margin:0 0 13px; font-size:26px; }
.faq-grid p { margin:0; color:var(--muted); font-size:13px; line-height:1.75; }
footer { min-height:150px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:50px; padding:32px clamp(24px,5vw,78px); border-top:1px solid var(--line); }
footer p { color:var(--muted); font-family:Newsreader,serif; font-size:18px; }

@media(max-width:1050px){.hero{grid-template-columns:1fr;padding-top:110px}.engine-visual{min-height:590px}.controls-section{grid-template-columns:1fr}.menu-mock{width:min(440px,100%)}.site-header nav{display:none}.security-authorization{grid-template-columns:1fr}.security-note{grid-column:1}}
@media(max-width:720px){.site-header{padding:0 18px}.header-action{display:none}.hero,.section{width:min(100% - 28px,1280px)}.hero h1{font-size:55px}.engine-visual{min-height:720px}.source-stack{left:6%;right:6%;top:78px;width:auto;grid-template-columns:repeat(3,1fr)}.source-stack article{min-height:98px;padding:13px}.source-stack strong{font-size:15px}.flow-line{display:none}.lens-node{left:calc(50% - 54px);top:245px;width:108px;height:108px}.report-card{left:7%;right:7%;top:395px;width:auto;min-height:270px}.report-card h2{font-size:29px;margin-bottom:20px}.trust-strip{grid-template-columns:repeat(2,1fr)}.trust-strip span:nth-child(2){border-right:0}.mode-grid,.faq-grid{grid-template-columns:1fr}.mode-grid article{min-height:330px;padding:30px}.steps li{grid-template-columns:52px 1fr}.section{padding:90px 0}.section-heading h2,.controls-copy h2{font-size:48px}footer{grid-template-columns:1fr;gap:15px}footer nav{flex-wrap:wrap}.site-header{min-height:72px}}
@media(max-width:500px){.source-stack{grid-template-columns:1fr}.source-stack article:nth-child(n+2){display:none}.lens-node{top:210px}.report-card{top:350px}.engine-visual{min-height:650px}.trust-strip{grid-template-columns:1fr}.trust-strip span{border-right:0}.hero{padding-top:75px}.lede{font-size:16px}.mode-grid h3,.steps h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.brand-wordmark { --wordmark-width: 112px; }
