:root {
  --ink: #07111f;
  --ink-2: #0b192b;
  --navy: #0d2238;
  --blue: #087aa8;
  --cyan: #4be4ff;
  --cyan-2: #05b7dc;
  --ice: #d7f8ff;
  --paper: #f5f8fa;
  --white: #ffffff;
  --line: #d6e0e7;
  --muted: #627181;
  --danger: #ff4f63;
  --success: #39d6a6;
  --amber: #f6bd53;
  --radius: 4px;
  --shadow: 0 28px 80px rgba(2, 17, 31, .14);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.55; overflow-x: hidden; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
a { color: inherit; text-decoration: none; }
.shell { width: min(1200px, calc(100% - 48px)); margin: 0 auto; }
.skip-link { position: fixed; left: 16px; top: -80px; z-index: 999; background: white; padding: 12px 18px; border-radius: 3px; transition: top .2s; }
.skip-link:focus { top: 16px; }

.site-header { position: sticky; top: 0; z-index: 100; background: rgba(245,248,250,.88); border-bottom: 1px solid rgba(7,17,31,.08); backdrop-filter: blur(16px); }
.nav { height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.brand { display: inline-flex; align-items: center; flex: 0 0 auto; }
.brand-logo { display: block; width: auto; object-fit: contain; }
.brand-logo-header { height: 42px; max-width: 174px; }
.nav-links { display: flex; align-items: center; gap: 34px; margin-left: auto; }
.nav-links a { color: #39495a; font-size: .87rem; font-weight: 620; transition: color .2s; }
.nav-links a:hover, .nav-links a:focus-visible { color: var(--blue); }
.nav-cta { height: 42px; border: 0; border-radius: 2px; background: var(--ink); color: white; padding: 0 18px; font-size: .84rem; font-weight: 720; cursor: pointer; }
.nav-cta span { color: var(--cyan); margin-left: 8px; }
.menu-button { display: none; width: 42px; height: 42px; border: 1px solid var(--line); background: white; }
.menu-button span { display: block; width: 18px; height: 1.5px; background: var(--ink); margin: 5px auto; transition: transform .2s; }

.hero { min-height: 790px; display: grid; grid-template-columns: .92fr 1.28fr; align-items: center; gap: 66px; padding-top: 68px; padding-bottom: 94px; position: relative; }
.hero::before { content: ""; position: absolute; width: 480px; height: 480px; top: 4%; right: -18%; border-radius: 50%; background: radial-gradient(circle, rgba(75,228,255,.12), transparent 67%); pointer-events: none; }
.eyebrow { display: flex; align-items: center; gap: 10px; color: var(--blue); font-size: .73rem; font-weight: 790; text-transform: uppercase; letter-spacing: .18em; }
.eyebrow > span { width: 24px; height: 1px; background: currentColor; }
.eyebrow.light { color: var(--cyan); }
.hero h1 { font-size: clamp(3.5rem, 5.4vw, 5.8rem); line-height: .98; letter-spacing: -.06em; font-weight: 520; margin: 24px 0 26px; }
.hero h1 strong { color: var(--blue); font-weight: 690; }
.hero-lede { max-width: 555px; margin: 0; color: #435466; font-size: 1.17rem; line-height: 1.7; }
.hero-actions { display: flex; gap: 12px; margin: 34px 0 46px; }
.button { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; padding: 0 22px; border: 1px solid transparent; border-radius: 2px; font-size: .88rem; font-weight: 750; cursor: pointer; transition: transform .2s, background .2s, border-color .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--ink); color: white; }
.button-primary span { color: var(--cyan); }
.button-secondary { background: transparent; color: var(--ink); border-color: #b9c5ce; }
.button-secondary:hover { background: white; }
.hero-proof { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; border-top: 1px solid var(--line); padding-top: 22px; }
.hero-proof div { display: grid; gap: 4px; }
.hero-proof b { font-size: .82rem; }
.hero-proof span { color: var(--muted); font-size: .76rem; line-height: 1.45; }

.hero-console { background: var(--ink); color: white; box-shadow: var(--shadow); border: 1px solid rgba(75,228,255,.18); min-width: 0; position: relative; }
.hero-console::after { content: "PRODUCT CONCEPT"; position: absolute; right: -1px; bottom: -28px; color: #708091; font-size: .62rem; font-weight: 760; letter-spacing: .18em; }
.console-topbar { height: 50px; padding: 0 17px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.09); }
.console-title { display: flex; align-items: center; gap: 9px; font-size: .72rem; font-weight: 720; letter-spacing: .04em; }
.shield-mini { width: 25px; height: 25px; display: block; object-fit: contain; flex: 0 0 auto; }
.live-badge { font-size: .58rem; letter-spacing: .14em; font-weight: 750; color: #b8c3cf; }
.live-badge i { display: inline-block; width: 5px; height: 5px; background: var(--success); border-radius: 50%; margin-right: 7px; box-shadow: 0 0 0 4px rgba(57,214,166,.09); }
.console-grid { display: grid; grid-template-columns: 1fr 178px; min-height: 488px; }
.network-stage { position: relative; min-width: 0; overflow: hidden; background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px); background-size: 30px 30px; }
.network-stage::before { content: "CROSS-INSTITUTION GRAPH"; position: absolute; left: 17px; top: 15px; font-size: .56rem; color: #68798b; letter-spacing: .16em; }
.network-stage svg { width: 100%; height: 100%; min-height: 430px; overflow: visible; }
.edge { fill: none; stroke-width: 1.5; stroke: rgba(117,178,205,.36); stroke-dasharray: 5 4; }
.edge.danger { stroke: var(--danger); stroke-width: 2; stroke-dasharray: 7 5; animation: dash 18s linear infinite; }
.edge.faint { opacity: .45; }
.node circle { fill: #122941; stroke: #52718c; stroke-width: 1.2; }
.node text { fill: #d7e8f2; font-size: 10px; font-weight: 800; text-anchor: middle; }
.node .node-label { font-size: 9px; fill: #75899d; font-weight: 600; }
.node.institution circle { fill: #102b44; stroke: #2c87ae; }
.node.suspect circle:first-child { fill: #471d2b; stroke: var(--danger); stroke-width: 2; }
.node.suspect text { fill: white; }
.node.wallet circle { stroke: var(--amber); }
.node.cash circle { stroke: var(--danger); }
.node.faint-node { opacity: .58; }
.pulse-ring { fill: none !important; stroke: var(--danger) !important; opacity: .4; animation: pulse 2.4s ease-out infinite; transform-box: fill-box; transform-origin: center; }
.packet { fill: var(--cyan); filter: drop-shadow(0 0 5px var(--cyan)); }
.p2 { fill: #8beeff; }.p3 { fill: var(--amber); }
.network-alert { position: absolute; left: 18px; right: 18px; bottom: 17px; display: flex; align-items: center; gap: 10px; background: rgba(59,20,31,.94); border: 1px solid rgba(255,79,99,.55); padding: 10px 12px; box-shadow: 0 12px 35px rgba(0,0,0,.3); }
.alert-icon { width: 24px; height: 24px; display: grid; place-items: center; border: 1px solid var(--danger); color: var(--danger); font-weight: 900; }
.network-alert div { display: grid; line-height: 1.3; }
.network-alert b { font-size: .68rem; }
.network-alert small { color: #cc9aa4; font-size: .58rem; }
.network-alert > strong { margin-left: auto; color: var(--danger); font-size: 1.28rem; }
.signal-panel { border-left: 1px solid rgba(255,255,255,.09); padding: 22px 17px; background: rgba(4,14,26,.62); }
.risk-label { display: flex; align-items: center; justify-content: space-between; font-size: .52rem; letter-spacing: .12em; color: #718397; }
.risk-label b { color: var(--danger); font-size: .53rem; }
.risk-score { display: flex; align-items: baseline; margin: 10px 0 7px; }
.risk-score strong { font-size: 2.6rem; line-height: 1; font-weight: 560; color: white; }
.risk-score span { color: #718397; font-size: .65rem; margin-left: 4px; }
.meter { height: 3px; background: rgba(255,255,255,.1); overflow: hidden; }
.meter i { display: block; width: 94%; height: 100%; background: linear-gradient(90deg, var(--cyan), var(--amber), var(--danger)); }
.signal-list { list-style: none; padding: 22px 0 0; margin: 0; }
.signal-list li { display: grid; grid-template-columns: 22px 1fr; align-items: center; gap: 6px; padding: 12px 0; border-top: 1px solid rgba(255,255,255,.07); }
.signal-list span { color: #52677b; font-size: .54rem; }
.signal-list p { margin: 0; font-size: .61rem; color: #c0ccd7; line-height: 1.35; }
.raw-data { display: flex; align-items: center; gap: 7px; color: var(--success); font-size: .56rem; margin-top: 22px; }
.raw-data svg { width: 13px; fill: none; stroke: currentColor; stroke-width: 1.8; }

.evidence-strip { background: white; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.evidence-grid { min-height: 142px; display: grid; grid-template-columns: 1.6fr 1fr; }
.evidence-grid > div { padding: 28px 34px; display: flex; align-items: center; border-right: 1px solid var(--line); }
.evidence-grid > div:first-child { padding-left: 0; }
.evidence-grid > div:last-child { border-right: 0; padding-right: 0; }
.evidence-stat { gap: 16px; flex-wrap: wrap; }
.evidence-stat strong { color: var(--blue); font-size: 1.85rem; letter-spacing: -.04em; }
.evidence-stat span { width: 145px; color: #546474; font-size: .7rem; line-height: 1.35; }
.evidence-stat a { flex-basis: 100%; color: #798692; font-size: .6rem; text-decoration: underline; text-underline-offset: 3px; }
.evidence-statement { gap: 16px; }
.quote-mark { color: var(--cyan-2); font-family: Georgia, serif; font-size: 3.7rem; line-height: .4; align-self: flex-start; margin-top: 17px; }
.evidence-statement p { margin: 0; font-size: .97rem; font-weight: 660; line-height: 1.45; }
.award { gap: 18px; }
.award-icon { width: 42px; height: 42px; border: 1px solid #9bc8d8; display: grid; place-items: center; color: var(--blue); font-family: Georgia, serif; }
.award div { display: grid; }
.award small { color: #86939e; font-size: .55rem; letter-spacing: .15em; }
.award b { font-size: .86rem; margin-top: 2px; }
.award div span { color: #657483; font-size: .67rem; }

.section { padding-top: 132px; padding-bottom: 132px; }
.section-intro { max-width: 710px; }
.section-intro h2, .demo-heading h2, .privacy-copy h2, .recognition-copy h2, .pilot-inner h2 { font-size: clamp(2.6rem, 4.6vw, 4.6rem); line-height: 1.04; letter-spacing: -.055em; font-weight: 570; margin: 22px 0; }
.section-intro > p, .demo-heading > p, .recognition-copy > p { color: #566676; max-width: 600px; font-size: 1.06rem; line-height: 1.75; }
.comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 72px; }
.comparison-card { background: white; border: 1px solid var(--line); padding: 36px; min-width: 0; }
.comparison-card.garda-card { background: var(--ink); color: white; border-color: var(--ink); }
.card-kicker { display: flex; align-items: center; gap: 12px; font-size: .67rem; text-transform: uppercase; letter-spacing: .12em; color: #778695; }
.card-kicker span { width: 26px; height: 26px; border: 1px solid #c9d3da; display: grid; place-items: center; font-size: .55rem; }
.garda-card .card-kicker { color: #869caf; }.garda-card .card-kicker span { border-color: #33506a; color: var(--cyan); }
.comparison-card h3 { max-width: 440px; font-size: 1.45rem; line-height: 1.35; letter-spacing: -.025em; margin: 22px 0 25px; }
.comparison-card > p { color: #657483; font-size: .82rem; margin: 28px 0 0; line-height: 1.65; }
.garda-card > p { color: #8fa3b4; }
.mini-net { min-height: 185px; }
.silo-net { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.silo { border: 1px solid #e0e6eb; padding: 13px 10px; display: grid; grid-template-columns: 1fr 22px; align-items: center; gap: 9px; position: relative; }
.silo b { grid-column: 1/-1; color: #82909d; font-size: .58rem; text-transform: uppercase; letter-spacing: .1em; }
.mini-node { width: 23px; height: 23px; border-radius: 50%; display: grid; place-items: center; font-size: .52rem; font-weight: 800; position: relative; z-index: 1; }
.mini-node.blue { background: #d8f4fb; color: var(--blue); border: 1px solid #83ccde; }
.mini-node.neutral { background: #eff2f4; border: 1px solid #b8c4cc; color: #687684; }
.silo i { position: absolute; left: 41px; right: 33px; top: 77px; height: 1px; background: #c9d4dc; }
.silo small { grid-column: 1/-1; color: #9aa6af; text-align: right; font-size: .54rem; text-transform: uppercase; }
.united-net { position: relative; }
.united-net svg { width: 100%; height: 150px; }
.united-net path { fill: none; stroke: #47708b; stroke-width: 1.4; stroke-dasharray: 4 4; }
.united-net circle { fill: #102c44; stroke: #3d8daf; }
.united-net text { fill: #cfe7f2; font-size: 9px; text-anchor: middle; font-weight: 800; }
.united-net .hot circle, .usecase-visual .hot circle { fill: #48202d; stroke: var(--danger); stroke-width: 2; }
.detected-label { display: inline-flex; background: rgba(255,79,99,.13); border: 1px solid rgba(255,79,99,.4); color: var(--danger); padding: 6px 9px; font-size: .55rem; font-weight: 800; letter-spacing: .12em; }

.demo-section { background: var(--ink); color: white; position: relative; overflow: hidden; }
.demo-section::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 70% 40%, rgba(5,183,220,.11), transparent 40%); pointer-events: none; }
.demo-heading { display: grid; grid-template-columns: 1.25fr .75fr; gap: 80px; align-items: end; margin-bottom: 55px; position: relative; }
.demo-heading h2 { margin-bottom: 0; }
.demo-heading > p { color: #8da0b2; margin: 0 0 8px; }
.demo-workspace { position: relative; background: #071523; border: 1px solid #243b4f; box-shadow: 0 38px 90px rgba(0,0,0,.35); }
.demo-toolbar { height: 58px; display: flex; align-items: center; justify-content: space-between; padding: 0 16px; border-bottom: 1px solid #203549; background: #0a1929; }
.workspace-brand { display: flex; align-items: center; gap: 9px; font-size: .64rem; letter-spacing: .06em; }
.workspace-brand em { color: #718496; font-style: normal; font-size: .53rem; border-left: 1px solid #31465a; padding-left: 10px; }
.workspace-actions { display: flex; align-items: center; gap: 8px; }
.ghost-action { background: transparent; border: 1px solid #2b4054; color: #8ca0b1; height: 34px; padding: 0 15px; font-size: .63rem; cursor: pointer; }
.analyze-button { height: 34px; background: var(--cyan); border: 0; color: var(--ink); padding: 0 14px; font-size: .64rem; font-weight: 820; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; }
.scan-icon { width: 12px; height: 12px; border: 1px solid currentColor; border-radius: 50%; position: relative; }
.scan-icon::after { content: ""; width: 4px; height: 1px; background: currentColor; position: absolute; right: -3px; bottom: 0; transform: rotate(45deg); }
.demo-layout { display: grid; grid-template-columns: 220px 1fr 230px; min-height: 570px; }
.event-feed, .findings-panel { background: #091726; }
.event-feed { border-right: 1px solid #203549; }
.findings-panel { border-left: 1px solid #203549; }
.panel-heading { height: 48px; display: flex; align-items: center; justify-content: space-between; padding: 0 14px; border-bottom: 1px solid #203549; color: #708397; font-size: .54rem; letter-spacing: .13em; font-weight: 750; }
.panel-heading i { font-style: normal; color: var(--success); font-size: .48rem; }
.event-feed ul { list-style: none; margin: 0; padding: 0; }
.event-feed li { display: grid; grid-template-columns: 43px 1fr; gap: 8px; padding: 15px 13px; border-bottom: 1px solid rgba(255,255,255,.055); transition: opacity .35s, transform .35s; }
.event-feed time { color: #607589; font-family: ui-monospace, monospace; font-size: .53rem; }
.event-feed li div { display: grid; line-height: 1.35; }
.event-feed li b { font-size: .59rem; color: #c5d2dc; }
.event-feed li div span { font-size: .55rem; color: #708397; }
.event-feed li em { grid-column: 2; justify-self: start; font-style: normal; font-size: .46rem; font-weight: 820; color: var(--danger); border: 1px solid rgba(255,79,99,.3); padding: 2px 5px; }
.event-feed li em.event-risk { color: var(--success); border-color: rgba(57,214,166,.24); }
.hidden-event { opacity: 0; transform: translateY(-8px); pointer-events: none; }
.analyzed .hidden-event { opacity: 1; transform: none; }
.analyzed .event-risk { color: var(--amber) !important; border-color: rgba(246,189,83,.25) !important; }
.feed-note { display: flex; gap: 8px; padding: 15px 13px; color: #65798d; font-size: .54rem; line-height: 1.5; }
.feed-note span { width: 7px; height: 7px; flex: 0 0 auto; margin-top: 3px; border: 1px solid #65798d; border-radius: 50%; }
.analysis-canvas { position: relative; min-width: 0; overflow: hidden; background-image: radial-gradient(circle at 50% 45%, rgba(19,65,91,.28), transparent 48%), linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px); background-size: auto, 28px 28px, 28px 28px; }
.canvas-status { position: absolute; z-index: 3; left: 16px; right: 16px; top: 13px; display: flex; justify-content: space-between; font-size: .51rem; letter-spacing: .1em; color: #5e7488; }
.canvas-status b { color: #8194a5; font-weight: 600; text-transform: none; letter-spacing: 0; }
.demo-graph { width: 100%; height: 100%; min-height: 500px; }
.demo-edges path { fill: none; stroke: #38556d; stroke-width: 1.6; stroke-dasharray: 6 5; transition: stroke .5s, opacity .5s; }
.demo-edges .reveal-edge { opacity: 0; }
.analyzed .demo-edges path { stroke: #bf4658; }
.analyzed .demo-edges .reveal-edge { opacity: 1; animation: dash 10s linear infinite; }
.demo-node circle { fill: #10283d; stroke: #347c9e; stroke-width: 1.4; transition: all .5s; }
.demo-node text { fill: #d3e6f0; text-anchor: middle; font-size: 10px; font-weight: 800; }
.demo-node .demo-label { fill: #647d91; font-size: 9px; font-weight: 600; }
.demo-node.target circle:first-child { fill: #143047; stroke: #4ba6c7; }
.demo-pulse { fill: none !important; opacity: .4; stroke: #4ba6c7 !important; }
.analyzed .demo-node.target circle:first-child { fill: #451d2b; stroke: var(--danger); stroke-width: 2; }
.analyzed .demo-pulse { stroke: var(--danger) !important; animation: pulse 2s ease-out infinite; transform-box: fill-box; transform-origin: center; }
.demo-node.revealed { opacity: 0; transition: opacity .45s .4s; }
.analyzed .demo-node.revealed { opacity: 1; }
.analyzed .demo-node.revealed circle { stroke: var(--danger); }
.risk-cluster { opacity: 0; transition: opacity .5s .7s; }
.risk-cluster circle { fill: rgba(255,79,99,.025); stroke: rgba(255,79,99,.22); stroke-dasharray: 5 8; }
.risk-cluster text { fill: var(--danger); font-size: 8px; letter-spacing: .15em; }
.analyzed .risk-cluster { opacity: 1; }
.analysis-placeholder { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); text-align: center; display: grid; justify-items: center; gap: 4px; padding: 13px 20px; background: rgba(7,21,35,.8); transition: opacity .3s; }
.radar-icon { width: 28px; height: 28px; border-radius: 50%; border: 1px solid #39566e; position: relative; margin-bottom: 5px; }
.radar-icon::before, .radar-icon::after { content: ""; position: absolute; background: #39566e; }
.radar-icon::before { left: 50%; top: 0; width: 1px; height: 100%; }.radar-icon::after { top: 50%; left: 0; width: 100%; height: 1px; }
.analysis-placeholder b { color: #9eb0be; font-size: .62rem; }.analysis-placeholder small { color: #526a7e; font-size: .52rem; }
.analyzed .analysis-placeholder { opacity: 0; }
.scanning-line { position: absolute; z-index: 4; left: 0; right: 0; top: -2px; height: 2px; background: var(--cyan); box-shadow: 0 0 16px var(--cyan); opacity: 0; }
.scanning .scanning-line { opacity: 1; animation: scan 1.35s ease-in-out; }
.analysis-alert { position: absolute; left: 20px; right: 20px; bottom: 18px; display: flex; align-items: center; justify-content: space-between; padding: 13px 15px; background: rgba(69,19,32,.94); border: 1px solid rgba(255,79,99,.5); opacity: 0; transform: translateY(15px); transition: opacity .4s .7s, transform .4s .7s; }
.analysis-alert > div { display: flex; align-items: center; gap: 10px; }
.analysis-alert > div > span { width: 26px; height: 26px; border: 1px solid var(--danger); color: var(--danger); display: grid; place-items: center; font-weight: 900; }
.analysis-alert p { display: grid; margin: 0; }.analysis-alert p small { color: #e6909c; font-size: .46rem; letter-spacing: .13em; }.analysis-alert p b { font-size: .67rem; }
.analysis-alert > strong { color: var(--danger); font-size: 1.5rem; }.analysis-alert > strong small { color: #a36c74; font-size: .53rem; }
.analyzed .analysis-alert { opacity: 1; transform: none; }
.empty-findings { padding: 60px 25px; text-align: center; color: #607589; display: grid; justify-items: center; gap: 10px; }
.empty-findings span { font-size: 2rem; }.empty-findings p { font-size: .62rem; line-height: 1.6; }
.findings { display: none; padding: 23px 16px; }
.analyzed .empty-findings { display: none; }.analyzed .findings { display: block; }
.score-ring { width: 90px; height: 90px; margin: 4px auto 25px; position: relative; }
.score-ring svg { width: 100%; transform: rotate(-90deg); }.score-ring circle { fill: none; stroke: #21384a; stroke-width: 5; }.score-ring .score-progress { stroke: var(--danger); stroke-dasharray: 239; stroke-dashoffset: 14; }
.score-ring div { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; line-height: 1; }
.score-ring strong { font-size: 1.5rem; }.score-ring span { font-size: .42rem; color: var(--danger); margin-top: 5px; }
.findings ul { list-style: none; margin: 0; padding: 0; }
.findings li { display: flex; gap: 9px; padding: 10px 0; border-top: 1px solid rgba(255,255,255,.06); }
.findings li > i { width: 6px; height: 6px; border-radius: 50%; background: var(--danger); margin-top: 5px; }
.findings li div { display: grid; line-height: 1.45; }.findings li b { font-size: .59rem; }.findings li span { color: #687e91; font-size: .52rem; }
.explain-button { width: 100%; margin-top: 14px; height: 34px; background: transparent; border: 1px solid #2a4052; color: #97a9b6; font-size: .57rem; display: flex; align-items: center; justify-content: space-between; padding: 0 10px; cursor: pointer; }
.explanation { display: none; color: #7c91a3; font-size: .54rem; line-height: 1.6; border: 1px solid #263b4d; border-top: 0; padding: 10px; }
.explanation.open { display: block; }

.horizontal { max-width: none; display: grid; grid-template-columns: 1.25fr .75fr; gap: 80px; align-items: end; }
.horizontal h2 { margin-bottom: 0; }
.horizontal > p { margin: 0 0 7px; }
.pipeline { margin-top: 70px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid #cdd8df; border-bottom: 1px solid #cdd8df; }
.pipeline article { min-height: 355px; padding: 27px 26px; border-right: 1px solid #cdd8df; position: relative; }
.pipeline article:first-child { border-left: 1px solid #cdd8df; }
.step-num { color: #8b98a3; font-size: .63rem; }
.step-icon { width: 76px; height: 76px; margin: 45px 0 32px; display: grid; place-items: center; color: var(--blue); position: relative; }
.capture-icon { border: 1px solid #a8dbe6; border-radius: 50%; }
.capture-icon::before, .capture-icon::after { content: ""; position: absolute; inset: 11px; border: 1px solid #bee8ef; border-radius: 50%; }.capture-icon::after { inset: 25px; background: var(--cyan-2); border: 0; }
.capture-icon i { position: absolute; width: 5px; height: 5px; background: var(--blue); border-radius: 50%; }.capture-icon i:nth-child(1){top:2px}.capture-icon i:nth-child(2){right:5px;bottom:11px}.capture-icon i:nth-child(3){left:4px;bottom:10px}
.connect-icon i { width: 15px; height: 15px; border-radius: 50%; border: 1px solid var(--blue); position: absolute; }.connect-icon i:nth-child(1){left:2px;top:28px}.connect-icon i:nth-child(2){right:2px;top:9px}.connect-icon i:nth-child(3){right:4px;bottom:4px}.connect-icon::before,.connect-icon::after{content:"";position:absolute;height:1px;background:var(--blue);width:48px;left:17px;transform-origin:left}.connect-icon::before{top:34px;transform:rotate(-22deg)}.connect-icon::after{top:39px;transform:rotate(22deg)}
.score-icon { border: 1px solid #9fd3df; font-size: 1.7rem; font-weight: 580; }
.score-icon::after { content: "/100"; font-size: .5rem; color: #778793; margin-left: -17px; margin-top: 34px; }
.alert-step { border: 1px solid rgba(255,79,99,.55); color: var(--danger); font-size: 2rem; }
.pipeline h3 { font-size: 1.3rem; margin: 0 0 12px; }.pipeline p { color: #687886; font-size: .79rem; line-height: 1.65; }

.privacy-section { background: #0a1726; color: white; overflow: hidden; }
.privacy-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; align-items: center; }
.privacy-copy h2 strong { color: var(--cyan); }
.privacy-copy > p { color: #90a1af; max-width: 530px; font-size: 1.02rem; }
.privacy-points { list-style: none; padding: 0; margin: 45px 0 0; }
.privacy-points li { display: grid; grid-template-columns: 32px 1fr; gap: 18px; padding: 18px 0; border-top: 1px solid #263a4b; }
.privacy-points li > span { color: var(--cyan); font-size: .6rem; padding-top: 4px; }.privacy-points li div { display: grid; gap: 4px; }.privacy-points b { font-size: .88rem; }.privacy-points p { color: #7f93a4; font-size: .74rem; margin: 0; }
.architecture { border: 1px solid #294155; background: #071320; padding: 20px; min-height: 580px; position: relative; }
.architecture-head { display: flex; justify-content: space-between; color: #74889a; font-size: .56rem; letter-spacing: .15em; }.architecture-head em { font-style: normal; color: var(--cyan); }
.institution-row { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 47px; }
.institution-box { min-width: 0; min-height: 86px; border: 1px solid #28445a; background: #0b1d2d; padding: 14px 10px; display: grid; grid-template-columns: 28px 1fr 14px; gap: 8px; align-items: center; }
.bank-symbol { width: 27px; height: 27px; display: grid; place-items: center; background: #12354d; border: 1px solid #267397; font-size: .6rem; font-weight: 800; }.institution-box div { display: grid; line-height: 1.45; min-width: 0; }.institution-box b { font-size: .59rem; white-space: nowrap; }.institution-box small { color: #667e91; font-size: .5rem; }.lock { color: var(--success); font-style: normal; font-size: .6rem; }
.local-nodes { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 10px; }
.local-nodes span { color: #75b5cb; text-align: center; border: 1px solid #1f4c62; background: #0a2839; padding: 7px 2px; font-size: .5rem; }
.signal-lines { height: 78px; position: relative; }.signal-lines::after { content:"RISK SIGNALS · MODEL UPDATES"; position:absolute; left:50%; top:33px; transform:translateX(-50%); color:#526f82; font-size:.46rem; letter-spacing:.1em; white-space:nowrap; }.signal-lines i { position: absolute; top: 0; height: 66px; width: 1px; background: linear-gradient(var(--cyan-2), #244457); }.signal-lines i:nth-child(1){left:16.6%;transform:rotate(-25deg);transform-origin:top}.signal-lines i:nth-child(2){left:50%}.signal-lines i:nth-child(3){right:16.6%;transform:rotate(25deg);transform-origin:top}
.federated-core { width: 230px; height: 155px; margin: 0 auto; border: 1px solid #287392; position: relative; display: grid; grid-template-columns: 80px 1fr; align-items: center; padding: 20px; background: radial-gradient(circle at 30%, rgba(5,183,220,.12), transparent 55%); }
.core-orbit { width: 64px; height: 64px; border: 1px solid #2e8ba9; border-radius: 50%; display: block; position: relative; animation: rotate 12s linear infinite; }.core-orbit::before { content:""; position:absolute; inset:13px; border:1px solid #5acde3; border-radius:50%; }.core-orbit::after { content:""; position:absolute; inset:26px; background:var(--cyan); border-radius:50%; box-shadow:0 0 14px var(--cyan); }.core-orbit i { width:5px;height:5px;background:var(--cyan-2);border-radius:50%;position:absolute }.core-orbit i:nth-child(1){top:-2px;left:29px}.core-orbit i:nth-child(2){bottom:5px;right:8px}.core-orbit i:nth-child(3){bottom:10px;left:4px}
.federated-core div { display: grid; line-height: 1.3; }.federated-core small { color:#6393a8;font-size:.45rem;letter-spacing:.1em }.federated-core b { font-size:.86rem;margin-top:6px; }
.no-move { margin-top: 28px; border: 1px solid rgba(57,214,166,.32); background: rgba(57,214,166,.055); display: flex; align-items: center; gap: 14px; padding: 14px 17px; }.no-move > span { width:27px;height:27px;border:1px solid var(--success);color:var(--success);display:grid;place-items:center }.no-move div { display:grid }.no-move b { color:var(--success);font-size:.58rem;letter-spacing:.09em }.no-move small { color:#748b9c;font-size:.5rem;margin-top:3px }

.usecase-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 20px; margin-top: 70px; }
.featured-usecase { background: var(--ink); color: white; padding: 35px; min-height: 560px; display: flex; flex-direction: column; }
.usecase-tag { color: var(--cyan); font-size: .58rem; letter-spacing: .15em; }
.usecase-visual { flex: 1; display: grid; place-items: center; }
.usecase-visual svg { width: 90%; max-height: 230px; }.usecase-visual path { fill:none;stroke:#35566d;stroke-width:1.3;stroke-dasharray:5 4 }.usecase-visual circle { fill:#10283d;stroke:#3e82a0 }.usecase-visual text { fill:#b9d0dc;font-size:8px;text-anchor:middle;font-weight:800 }
.featured-usecase h3 { font-size: 1.7rem; letter-spacing: -.03em; margin: 0 0 12px; }.featured-usecase > p { color: #8ba0b0; font-size: .84rem; max-width: 510px; }
.usecase-metrics { display: flex; gap: 38px; border-top: 1px solid #253b4d; padding-top: 18px; margin-top: 20px; }.usecase-metrics span { display:grid;color:#708598;font-size:.58rem }.usecase-metrics b { color:#b8c8d4;font-size:.6rem;text-transform:uppercase;letter-spacing:.07em }
.usecase-list { display: grid; grid-template-rows: repeat(4,1fr); border-top: 1px solid var(--line); }
.usecase-list article { display: grid; grid-template-columns: 40px 1fr 20px; gap: 15px; align-items: center; border-bottom: 1px solid var(--line); padding: 20px 5px; transition: background .2s, padding .2s; }.usecase-list article:hover { background:white;padding-left:18px;padding-right:18px }.usecase-list article > span { color:#8895a0;font-size:.65rem }.usecase-list h3 { margin:0 0 5px;font-size:1.02rem }.usecase-list p { color:#71808d;font-size:.7rem;margin:0 }.usecase-list article > b { color:var(--blue);font-size:1rem }

.recognition-section { background: white; border-top: 1px solid var(--line); }
.recognition-grid { display: grid; grid-template-columns: 1fr .8fr; gap: 110px; align-items: center; }
.recognition-copy h2 { max-width: 700px; font-size: clamp(2.5rem,4vw,4rem); }
.text-link { display: inline-flex; gap: 18px; margin-top: 18px; color: var(--blue); font-size: .83rem; font-weight: 760; border-bottom: 1px solid #aed4df; padding-bottom: 6px; }
.award-card { aspect-ratio: 1.15/1; max-width: 480px; background: var(--ink); color: white; padding: 28px; display: flex; flex-direction: column; position: relative; overflow: hidden; }
.award-lines { position:absolute;inset:0;background:repeating-radial-gradient(circle at 80% 50%,transparent 0,transparent 28px,rgba(75,228,255,.08) 29px,transparent 30px);transform:scale(1.4) }.award-top { display:flex;justify-content:space-between;position:relative;font-size:.59rem;letter-spacing:.12em;color:#8093a4 }.award-top em{font-style:normal;color:var(--cyan)}
.award-rank { position:relative;margin:auto 0 0;font-size:clamp(7rem,12vw,10rem);font-weight:300;line-height:.78;letter-spacing:-.09em;color:transparent;-webkit-text-stroke:1px rgba(75,228,255,.6) }.award-bottom { position:relative;margin-top:auto;display:grid }.award-bottom small { color:var(--cyan);font-size:.55rem;letter-spacing:.15em }.award-bottom b { font-size:1.25rem;margin-top:4px }.award-bottom span { color:#75899b;font-size:.63rem;margin-top:4px }
.independence-note { margin-top: 80px; padding-top: 18px; border-top: 1px solid var(--line); color: #8a969f; font-size: .66rem; line-height: 1.6; }

.pilot-section { background: var(--blue); color: white; padding: 110px 0 40px; }
.pilot-inner { display: grid; grid-template-columns: 1.2fr .8fr; gap: 90px; align-items: end; }.pilot-inner h2 { margin-bottom:0 }.pilot-action p { color:#b9dfea;font-size:.92rem;margin:0 0 28px }.button-light { background:white;color:var(--ink); }.button-light span { color:var(--blue); }
.pilot-phases { margin-top: 75px; border-top: 1px solid rgba(255,255,255,.25); padding-top: 24px; display:flex;align-items:center;justify-content:space-between;color:#bfe4ed;font-size:.63rem;text-transform:uppercase;letter-spacing:.08em }.pilot-phases span { display:flex;align-items:center;gap:9px }.pilot-phases b { color:white }.pilot-phases i { height:1px;flex:1;background:rgba(255,255,255,.22);margin:0 18px }

footer { background: var(--ink); color: white; }
.footer-main { min-height: 160px; display: grid; grid-template-columns: .7fr 1fr 1fr; align-items: center; gap: 40px; }.footer-logo-plate{display:inline-flex;align-items:center;background:white;border:1px solid rgba(255,255,255,.16);border-radius:4px;padding:8px 11px;box-shadow:0 8px 28px rgba(0,0,0,.18)}.brand-logo-footer{height:33px;max-width:150px}.footer-main p{color:#71869a;font-size:.78rem}.footer-links{display:flex;justify-content:flex-end;gap:24px}.footer-links a{color:#91a2b0;font-size:.72rem}.footer-bottom{height:58px;border-top:1px solid #21364a;display:flex;justify-content:space-between;align-items:center;color:#5f7487;font-size:.62rem}

.pilot-dialog { width: min(650px, calc(100% - 30px)); border: 1px solid #284259; border-radius: 0; background: #081624; color: white; padding: 38px; box-shadow: 0 35px 100px rgba(0,0,0,.55); }
.pilot-dialog::backdrop { background: rgba(2,9,17,.78); backdrop-filter: blur(5px); }
.dialog-close { position:absolute;right:15px;top:13px;width:34px;height:34px;border:1px solid #2b4153;background:transparent;color:#91a3b1;font-size:1.2rem;cursor:pointer }.dialog-kicker{color:var(--cyan);font-size:.58rem;letter-spacing:.16em}.pilot-dialog h2{font-size:2rem;line-height:1.15;letter-spacing:-.04em;margin:17px 0 12px}.pilot-dialog>p{color:#8da0b0;font-size:.8rem;max-width:540px}.pilot-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:27px 0 20px}.pilot-option{text-align:left;background:#0c1c2b;border:1px solid #263e51;color:white;padding:14px;min-height:110px;cursor:pointer;display:grid;align-content:start;gap:5px}.pilot-option span{color:#63798c;font-size:.52rem}.pilot-option b{font-size:.7rem;line-height:1.3}.pilot-option small{color:#6d8294;font-size:.52rem;line-height:1.4}.pilot-option.active{border-color:var(--cyan);background:#0b2838}.pilot-option.active span{color:var(--cyan)}.pilot-summary{border:1px solid #263e51;padding:16px 18px}.pilot-summary>span{color:#6f8497;font-size:.52rem;letter-spacing:.12em}.pilot-summary ul{padding-left:17px;margin:10px 0 0;color:#9babb8;font-size:.64rem;line-height:1.9}.copy-brief{width:100%;height:45px;margin-top:13px;border:0;background:var(--cyan);color:var(--ink);font-size:.7rem;font-weight:800;cursor:pointer}.copy-brief span{margin-left:8px}.copy-status{min-height:20px;color:var(--success);font-size:.58rem;text-align:center;padding-top:7px}

.reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity: 1; transform: none; }
@keyframes dash { to { stroke-dashoffset: -150; } }
@keyframes pulse { 0%{transform:scale(.72);opacity:.65} 100%{transform:scale(1.3);opacity:0} }
@keyframes rotate { to { transform: rotate(360deg); } }
@keyframes scan { 0%{top:0}50%{top:100%}100%{top:0} }

@media (max-width: 1040px) {
  .hero { grid-template-columns: 1fr; gap: 55px; padding-top: 95px; }
  .hero-copy { max-width: 760px; }
  .console-grid { grid-template-columns: 1fr 190px; }
  .demo-layout { grid-template-columns: 185px 1fr; }.findings-panel{grid-column:1/-1;border-left:0;border-top:1px solid #203549}.findings{grid-template-columns:120px 1fr;gap:20px}.analyzed .findings{display:grid}.findings ul{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.explain-button,.explanation{grid-column:1/-1}.score-ring{margin:0 auto}.privacy-grid{grid-template-columns:1fr;gap:60px}.architecture{max-width:760px;width:100%;margin:auto}.recognition-grid{gap:55px}.pipeline article{padding:24px 18px}
}

@media (max-width: 780px) {
  .shell { width: min(100% - 30px, 680px); }
  .nav { height: 66px; }.nav-cta{display:none}.menu-button{display:block}.nav-links{position:absolute;left:0;right:0;top:66px;background:var(--paper);border-bottom:1px solid var(--line);padding:20px 15px;display:none;flex-direction:column;align-items:flex-start;margin:0;gap:0}.nav-links.open{display:flex}.nav-links a{width:100%;padding:13px 10px;border-bottom:1px solid #e1e7eb}
  .hero { min-height: 0; padding-top: 75px; padding-bottom: 80px; }.hero h1{font-size:clamp(3.2rem,15vw,5rem)}.hero-actions{flex-direction:column;align-items:stretch}.hero-proof{grid-template-columns:1fr}.console-grid{grid-template-columns:1fr}.signal-panel{display:none}.network-stage svg{min-height:380px}.hero-console::after{display:none}
  .evidence-grid{grid-template-columns:1fr}.evidence-grid>div,.evidence-grid>div:first-child,.evidence-grid>div:last-child{padding:24px 0;border-right:0;border-bottom:1px solid var(--line)}.evidence-grid>div:last-child{border-bottom:0}.evidence-stat span{width:auto;flex:1}.evidence-stat a{flex-basis:auto;margin-left:auto}
  .section{padding-top:90px;padding-bottom:90px}.comparison{grid-template-columns:1fr;margin-top:50px}.comparison-card{padding:24px}.section-intro h2,.demo-heading h2,.privacy-copy h2,.recognition-copy h2,.pilot-inner h2{font-size:clamp(2.45rem,11vw,3.4rem)}
  .demo-heading,.horizontal,.pilot-inner{grid-template-columns:1fr;gap:25px}.demo-workspace{margin-left:-15px;margin-right:-15px}.demo-toolbar{height:auto;min-height:58px;gap:10px;flex-wrap:wrap;padding:12px}.workspace-brand em{display:none}.demo-layout{display:block}.event-feed{border-right:0}.event-feed ul{display:grid;grid-template-columns:1fr 1fr}.event-feed li{min-height:78px}.feed-note{display:none}.analysis-canvas{min-height:490px}.findings-panel{border-top:1px solid #203549}.findings ul{grid-template-columns:1fr}.analyzed .findings{display:block}.score-ring{margin:0 auto 20px}
  .pipeline{grid-template-columns:1fr 1fr}.pipeline article,.pipeline article:first-child{border-left:1px solid #cdd8df;border-bottom:1px solid #cdd8df;min-height:310px}.pipeline article:nth-child(odd){border-right:0}
  .privacy-grid{gap:45px}.architecture{padding:14px;min-height:540px}.institution-box{grid-template-columns:24px 1fr;padding:10px 7px}.institution-box .lock{display:none}.institution-box b{font-size:.5rem}.local-nodes span{font-size:.43rem}.no-move small{display:none}
  .usecase-grid,.recognition-grid{grid-template-columns:1fr}.recognition-grid{gap:55px}.award-card{max-width:none}.pilot-phases{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pilot-phases i{display:none}
  .footer-main{grid-template-columns:1fr;padding-top:45px;padding-bottom:35px;gap:18px}.footer-links{justify-content:flex-start;flex-wrap:wrap}.footer-bottom{height:auto;min-height:70px;gap:15px;flex-wrap:wrap;padding:15px 0}
  .pilot-options{grid-template-columns:1fr}.pilot-option{min-height:85px}.pilot-dialog{padding:28px 20px}
}

@media (max-width: 520px) {
  .hero-copy br{display:none}.console-topbar{padding:0 11px}.network-stage svg{min-height:320px}.network-alert{left:10px;right:10px}.network-alert>strong{font-size:1rem}.silo-net{grid-template-columns:1fr}.silo{min-height:92px}.silo i{top:58px}.event-feed ul{grid-template-columns:1fr}.analysis-canvas{min-height:430px}.demo-graph{min-height:430px}.pipeline{grid-template-columns:1fr}.pipeline article:nth-child(odd){border-right:1px solid #cdd8df}.institution-row{gap:5px}.institution-box{display:block;text-align:center}.bank-symbol{margin:0 auto 7px}.local-nodes{gap:5px}.federated-core{width:210px}.usecase-metrics{flex-direction:column;gap:10px}.footer-links{gap:16px}
}

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