:root {
  --ink: #080a0f;
  --ink-2: #0f131c;
  --panel: #131923;
  --panel-2: #1a2230;
  --line: #2b3546;
  --muted: #9aa7b8;
  --paper: #e8edf2;
  --blue: #4c7dff;
  --blue-soft: #7f9dff;
  --acid: #c9fa64;
  --radius: 14px;
  --content: min(1180px, calc(100vw - 72px));
  font-family: "Segoe UI", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--paper);
  background: var(--ink);
  font-synthesis: none;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--ink); color: var(--paper); line-height: 1.55; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
::selection { background: var(--acid); color: var(--ink); }
.site-shell { min-height: 100vh; position: relative; overflow: clip; }
.site-shell::before { content: ""; position: fixed; inset: 0; z-index: -2; opacity: .34; pointer-events: none; background-image: linear-gradient(rgba(89, 112, 150, .11) 1px, transparent 1px), linear-gradient(90deg, rgba(89, 112, 150, .11) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, #000, transparent 82%); }
.site-shell::after { content: ""; position: fixed; width: 55vw; height: 55vw; border-radius: 50%; top: -30vw; right: -15vw; z-index: -1; pointer-events: none; background: radial-gradient(circle, rgba(76,125,255,.20), transparent 68%); filter: blur(12px); }
.nav { height: 84px; width: var(--content); margin-inline: auto; display: flex; align-items: center; justify-content: space-between; position: relative; z-index: 10; }
.logo { display: inline-flex; gap: 12px; align-items: center; font-size: .83rem; letter-spacing: .13em; font-weight: 700; text-transform: uppercase; }
.logo-mark { width: 24px; height: 24px; display: inline-grid; place-items: center; color: var(--ink); background: var(--acid); clip-path: polygon(0 0,100% 0,100% 74%,74% 100%,0 100%); font-weight: 900; font-size: .72rem; }
.nav-links { display: flex; gap: 28px; align-items: center; }
.nav-links a { position: relative; color: #aeb9c9; font-size: .87rem; transition: color .2s ease; }
.nav-links a::after { content: ""; position: absolute; left: 0; right: 100%; height: 1px; bottom: -7px; background: var(--acid); transition: right .25s ease; }
.nav-links a:hover, .nav-links a[aria-current="page"] { color: var(--paper); }
.nav-links a:hover::after, .nav-links a[aria-current="page"]::after { right: 0; }
.nav-cta { border: 1px solid var(--line); padding: 10px 14px; font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; color: var(--paper); transition: .2s; }
.nav-cta:hover { background: var(--acid); border-color: var(--acid); color: var(--ink); }
.menu-btn { display: none; border: 1px solid var(--line); color: var(--paper); background: transparent; width: 42px; height: 38px; border-radius: 8px; cursor: pointer; }
.menu-btn span, .menu-btn span::before, .menu-btn span::after { content: ""; display:block; width: 17px; height: 1px; background: currentColor; margin:auto; transition:.2s; }
.menu-btn span::before { transform: translateY(-6px); }
.menu-btn span::after { transform: translateY(5px); }
main { width: var(--content); margin-inline:auto; }
.hero { min-height: 640px; padding: 92px 0 94px; display:grid; align-items:center; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); gap: 64px; }
.eyebrow { color: var(--acid); font-size: .69rem; letter-spacing: .19em; text-transform: uppercase; font-weight: 700; margin: 0 0 22px; display:flex; align-items:center; gap: 10px; }
.eyebrow::before { content:""; width: 28px; height:1px; background: currentColor; }
h1, h2, h3, p { margin-top:0; }
h1 { font-size: clamp(3.1rem, 7vw, 6.6rem); line-height: .94; letter-spacing: -.075em; font-weight: 560; max-width: 750px; margin-bottom: 30px; }
h1 .quiet { color: #758296; }
.lede { color: var(--muted); max-width: 560px; font-size: 1.12rem; line-height: 1.7; margin-bottom: 34px; }
.actions { display:flex; gap: 12px; flex-wrap: wrap; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap: 10px; border:1px solid transparent; padding: 13px 18px; font-size: .79rem; text-transform: uppercase; letter-spacing: .1em; font-weight: 700; transition: transform .2s ease, background .2s ease, color .2s ease; }
.btn:hover { transform: translateY(-2px); }
.btn-primary { background: var(--acid); color: var(--ink); }
.btn-secondary { border-color: var(--line); color: var(--paper); }
.btn-secondary:hover { border-color: var(--blue); background: rgba(76,125,255,.11); }
.hero-visual { min-height: 360px; border: 1px solid var(--line); background: linear-gradient(150deg, rgba(26,34,48,.9), rgba(10,13,19,.92)); position:relative; overflow:hidden; padding: 22px; display:flex; flex-direction:column; justify-content:space-between; }
.hero-visual::before { content:""; position:absolute; inset: 18px; border:1px solid rgba(127,157,255,.22); pointer-events:none; }
.orbit { position:absolute; width: 290px; height: 290px; left: 50%; top: 46%; transform: translate(-50%,-50%); border: 1px solid rgba(127,157,255,.33); border-radius: 50%; box-shadow: 0 0 0 28px rgba(76,125,255,.04), 0 0 0 56px rgba(76,125,255,.025); }
.orbit::before, .orbit::after { content:""; position:absolute; border-radius:50%; background: var(--acid); box-shadow: 0 0 24px var(--acid); }
.orbit::before { width: 8px; height:8px; left: 12%; top: 22%; }
.orbit::after { width: 5px; height:5px; right: 13%; bottom: 19%; background: var(--blue-soft); box-shadow: 0 0 18px var(--blue-soft); }
.visual-label { position:relative; z-index:1; display:flex; justify-content:space-between; font-size:.67rem; letter-spacing:.15em; color:#8998ad; text-transform:uppercase; }
.visual-node { position:relative; z-index:1; width: 200px; margin: auto; padding: 17px 18px; border-left: 2px solid var(--acid); background: rgba(8,10,15,.76); }
.visual-node strong { display:block; font-size:1.55rem; letter-spacing:-.04em; }
.visual-node small { color:#98a6b6; font-size:.7rem; text-transform:uppercase; letter-spacing:.12em; }
.section { padding: 110px 0; border-top:1px solid var(--line); }
.section-head { display:flex; justify-content:space-between; gap:36px; align-items:flex-end; margin-bottom: 46px; }
.section h2 { font-size: clamp(2.3rem, 4.7vw, 4.5rem); line-height:1; letter-spacing:-.065em; font-weight:550; max-width: 620px; margin-bottom:0; }
.section-head p { color:var(--muted); max-width:360px; margin:0; }
.grid-3 { display:grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.card { border:1px solid var(--line); background:rgba(19,25,35,.74); padding: 25px; min-height: 220px; position:relative; overflow:hidden; transition: border-color .2s ease, transform .2s ease; }
.card:hover { border-color: #516a96; transform: translateY(-3px); }
.card::after { content:""; width: 38px; height: 38px; position:absolute; right:-10px; bottom:-10px; border: 1px solid var(--blue); opacity:.38; transform: rotate(45deg); }
.card-kicker { color: var(--blue-soft); font-size:.68rem; text-transform:uppercase; letter-spacing:.13em; font-weight:700; }
.card h3 { font-size:1.42rem; letter-spacing:-.04em; margin:22px 0 11px; font-weight:550; }
.card p { color:var(--muted); font-size:.94rem; line-height:1.6; margin-bottom:0; }
.band { margin: 0 calc((100vw - var(--content))/ -2); padding: 88px max(calc((100vw - var(--content))/2), 36px); background: var(--panel); border-block: 1px solid var(--line); }
.stat-row { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.stat { border-left: 1px solid var(--line); padding-left: 20px; }
.stat strong { display:block; color: var(--acid); font-size: clamp(2rem,4vw,3.6rem); line-height:1; letter-spacing:-.06em; font-weight: 520; }
.stat span { display:block; margin-top:9px; color:var(--muted); font-size:.8rem; text-transform:uppercase; letter-spacing:.1em; }
.table-wrap { border:1px solid var(--line); overflow-x:auto; background:rgba(19,25,35,.65); }
.data-table { width:100%; border-collapse:collapse; min-width:670px; }
.data-table th, .data-table td { padding:17px 20px; border-bottom:1px solid var(--line); text-align:left; font-size:.89rem; }
.data-table th { color:#8494a8; text-transform:uppercase; letter-spacing:.11em; font-size:.67rem; font-weight:700; }
.data-table tr:last-child td { border-bottom:0; }
.data-table td:first-child { color:var(--paper); font-weight:600; }
.pill { display:inline-flex; align-items:center; gap:7px; color:var(--acid); font-size:.72rem; }
.pill::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; box-shadow:0 0 9px currentColor; }
.feature { display:grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items:center; }
.feature-copy p { color:var(--muted); max-width:480px; font-size:1.04rem; line-height:1.75; }
.feature-list { list-style:none; padding:0; margin:28px 0 0; display:grid; gap: 14px; }
.feature-list li { display:grid; grid-template-columns: 23px 1fr; gap:11px; color:#cbd3de; font-size:.92rem; }
.feature-list li::before { content:"↗"; color:var(--acid); font-weight:800; }
.diagram { border:1px solid var(--line); padding: 20px; background: var(--panel); }
.diagram-row { display:grid; grid-template-columns:1fr 34px 1fr; align-items:center; gap:10px; }
.diagram-row + .diagram-row { margin-top:10px; }
.diagram-box { border:1px solid #3a485d; background:#171f2c; padding:16px; min-height:88px; }
.diagram-box strong { display:block; font-size:.95rem; margin-bottom:4px; }
.diagram-box small { color:#8b9bb0; font-size:.72rem; }
.diagram-arrow { color:var(--acid); text-align:center; font-size:1.2rem; }
.footer { border-top: 1px solid var(--line); padding: 36px 0 44px; margin-top: 20px; }
.footer-inner { width: var(--content); margin-inline:auto; display:flex; justify-content:space-between; align-items:center; gap: 20px; }
.footer p { color:#738195; font-size:.75rem; margin:0; }
.footer-links { display:flex; gap:20px; color:#9ca9b9; font-size:.75rem; }
.page-hero { padding: 90px 0 82px; max-width: 830px; }
.page-hero h1 { font-size: clamp(3.1rem, 7.4vw, 6.4rem); }
.page-hero .lede { max-width:650px; }
.quote { border-left: 2px solid var(--acid); padding: 2px 0 2px 20px; color:#c9d1dc; font-size:1.25rem; line-height:1.45; max-width:620px; }
.form-shell { display:grid; grid-template-columns: .8fr 1.2fr; gap:60px; align-items:start; }
.form-card { background:var(--panel); border:1px solid var(--line); padding:28px; }
label { display:block; color:#91a0b2; font-size:.7rem; text-transform:uppercase; letter-spacing:.12em; margin-bottom:8px; }
input, textarea, select { width:100%; background:#0c1017; color:var(--paper); border:1px solid #2d394b; padding:13px 14px; font:inherit; border-radius:0; margin-bottom:17px; }
textarea { min-height:120px; resize:vertical; }
input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible { outline:2px solid var(--acid); outline-offset:3px; }
/* mobile */
@media (max-width: 800px) {
  :root { --content: min(calc(100% - 36px), 650px); }
  .nav { height:72px; }
  .menu-btn { display:block; }
  .nav-links { display:none; position:absolute; top:65px; left:0; right:0; padding:14px; flex-direction:column; align-items:stretch; background:rgba(15,19,28,.98); border:1px solid var(--line); box-shadow: 0 18px 36px rgba(0,0,0,.35); }
  .nav-links.open { display:flex; }
  .nav-links a { padding:12px 10px; border-bottom:1px solid rgba(43,53,70,.6); }
  .nav-links a:last-of-type { border-bottom:0; }
  .nav-links a::after { display:none; }
  .nav-cta { text-align:center; margin-top:4px; }
  .hero { min-height:auto; padding:72px 0 78px; display:block; }
  h1 { font-size: clamp(3rem, 16vw, 5.3rem); }
  .hero-visual { margin-top:54px; min-height:300px; }
  .section { padding:76px 0; }
  .section-head { display:block; margin-bottom:34px; }
  .section-head p { margin-top:20px; }
  .grid-3 { grid-template-columns:1fr; gap:11px; }
  .card { min-height:auto; }
  .stat-row { grid-template-columns:repeat(2,1fr); gap:26px 15px; }
  .stat { padding-left:14px; }
  .band { margin:0 -18px; padding:64px 18px; }
  .feature, .form-shell { grid-template-columns:1fr; gap:32px; }
  .diagram-row { grid-template-columns:1fr; gap:5px; }
  .diagram-arrow { transform:rotate(90deg); height:20px; }
  .page-hero { padding:66px 0 62px; }
  .page-hero h1 { font-size: clamp(3rem,15vw,5.2rem); }
  .footer-inner { display:block; }
  .footer-links { margin-top:14px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; } }

/* infrastructure imagery */
.media-card { margin: 0; border: 1px solid var(--line); background: #0b1119; overflow: hidden; position: relative; }
.media-card img { display:block; width:100%; height:auto; aspect-ratio: 16 / 9; object-fit:cover; }
.media-card figcaption { display:flex; justify-content:space-between; gap:16px; padding:14px 16px 16px; color:#93a5b9; font: .68rem/1.4 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing:.12em; text-transform:uppercase; }
.media-card figcaption strong { color:#dce7f2; font-weight:600; }
.media-grid { display:grid; grid-template-columns:1.35fr .9fr; gap:14px; align-items:stretch; }
.media-grid .media-card:first-child img { aspect-ratio: 16 / 10; }
.media-grid .media-card:not(:first-child) img { aspect-ratio: 16 / 10; }
.inline-media { margin: 22px 0 0; }
.page-hero.media-hero { display:grid; grid-template-columns:1.1fr .9fr; gap:40px; align-items:center; max-width:none; }
.page-hero.media-hero .media-card img { aspect-ratio: 1 / 1; }
@media (max-width:800px) { .page-hero.media-hero { display:block; } .page-hero.media-hero .media-card { margin-top:34px; } .media-grid { grid-template-columns:1fr; } .media-card figcaption { padding:12px 14px 14px; } }
/* servers page: product photography and catalog */
.server-hero { width:var(--content); margin:0 auto; padding:74px 0 82px; display:grid; grid-template-columns:1fr .92fr; gap:54px; align-items:center; }
.server-hero-copy h1 { max-width:700px; font-size:clamp(3rem,6vw,5.7rem); line-height:.98; letter-spacing:-.06em; }
.server-hero-copy .lede { max-width:620px; }
.server-hero-meta { display:flex; flex-wrap:wrap; gap:9px 22px; margin-top:28px; color:#7f91a5; font: .7rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.1em; text-transform:uppercase; }
.server-hero-meta span::before { content:"/"; color:var(--acid); margin-right:8px; }
.server-hero-image { margin:0; background:#070a0d; border:1px solid var(--line); overflow:hidden; box-shadow:0 24px 80px rgba(0,0,0,.35); }
.server-hero-image img { display:block; width:100%; height:430px; object-fit:cover; object-position:center; mix-blend-mode:screen; }
.server-hero-image figcaption { display:flex; justify-content:space-between; padding:13px 16px 15px; color:#8091a4; font: .68rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.11em; text-transform:uppercase; }
.server-hero-image figcaption strong { color:#e5edf4; font-weight:600; }
.server-catalog { border-top:1px solid var(--line); }
.server-tabs { display:flex; flex-wrap:wrap; gap:9px; margin:26px 0 20px; }
.server-tabs button { border:1px solid var(--line); background:transparent; color:#8998aa; padding:10px 14px; cursor:pointer; font: .72rem ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.04em; }
.server-tabs button:hover,.server-tabs button.is-active { color:var(--paper); border-color:#7993ae; background:#172231; }
.server-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.server-product { border:1px solid var(--line); background:#0d141d; min-width:0; }
.server-product figure { margin:0; border-bottom:1px solid var(--line); background:#05070a; }
.server-product figure img { display:block; width:100%; height:236px; object-fit:cover; object-position:center; mix-blend-mode:screen; }
.server-product figure figcaption { padding:10px 14px; color:#718398; font: .64rem ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; text-transform:uppercase; }
.server-product-body { padding:20px; position:relative; }
.server-product h3 { margin:0; font-size:1.55rem; letter-spacing:-.03em; }
.server-product-kicker { margin:4px 0 18px; color:#8999ac; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; }
.server-product dl { display:grid; grid-template-columns:1fr 1.25fr; gap:0; margin:0; border-top:1px solid var(--line); }
.server-product dl div { display:contents; }
.server-product dt,.server-product dd { margin:0; padding:9px 0; border-bottom:1px solid rgba(43,53,70,.68); font-size:.77rem; }
.server-product dt { color:#76879a; text-transform:uppercase; letter-spacing:.08em; }
.server-product dd { color:#d3dde8; }
.server-product-foot { display:flex; justify-content:space-between; align-items:flex-end; gap:12px; padding-top:16px; color:#718398; font: .65rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; }
.server-product-foot a { color:var(--acid); white-space:nowrap; }
.server-product.is-featured { border-color:#9b8157; box-shadow:0 0 0 1px rgba(208,166,97,.14),0 18px 50px rgba(0,0,0,.22); }
.featured-tag { position:absolute; top:18px; right:18px; color:#d3a661; font: .65rem ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.14em; text-transform:uppercase; }
.integration-section { border-top:1px solid var(--line); }
.integration-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.integration-grid article { border-top:2px solid #29384a; padding:18px 14px 0 0; }
.integration-grid article span { color:var(--acid); font: .75rem ui-monospace,SFMono-Regular,Menlo,monospace; }
.integration-grid h3 { margin:22px 0 8px; font-size:1.1rem; }
.integration-grid p { margin:0; color:var(--muted); font-size:.88rem; line-height:1.65; }
.server-cta { display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid var(--line); }
.server-cta h2 { margin:0 0 10px; }
.server-cta .lede { margin:0; max-width:640px; }
@media (max-width:800px) { .server-hero { display:block; padding:56px 0 64px; } .server-hero-image { margin-top:34px; } .server-hero-image img { height:300px; } .server-product-grid { grid-template-columns:1fr; } .server-product figure img { height:220px; } .integration-grid { grid-template-columns:1fr 1fr; gap:26px 14px; } .server-cta { display:block; } .server-cta .btn { margin-top:24px; } }
@media (max-width:520px) { .integration-grid { grid-template-columns:1fr; } .server-product-foot { display:block; } .server-product-foot a { display:inline-block; margin-top:10px; } }
.server-product.is-featured figure { background:#edf1f4; }
.server-product.is-featured figure img { mix-blend-mode:normal; filter:saturate(.92) contrast(1.03); }
.server-catalog-status { margin:0 0 22px; color:#8193a6; font: .68rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; text-transform:uppercase; }
.server-product[hidden] { display:none; }
