:root{--bg-page: #04080f;--bg-surface: #090f1a;--bg-soft: #0f1726;--bg-panel: #0b1422;--bg-lift: #101c2f;--text-primary: #e1ebfa;--text-secondary: #96a8bf;--text-muted: #6e8197;--border-subtle: #263750;--brand-primary: #5b9be0;--brand-secondary: #8ca6c0;--brand-accent: #2f7fc7;--brand-glow: #70acdd;--hero-accent: #9ac0e8;--ink-soft: #7f8b9f;--ink-strong: #cbd5e1;--warn-accent: #f59e0b;--evidence-accent: #2dd4bf;--deny-accent: #fb923c}*{box-sizing:border-box}html{font-family:Inter,Segoe UI,SF Pro Text,Roboto,Helvetica,Arial,sans-serif;line-height:1.55;color:var(--text-primary);background:var(--bg-page)}body{margin:0;padding:0}.site-header,.site-footer{background-color:var(--bg-surface)}.site-header{border-bottom:1px solid var(--border-subtle)}.site-footer{border-top:1px solid var(--border-subtle)}.header-inner,.footer-inner{width:100%;max-width:1320px;margin:0 auto;padding:1rem 1.35rem;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:.95rem}.brand{display:inline-flex;align-items:center;text-decoration:none;margin-right:.7rem;min-height:3.8rem;max-width:24rem;padding:.1rem .08rem}.brand-logo{display:block;width:auto;height:110px;max-width:380px;object-fit:contain;padding:0}.brand:hover,.brand:focus-visible{text-decoration:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.header-nav{display:flex;justify-content:flex-start;gap:1rem;flex:1 1 auto;flex-shrink:0;min-width:0;align-items:center;white-space:nowrap}.header-nav a{font-size:1rem;color:#96a8bfe0;text-decoration:none;letter-spacing:.01em}.header-nav a:hover{text-decoration:underline;color:var(--brand-accent)}main#content{max-width:1100px;margin:0 auto;padding:4rem 1.5rem 5rem}section{margin-bottom:4rem}section:last-of-type{margin-bottom:0}h1{font-size:2.6rem;line-height:1.15;margin:0 0 1.25rem;letter-spacing:-.015em;color:var(--brand-primary)}h2{font-size:1.6rem;line-height:1.25;margin:0 0 1.25rem;font-weight:500;color:var(--text-primary)}h3{font-size:1.25rem;line-height:1.3;margin:0 0 .7rem;color:var(--text-primary)}p{max-width:720px;margin:0 0 1.5rem;color:var(--text-secondary)}a{color:#9bc3f2}a:hover{text-decoration:underline}.landing{padding-top:4rem;padding-bottom:3rem;background:linear-gradient(140deg,#121f31b8,#090e18d6);border:1px solid var(--border-subtle);border-radius:.75rem;padding:3rem 1.75rem;margin-bottom:3.5rem}.landing p.hero-subheadline{color:var(--hero-accent);font-weight:500}.landing>*{max-width:900px;margin-left:auto;margin-right:auto}.landing h1{text-align:center;margin-bottom:1.25rem;white-space:normal;max-width:860px;margin-left:auto;margin-right:auto}.landing h2{text-align:center;margin-bottom:1.5rem;font-weight:500;white-space:normal}.landing .hero-descriptor{margin-bottom:1.25rem;color:var(--text-secondary);white-space:normal}.landing p{text-align:left;margin-bottom:.75rem;color:var(--text-secondary);white-space:normal}.landing .hero-eyebrow{margin-bottom:1rem;color:var(--text-secondary);font-weight:600;letter-spacing:.09em;text-transform:uppercase;font-size:.8rem}.section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.75rem;margin:0 0 .75rem;font-weight:600}@media(max-width:900px){.landing h1,.landing h2,.landing .hero-descriptor,.landing p{white-space:normal;text-align:left}.landing h1,.landing h2{text-align:center}.brand{gap:.45rem}.header-inner{padding-left:.8rem;padding-right:1rem}.brand-logo{height:36px;max-width:245px}.header-nav{gap:1rem;justify-content:flex-end;flex-wrap:wrap;row-gap:.6rem}}figure{margin:3rem 0}figcaption{margin-top:.75rem;font-size:.9rem;color:#6b7280;text-align:center}.site-footer{font-size:.9rem;color:var(--text-secondary)}.page-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.2rem}.btn-primary,.btn-secondary{display:inline-block;padding:.62rem 1rem;border-radius:.4rem;text-decoration:none;border:1px solid transparent}.btn-primary{background-color:var(--brand-primary);color:#fff}.btn-secondary{border-color:var(--brand-primary);color:var(--brand-primary)}.btn-secondary:hover{background-color:#1e3a8a0d}.hero-eyebrow{display:inline-block;margin:0 0 .85rem;padding:.18rem .62rem;border-radius:.2rem;border:1px solid var(--brand-primary);background:#1e3a8a0a;color:var(--brand-primary);font-weight:600;font-size:.84rem;letter-spacing:.06em;text-transform:uppercase}.lead{font-size:1.1rem;max-width:800px;color:var(--text-primary)}.homepage-block{border-left:3px solid var(--brand-accent);background:linear-gradient(160deg,#121f34c7,#0a101be6);border-radius:.6rem;padding:1.3rem 1.3rem .95rem;box-shadow:none}.stack-section{padding-top:.25rem}.stack-callout{border-left:3px solid var(--brand-primary);padding-left:1rem;margin-left:.25rem}.doc-architecture{padding:0 .2rem}.doc-diagram-frame{border:1px solid var(--border-subtle);border-radius:.65rem;padding:.9rem;background:linear-gradient(170deg,#0f1724e6,#090d18e6);box-shadow:none}.doc-diagram{width:100%;display:block;max-width:980px;height:auto;border-radius:.45rem}.doc-diagram-frame figcaption{margin-top:.6rem;color:var(--text-muted);font-size:.9rem}.doc-architecture-section{margin-top:2rem;margin-bottom:2.6rem}.homepage-risk-framing{margin:.85rem 0 0;border-left:2px solid var(--brand-secondary);padding-left:.8rem;color:var(--text-secondary)}.homepage-failclosed-callout{margin-bottom:1rem;border:1px solid rgba(251,146,60,.22);border-left:3px solid var(--deny-accent);border-radius:.6rem;padding:.85rem 1rem .95rem;background:linear-gradient(180deg,#1821308f,#0c121ce0)}.homepage-failclosed-callout h3{margin:0 0 .45rem;color:#fed7aa}.homepage-failclosed-callout p{color:var(--text-secondary);margin:0}.muted-copy{color:var(--text-muted);font-style:italic}.section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem}.section-grid--compact{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.85rem}.content-card{border:1px solid var(--border-subtle);border-radius:.5rem;padding:1rem;background:var(--bg-panel);border-left:3px solid var(--brand-accent)}.content-card p{margin-bottom:0}.flow-diagram{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:.75rem;margin:1.1rem 0 .5rem}.infra-diagram{position:relative;border:1px solid var(--border-subtle);border-radius:.7rem;padding:1rem;background:linear-gradient(180deg,#0e1727f5,#0a0f1cf0)}.infra-diagram .flow-step{background:var(--bg-lift)}.flow-node-primary{border-left:3px solid var(--brand-primary)}.flow-node-boundary{border-left:3px solid var(--brand-accent)}.flow-node-evidence{border-left:3px solid var(--evidence-accent)}.flow-node-deny{border-left:3px solid var(--deny-accent)}.flow-path-note{margin:.45rem 0 0;color:var(--text-muted);font-size:.85rem}.flow-pulse{position:relative;overflow:hidden}.flow-pulse:after{content:"";position:absolute;inset:0;border-radius:.6rem;background:linear-gradient(120deg,transparent,rgba(47,126,198,.24),transparent);transform:translate(-100%);animation:infraSweep 10.5s infinite;pointer-events:none}@keyframes infraSweep{0%,78%{transform:translate(-100%);opacity:0}83%{opacity:1}90%,to{transform:translate(100%);opacity:0}}.flow-diagram--stack{grid-template-columns:1fr auto 1fr auto 1fr}.flow-diagram--tight{grid-template-columns:1.5fr auto 1.5fr auto 1.5fr}.flow-diagram--sequence-2{grid-template-columns:minmax(0,1fr) 1.8rem minmax(0,1fr)}.flow-diagram--sequence-3{grid-template-columns:minmax(0,1fr) 1.8rem minmax(0,1fr) 1.8rem minmax(0,1fr)}.flow-diagram--sequence-4{grid-template-columns:minmax(0,1fr) 1.8rem minmax(0,1fr) 1.8rem minmax(0,1fr) 1.8rem minmax(0,1fr)}.flow-step{border:1px solid var(--border-subtle);border-radius:.55rem;padding:.75rem .8rem;background-color:var(--bg-lift)}.flow-step--uniform{min-height:7.2rem;display:flex;flex-direction:column;justify-content:flex-start;gap:.42rem}.boundary-statement{margin:1rem 0 0;padding:.75rem .85rem;border:1px solid rgba(148,163,184,.24);border-radius:.6rem;background:linear-gradient(180deg,#0b1220f0,#0d172af7);box-shadow:inset 0 0 0 1px #38bdf81f;gap:.45rem;display:grid;position:relative}.boundary-statement:before{content:"Boundary declaration";margin:0 0 .28rem;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--warn-accent);font-weight:600}.boundary-statement p{margin:0;font-size:.93rem;color:var(--text-primary);line-height:1.35}.boundary-statement-key{color:#f8fafc;font-weight:600;padding-left:.48rem;border-left:2px solid var(--warn-accent);margin-left:-.2rem;text-transform:none}.boundary-statement-detail{color:var(--text-secondary);font-weight:500}.flow-step-title{margin:0 0 .4rem;font-weight:600;color:var(--text-primary)}.flow-arrow{display:flex;align-items:center;justify-content:center;color:var(--brand-accent);font-weight:600;font-size:1.3rem;min-height:1.3rem}.flow-branch{display:grid;gap:.75rem}.flow-branch-title{margin:0;color:var(--text-muted);font-size:.84rem;text-transform:uppercase;letter-spacing:.06em}li{margin-bottom:.4rem}.responsibility-matrix-wrap{overflow-x:auto}.responsibility-matrix{width:100%;border-collapse:collapse;min-width:840px}.responsibility-matrix th,.responsibility-matrix td{border:1px solid var(--border-subtle);padding:.72rem .8rem;vertical-align:top;text-align:left;color:var(--text-secondary)}.responsibility-matrix th{background:#0f1728d9;color:var(--text-primary);font-weight:600}.responsibility-matrix tr:nth-child(2n) td{background-color:#0b122066}.sample-record{border:1px solid var(--border-subtle);border-radius:.55rem;background:linear-gradient(180deg,#0d1420e0,#0a0f18f0);padding:.95rem;display:grid;gap:.65rem}.footer-brand-mark{display:inline-flex;align-items:center;gap:.55rem;margin:0 0 .6rem}.footer-brand-icon{width:18px;height:18px;display:block;object-fit:contain}.sample-record-row{display:grid;grid-template-columns:minmax(14rem,1fr) minmax(0,2fr);gap:.75rem;border-bottom:1px solid rgba(38,49,75,.55);padding-bottom:.55rem}.sample-record-row:last-child{border-bottom:0;padding-bottom:0}.sample-record-label{color:var(--text-muted);font-size:.9rem}.sample-record-value{color:var(--text-secondary)}@media(max-width:780px){.sample-record-row{grid-template-columns:1fr;gap:.3rem}}@media(max-width:900px){.flow-diagram,.flow-diagram--stack,.flow-diagram--tight,.flow-diagram--sequence-2,.flow-diagram--sequence-3,.flow-diagram--sequence-4{grid-template-columns:1fr;gap:.5rem}.flow-arrow{justify-content:flex-start;transform:rotate(90deg)}.flow-step--uniform{min-height:0}}.footer-inner{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:2.2rem}.footer-left{min-width:0}.footer-left strong{color:var(--text-primary)}.footer-brand-lockup{display:inline-flex;flex-direction:column;gap:.3rem;align-items:flex-start;max-width:26rem}.footer-brand-subline{margin:0;max-width:100%;width:min(100%,32ch);color:var(--text-secondary);line-height:1.4}.footer-center{position:absolute;left:50%;transform:translate(-50%);text-align:center;width:max-content;justify-self:center}.footer-right{margin-left:auto;text-align:right}.footer-slogan-line{margin:0}.footer-center .footer-slogan-line+.footer-slogan-line{margin-top:.35rem}.footer-right a{color:#8ebbe9;text-decoration:none}.footer-right a:hover{text-decoration:underline}@media(max-width:900px){.footer-inner{display:block;text-align:left;position:static}.footer-center{position:static;left:auto;transform:none;width:100%;text-align:left;margin:0;padding:0}.footer-center,.footer-right{text-align:left}.footer-brand-lockup{max-width:100%}.footer-brand-subline{width:100%;max-width:100%}}@media print{*{color:#000!important;background:#fff!important}.site-header,.header-nav{display:none!important}.site-footer{border-top:none;margin-top:2rem}.footer-inner{display:block}.footer-center,.footer-right{display:none}main#content{padding:0;max-width:none}section{page-break-inside:avoid}h1,h2{page-break-after:avoid}p{orphans:3;widows:3}img{max-width:100%;height:auto;page-break-inside:avoid}a:after{content:" (" attr(href) ")";font-size:.85em}}.skip-link{position:absolute;top:-8rem;left:0;background:#000;color:#fff;padding:.5rem .75rem;z-index:1000;text-decoration:none;opacity:0;pointer-events:none;transition:opacity .15s ease,top .15s ease;transform:translateY(-4px)}.skip-link:focus{top:0;opacity:1;pointer-events:auto;transform:translateY(0)}.skip-link:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}a:focus-visible,button:focus-visible{outline:3px solid var(--brand-accent);outline-offset:2px}.header-nav a[aria-current=page]{font-weight:500;text-decoration:underline}p,figcaption{color:var(--text-secondary)}
