:root{color-scheme:dark;--bg:#080f26;--deep:#060d26;--ink:#f1f7ff;--muted:#aabbd4;--line:#263b5b;--accent:#79caff;--paper:#edf4fc;--black:#0a1835;--mono:"Cascadia Mono","SFMono-Regular",Consolas,monospace;--sans:"Inter","Helvetica Neue",Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}p,h1,h2,h3{margin:0}::selection{background:var(--accent);color:#091631}[hidden]{display:none!important}
.shell{width:min(100% - 112px,1320px);margin-inline:auto}.mono,.eyebrow{font:500 11px/1.45 var(--mono);letter-spacing:.105em}.skip{position:fixed;z-index:20;top:8px;left:8px;transform:translateY(-150%);background:var(--ink);color:#0a1835;padding:10px}.skip:focus{transform:none}
.site-header{height:74px;position:sticky;top:0;z-index:6;background:#080f26ef;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav-wrap{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.wordmark{display:inline-flex;align-items:center;gap:12px;justify-self:start;font-size:21px;font-weight:750;letter-spacing:.12em;white-space:nowrap}.wordmark img{flex:none}.nav-wrap nav{display:flex;gap:35px;color:#c3d4ec;font-size:13px}.nav-wrap nav a,.footer a{transition:color .2s}.nav-wrap nav a:hover,.footer a:hover{color:var(--accent)}.reading-progress{height:1px;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0);transform-origin:left;background:var(--accent);opacity:.8}
.button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:48px;padding:0 17px;border:1px solid transparent;border-radius:3px;font-weight:650;font-size:13px;white-space:nowrap;transition:background .2s,color .2s,border-color .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:16px}.outline,.ghost{color:var(--ink);background:transparent;border-color:#395375}.outline:hover,.ghost:hover{background:#152945;border-color:#7598bf}.nav-demo{justify-self:end;min-height:37px;font-size:12px}.primary{background:var(--accent);color:#061630;border-color:var(--accent)}.primary:hover{background:#a3ddff;border-color:#a3ddff}
.hero{isolation:isolate;position:relative;overflow:hidden;background:var(--deep)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(#b0d4ff13 1px,transparent 1px),linear-gradient(90deg,#b0d4ff13 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(90deg,transparent 2%,#000 63%,#000);opacity:.7;z-index:-2}.hero-visual{position:absolute;inset:0 0 42px 33%;z-index:-1;overflow:hidden;background:radial-gradient(ellipse at 60% 51%,#12397899,transparent 59%)}.hero-visual::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#060d26 0%,transparent 24%),linear-gradient(0deg,#060d26 1%,transparent 17%)}#constellation{display:block;width:100%;height:100%}.figure-code,.plot-coord{position:absolute;z-index:1;color:#a8bddb;right:max(56px,calc((100vw - 1320px)/2));display:flex;align-items:center;gap:9px;font-size:10px}.figure-code{top:48px}.plot-coord{bottom:30px;color:#809abf}.figure-code i{width:14px;height:1px;background:var(--accent)}.hero-inner{min-height:clamp(640px,calc(100svh - 74px),900px);display:flex;flex-direction:column;justify-content:center;position:relative;padding-block:76px 115px}.hero-copy{max-width:660px}.eyebrow{display:flex;align-items:center;gap:10px;color:#c4d7f0}.signal,.sample i{width:7px;height:7px;display:inline-block;border-radius:50%;background:var(--accent);box-shadow:0 0 15px #79caff80;flex:none}.hero h1{font-weight:550;font-size:clamp(68px,8.25vw,125px);line-height:.88;letter-spacing:-.09em;margin:26px 0 25px}.hero h1 em{color:#b1d9f9;font-weight:inherit;font-style:normal}.hero p{max-width:400px;color:#b6c8e4;font-size:17px;line-height:1.58}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:27px}.hero-index{position:absolute;bottom:0;left:0;right:0;border-top:1px solid #263b5b;min-height:57px;display:flex;justify-content:space-between;align-items:center;color:#9eb3d2;font-size:10px}.hero-index a{display:flex;align-items:center;gap:12px}.hero-index a span,.hero-index b,.console-caption b{color:var(--accent);font-weight:400}
.light{color:var(--black);background:var(--paper);color-scheme:light}.section-tag{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:19px;border-bottom:1px solid #ffffff22;color:#b5c8e2}.light .section-tag{border-color:#203f7436;color:#435d7f}.section-lead{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.65fr);gap:48px;align-items:end;padding:80px 0 50px}.section-lead h2,.contact h2{font-size:clamp(47px,6.25vw,96px);font-weight:530;line-height:.96;letter-spacing:-.075em}.section-lead p,.contact p{font-size:17px;line-height:1.65;color:#bbcde7;max-width:425px}.light .section-lead p{color:#405675}.platform,.ontology,.principles,.contact{padding-bottom:90px}.capabilities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #203f7438;border-bottom:1px solid #203f7438}.capabilities article{padding:24px 24px 30px 0}.capabilities article+article{border-left:1px solid #203f7438;padding-left:24px}.cap-icon{width:46px;height:46px;display:grid;place-items:center;border:1px solid #203f7438;margin-bottom:27px}.cap-icon svg{width:31px;height:31px;fill:none;stroke:#245893;stroke-width:1.6;stroke-linejoin:round}.capabilities .mono,.source-strip .mono{color:#486389}.capabilities h3{font-weight:580;letter-spacing:-.045em;font-size:clamp(22px,2.65vw,38px);margin:9px 0}.capabilities p{font-size:15px;color:#405675;line-height:1.55;max-width:28ch}
.ontology{background:#0b1632}.console{border:1px solid #2d4365;background:#080f26;overflow:hidden;border-radius:5px;box-shadow:0 25px 70px #0004}.console-bar{height:54px;padding:0 17px;display:flex;justify-content:space-between;align-items:center;background:#101f3e;border-bottom:1px solid #263b5b}.console-bar>div{display:flex;align-items:center;gap:10px;font-size:13px}.sample{display:flex;align-items:center;gap:8px;color:#bfd2ef;font-size:9px}.sample i{width:5px;height:5px}.console-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,29%)}.graph-panel{min-width:0;position:relative;background-image:radial-gradient(#7cacef37 1px,transparent 1px);background-size:17px 17px;padding:18px}.graph-tools{display:flex;gap:4px;position:relative;z-index:1}.graph-tools button,.contact-switch button{border:1px solid #304970;background:#101d39;color:#bccde6;padding:8px 10px;border-radius:3px;font-size:12px;transition:background .18s,color .18s,border-color .18s}.graph-tools button:hover,.contact-switch button:hover{border-color:#8db1db;color:var(--ink)}.graph-tools button[aria-pressed=true],.contact-switch button[aria-pressed=true]{color:var(--accent);background:#142f54;border-color:#4176a8}.map{height:315px;position:relative;isolation:isolate}.edges{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.edge{fill:none;stroke:#6684ad;stroke-width:1.2;stroke-dasharray:4 4;transition:stroke .25s,opacity .25s}.edge.hot{stroke:var(--accent);animation:march 1s linear infinite}.edge.faded{opacity:.28}#arrow path{fill:none;stroke:context-stroke;stroke-width:1}@keyframes march{to{stroke-dashoffset:-16}}
.map-node{--x:50%;--y:48%;position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:48px;height:48px;display:grid;place-items:center;color:#d8e8fc;border:1px solid #56759d;background:#172a48;border-radius:9px;transition:opacity .25s,color .25s,border-color .25s,box-shadow .25s}.map-node span{font-size:23px;line-height:1}.map-node small{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);padding:2px 4px;background:#080f26;color:#cedff4;font:500 10px var(--mono);white-space:nowrap}.map-node:hover{border-color:#fff}.map-node[aria-pressed=true]{background:#17395e;border-color:var(--accent);color:var(--accent);box-shadow:0 0 22px #79caff40}.map-node[aria-pressed=true] small{color:var(--accent)}.map-node.faded{opacity:.48}.map-node[data-node=review]{--x:10%;--y:34%}.map-node[data-node=pr]{--x:29%;--y:63%}.map-node[data-node=auth]{--x:49%;--y:42%}.map-node[data-node=mobile]{--x:70%;--y:62%}.map-node[data-node=release]{--x:90%;--y:29%}
.graph-legend{display:flex;gap:17px;color:#a0b6d4;font-size:9px}.graph-legend span{display:flex;align-items:center;gap:5px}.graph-legend i{width:13px;border-top:1px dashed #9cb5da}.graph-legend span+span i{width:6px;height:6px;border:1px solid var(--accent);border-radius:2px}.inspector{border-left:1px solid #263b5b;background:#0d1b36;padding:19px;color:#e7f0fc}.inspector-label{display:flex;justify-content:space-between;color:#adc2e0;border-bottom:1px solid #2a4165;padding-bottom:13px;margin-bottom:21px}.inspector-label span{color:var(--accent)}#node-kind{color:#adc2e0;font-size:10px}.inspector h3{font-weight:620;letter-spacing:-.045em;font-size:25px;margin:6px 0 10px}.status{display:inline-block;padding:4px 6px;border:1px solid #4575a5;background:#142d50;color:var(--accent);font:500 10px var(--mono);border-radius:2px}.inspector p{margin-top:14px;color:#bbcee8;font-size:13px;line-height:1.5}.inspector dl{margin:15px 0 0;font-size:12px}.inspector dl>div{display:flex;justify-content:space-between;gap:8px;padding:9px 0;border-top:1px solid #263b5b}.inspector dt{color:#aec4e1}.inspector dd{margin:0;text-align:right}.inspector .inspect-hint{font-size:11px;color:#aec4e1}.console-caption{display:flex;justify-content:space-between;gap:15px;color:#a7bfdd;font-size:9px;margin-top:13px}
.source-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid #203f7438;margin:0;padding:0;list-style:none}.source-strip li{padding:19px 20px 19px 0}.source-strip li+li{border-left:1px solid #203f7438;padding-left:20px}.source-strip strong{display:block;font-size:clamp(20px,2.1vw,29px);font-weight:590;letter-spacing:-.035em;margin-top:6px}.source-strip p{font-size:14px;line-height:1.5;color:#405675;margin-top:5px}
.contact{background:radial-gradient(ellipse at 9% 83%,#132d55,transparent 58%),#080f26}.contact-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:46px;align-items:center;padding-top:68px}.contact h2{margin:16px 0 22px}.contact-card{padding:20px;border:1px solid #345077;background:#101e3a;border-radius:4px}.contact-switch{display:flex;gap:7px;margin-bottom:19px}.contact form{display:grid;gap:7px}.contact label{color:#d3e1f5;font-size:12px}.contact input,.contact textarea{width:100%;background:#0b1730;border:1px solid #3a557b;color:var(--ink);border-radius:3px;padding:10px;resize:vertical;font-size:14px;margin-bottom:6px}.contact input::placeholder,.contact textarea::placeholder{color:#94adce}.contact form .button{justify-self:start}.contact .form-note{font-size:12px;color:#adc2e0;margin-top:2px}.contact #draft{display:grid;gap:6px}.footer{border-top:1px solid #2a3f60;background:#060f28}.footer>.shell{display:flex;gap:18px;min-height:78px;align-items:center;justify-content:space-between}.footer .mono{font-size:10px;color:#a1b6d6}
.motion .reveal{opacity:0;transform:translateY(23px);transition:opacity .7s ease,transform .75s cubic-bezier(.22,.72,.23,1)}.motion .reveal.in,.motion .reveal:focus-within{opacity:1;transform:none}
@media(max-width:1000px){.shell{width:calc(100% - 64px)}.figure-code,.plot-coord{right:32px}.hero-visual{left:29%}.hero h1{font-size:clamp(67px,10vw,100px)}.section-lead{gap:30px}.contact-layout{gap:28px}}
@media(max-width:740px){html{scroll-padding-top:68px}.shell{width:calc(100% - 36px)}.site-header{height:60px}.nav-wrap{display:flex;justify-content:space-between;gap:10px}.nav-wrap nav{gap:14px;font-size:12px}.nav-wrap nav a:last-child{display:none}.wordmark{gap:7px;font-size:17px}.wordmark img{width:24px;height:24px}.nav-demo{padding-inline:9px;gap:5px;min-height:33px;font-size:11px}.hero-inner{min-height:0;padding-block:62px 0}.hero-copy{max-width:530px}.hero h1{font-size:clamp(64px,13.5vw,96px);margin-block:20px}.hero p{font-size:15px;max-width:355px}.hero-visual{inset:auto -6% 48px 8%;height:335px;opacity:.93}.hero-visual::after{background:linear-gradient(180deg,#060d26 0%,transparent 20%),linear-gradient(0deg,#060d26 0%,transparent 18%)}.figure-code{right:11%;top:27px;font-size:8px}.plot-coord{display:none}.hero-index{position:relative;margin-top:294px;min-height:48px;font-size:8px}.hero-index a{gap:5px}.section-tag{padding-block:13px;font-size:9px}.section-lead{grid-template-columns:1fr;gap:15px;padding:50px 0 28px}.section-lead h2,.contact h2{font-size:clamp(43px,9vw,65px)}.section-lead p,.contact p{font-size:15px}.platform,.ontology,.principles,.contact{padding-bottom:54px}.capabilities article{padding:15px 10px 18px 0}.capabilities article+article{padding-left:10px}.cap-icon{width:35px;height:35px;margin-bottom:12px}.cap-icon svg{width:26px;height:26px}.capabilities h3{font-size:clamp(17px,3.4vw,25px)}.capabilities .mono,.source-strip .mono{font-size:9px}.capabilities p{font-size:13px}.console-body{grid-template-columns:1fr}.inspector{border-left:0;border-top:1px solid #263b5b}.map{height:275px}.graph-panel{padding:12px}.map-node small{font-size:9px}.console-caption{font-size:8px}.contact-layout{grid-template-columns:1fr;padding-top:45px}.contact h2{margin:12px 0}.footer>.shell{min-height:63px}.footer>.shell>span{display:none}}
@media(max-width:420px){.nav-wrap nav{display:none}.hero h1{font-size:clamp(54px,14vw,68px)}.hero .eyebrow{font-size:9px}.actions .button{padding-inline:11px;gap:11px;font-size:12px}.capabilities{grid-template-columns:1fr}.capabilities article,.capabilities article+article{padding:14px 0 17px 47px;border-left:0;position:relative}.capabilities article+article{border-top:1px solid #203f7438}.cap-icon{position:absolute;left:0;top:16px}.capabilities h3{margin:4px 0;font-size:23px}.capabilities p{max-width:40ch}.map-node{width:37px;height:37px;border-radius:6px}.map-node span{font-size:18px}.map-node[data-node=review]{--x:14%}.map-node[data-node=release]{--x:87%}.source-strip{gap:7px}.strip-arrow{font-size:16px}.source-strip .mono{font-size:8px}.console-caption span:last-child{display:none}}
@media(max-width:740px){.hero-visual{right:0;left:4%}.figure-code{top:49px;right:5%}}
@media(max-width:420px){.nav-wrap nav{display:flex;gap:9px;font-size:11px}}
@media(max-width:355px){.nav-wrap{gap:7px}.nav-wrap nav a:first-child{display:none}}
.graph-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:9px 14px}
.graph-tally{color:#a7bfdd;font-size:9px}
.replay {
  margin-top: 12px;
  border: 1px solid #314970;
  border-radius: 4px;
  background: #101e3a;
}

.replay summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  cursor: pointer;
  list-style: none;
}

.replay summary::-webkit-details-marker {
  display: none;
}

.replay-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 10px;
  font-size: 13px;
  font-weight: 650;
}

.replay-badge {
  color: var(--accent);
  font-size: 9px;
  letter-spacing: .06em;
}

.replay-toggle {
  width: 7px;
  height: 7px;
  margin-right: 3px;
  flex: none;
  border-right: 1px solid #c0d5f3;
  border-bottom: 1px solid #c0d5f3;
  transform: rotate(45deg) translateY(-2px);
}

.replay[open] .replay-toggle {
  transform: rotate(225deg) translateY(-2px);
}

.replay-body {
  padding: 10px 12px 12px;
  border-top: 1px solid #314970;
}

.replay-label, .replay-ticks {
  color: #b6cce9;
  font-size: 9px;
}

#replay-day {
  display: block;
  width: 100%;
  height: 26px;
  margin: 0;
  accent-color: var(--accent);
  cursor: pointer;
}

.replay-ticks {
  display: flex;
  justify-content: space-between;
  gap: 4px;
}

.replay-event {
  margin-top: 10px;
  color: #c5d7ee;
  font-size: 12px;
  line-height: 1.45;
}

#replay-title {
  margin-bottom: 3px;
  color: var(--ink);
}

.graph-legend {
  flex-wrap: wrap;
  row-gap: 7px;
}

#replay-legend i {
  border-style: dashed;
}

.map-node.replay-affected::after {
  position: absolute;
  inset: -4px;
  border: 1px dashed var(--accent);
  border-radius: inherit;
  content: "";
  pointer-events: none;
}

.edge.replay-path {
  stroke: var(--accent);
  stroke-width: 1.5;
}

.graph-panel{background-image:radial-gradient(ellipse at 47% 49%,#79caff18,transparent 62%),radial-gradient(#7cacef37 1px,transparent 1px);background-size:auto,17px 17px}
.map{height:390px}
.map-node[aria-pressed=true]{z-index:2}
.map-node.traced{border-color:#5391c1}
.edge.adjacent{stroke:#659cc8}
.edge.hot{stroke-width:1.65;filter:drop-shadow(0 0 4px #79caff65)}
.map-node[data-node=review]{--x:13%;--y:16%}
.map-node[data-node=pr]{--x:18%;--y:46%}
.map-node[data-node=staging]{--x:24%;--y:77%}
.map-node[data-node=api]{--x:43%;--y:48%}
.map-node[data-node=mobile]{--x:61%;--y:19%}
.map-node[data-node=web]{--x:60%;--y:77%}
.map-node[data-node=qa]{--x:79%;--y:48%}
.map-node[data-node=release]{--x:90%;--y:77%}
@media(max-width:540px){
  .map{height:410px}
  .map-node[data-node=review]{--x:18%;--y:11%}
  .map-node[data-node=pr]{--x:18%;--y:32%}
  .map-node[data-node=staging]{--x:18%;--y:72%}
  .map-node[data-node=api]{--x:49%;--y:43%}
  .map-node[data-node=mobile]{--x:78%;--y:14%}
  .map-node[data-node=web]{--x:78%;--y:60%}
  .map-node[data-node=qa]{--x:52%;--y:75%}
  .map-node[data-node=release]{--x:76%;--y:88%}
}
@media(max-width:540px){.source-strip{grid-template-columns:1fr;gap:0}.source-strip li,.source-strip li+li{border-left:0;padding:13px 0}.source-strip li+li{border-top:1px solid #203f7438}}
.faq {
  padding-bottom: 90px;
  border-top: 1px solid #203f7426;
}

.faq-list {
  border-top: 1px solid #203f7438;
}

.faq-list details {
  border-bottom: 1px solid #203f7438;
}

.faq-list summary {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 16px;
  padding: 22px 0;
  cursor: pointer;
  list-style: none;
  font-size: clamp(18px, 2.15vw, 30px);
  font-weight: 580;
  letter-spacing: -.035em;
}

.faq-list summary::-webkit-details-marker {
  display: none;
}

.faq-list summary:focus-visible {
  outline-color: #24548a;
  outline-offset: 3px;
}

.faq-index {
  color: #466181;
}

.faq-toggle {
  position: relative;
  width: 20px;
  height: 20px;
  justify-self: center;
  color: #24548a;
}

.faq-toggle::before,
.faq-toggle::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14px;
  height: 1px;
  background: currentColor;
  transform: translate(-50%, -50%);
}

.faq-toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
  transition: transform .2s;
}

.faq-list details[open] .faq-toggle::after {
  transform: translate(-50%, -50%);
}

.faq-answer {
  max-width: 84ch;
  margin-left: 48px;
  padding: 0 16px 24px 0;
  color: #354e70;
  font-size: 15px;
  line-height: 1.65;
}

.faq-answer strong {
  color: var(--black);
}

.faq-answer a {
  color: #174f92;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.faq-comparisons {
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}

.faq-comparisons li {
  padding: 11px 0;
  border-top: 1px solid #203f7426;
}

.faq-comparisons li:last-child {
  padding-bottom: 0;
}

.faq-comparisons a {
  white-space: nowrap;
}

@media (max-width: 740px) {
  .faq { padding-bottom: 54px; }
  .faq-list summary { grid-template-columns: 20px minmax(0, 1fr) 20px; gap: 10px; padding: 17px 0; }
  .faq-answer { margin-left: 30px; padding-right: 0; padding-bottom: 18px; }
}

@media (max-width: 420px) {
  .nav-wrap nav a:first-child { display: none; }
}

@media (max-width: 355px) {
  .nav-demo { padding-inline: 8px; }
  .nav-demo span { display: none; }
}

.direct-email{display:inline-block;margin-top:14px;color:var(--accent);font-size:13px}.direct-email:hover{text-decoration:underline}
.brand-icon {
  display: inline-flex;
  flex: none;
  overflow: hidden;
  border-radius: 24%;
}

.brand-icon img {
  transform: scale(1.72);
}

.wordmark .footer-wordmark {
  display: block;
  width: 116px;
  height: 31px;
  object-fit: cover;
  border-radius: 3px;
}

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