:root {
  --ink: #081019;
  --ink-2: #0e1924;
  --ink-3: #172532;
  --paper: #f2efe8;
  --paper-2: #ddd8cd;
  --metal: #d7af67;
  --metal-light: #f0d6a2;
  --ice: #9fe5e7;
  --blue: #56a8ff;
  --green: #70d7a2;
  --red: #f08d83;
  --muted: #8d9ba7;
  --line: rgba(255,255,255,.14);
  --line-dark: rgba(8,16,25,.15);
  --shadow: 0 28px 90px rgba(0,0,0,.33);
  --radius: 18px;
  --shell: min(1180px, calc(100vw - 40px));
  --display: "Arial Narrow", "Roboto Condensed", "Aptos Display", Helvetica, Arial, sans-serif;
  --body: "Aptos", "Inter", "Helvetica Neue", Arial, sans-serif;
  --serif: Iowan Old Style, Baskerville, "Times New Roman", serif;
  --mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  color: var(--paper);
  background: var(--ink);
  font-family: var(--body);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
body.modal-open { overflow: hidden; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
button { color: inherit; }
::selection { background: var(--metal); color: var(--ink); }

.skip-link {
  position: fixed;
  z-index: 1000;
  left: 18px;
  top: 18px;
  padding: 10px 14px;
  background: var(--paper);
  color: var(--ink);
  transform: translateY(-180%);
  transition: transform .2s ease;
}
.skip-link:focus { transform: translateY(0); }
.shell { width: var(--shell); margin-inline: auto; }

.site-header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(8,16,25,.58);
  border-bottom: 1px solid transparent;
  backdrop-filter: blur(18px);
  transition: background .25s ease, border-color .25s ease;
}
.site-header.scrolled { background: rgba(8,16,25,.9); border-color: var(--line); }
.header-inner { height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 11px; font-family: var(--display); font-weight: 700; letter-spacing: -.02em; font-size: 20px; }
.brand-mark { width: 34px; height: 34px; color: var(--metal); }
.desktop-nav { display: flex; align-items: center; gap: 32px; margin-left: auto; }
.desktop-nav a { font-size: 14px; color: #c4cbd0; transition: color .2s ease; }
.desktop-nav a:hover { color: #fff; }
.header-actions { display: flex; align-items: center; gap: 12px; }
.text-button { border: 0; background: transparent; padding: 10px 12px; cursor: pointer; font-size: 14px; }
.text-button:hover { color: var(--metal-light); }
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 50px;
  padding: 0 22px;
  border: 1px solid var(--metal);
  border-radius: 999px;
  background: var(--metal);
  color: var(--ink);
  font-weight: 700;
  cursor: pointer;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.2);
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.button:hover { transform: translateY(-2px); background: var(--metal-light); border-color: var(--metal-light); }
.button-small { min-height: 42px; padding-inline: 18px; font-size: 14px; }
.button-ghost { background: transparent; color: var(--paper); border-color: rgba(255,255,255,.25); box-shadow: none; }
.button-ghost:hover { background: rgba(255,255,255,.07); color: #fff; border-color: rgba(255,255,255,.5); }
.button-light { background: var(--paper); border-color: var(--paper); color: var(--ink); }
.button-light:hover { background: #fff; border-color: #fff; }
.button:focus-visible, .text-button:focus-visible, a:focus-visible, select:focus-visible, input:focus-visible, textarea:focus-visible, .identity-passport:focus-visible, .policy-chip:focus-visible, .tab-list button:focus-visible { outline: 3px solid var(--ice); outline-offset: 4px; }
.menu-button { display: none; width: 42px; height: 42px; border: 1px solid var(--line); background: transparent; border-radius: 50%; place-items: center; cursor: pointer; }
.menu-button span { display: block; width: 16px; height: 1px; background: currentColor; transition: transform .2s ease; }
.menu-button span + span { margin-top: 5px; }
.menu-button[aria-expanded="true"] span:first-child { transform: translateY(3px) rotate(45deg); }
.menu-button[aria-expanded="true"] span:last-child { transform: translateY(-3px) rotate(-45deg); }
.mobile-nav { display: none; }

.hero { position: relative; overflow: hidden; padding-top: 78px; background: radial-gradient(circle at 73% 34%, rgba(86,168,255,.12), transparent 28%), radial-gradient(circle at 76% 48%, rgba(215,175,103,.12), transparent 38%), var(--ink); }
.hero::before { content:""; position:absolute; inset:0; 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: 64px 64px; mask-image: linear-gradient(to bottom, black, transparent 87%); pointer-events:none; }
.hero-grid { position: relative; z-index: 1; min-height: 720px; display: grid; grid-template-columns: .93fr 1.07fr; align-items: center; gap: 56px; padding-block: 78px 92px; }
.eyebrow { margin: 0 0 18px; text-transform: uppercase; letter-spacing: .16em; font-family: var(--mono); font-size: 11px; font-weight: 700; color: var(--metal-light); }
.live-dot { display:inline-block; width:7px; height:7px; margin-right: 8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px rgba(112,215,162,.08); }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--display); line-height: .98; }
h1 { max-width: 760px; margin-bottom: 28px; font-size: clamp(58px, 7.1vw, 104px); font-weight: 650; letter-spacing: -.065em; }
h1 em, h2 em { font-family: var(--serif); font-weight: 400; letter-spacing: -.055em; color: var(--metal-light); }
.hero-lede { max-width: 590px; margin-bottom: 34px; font-size: clamp(18px, 2vw, 22px); line-height: 1.5; color: #b9c2ca; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.proof-line { display: flex; flex-wrap: wrap; gap: 14px 26px; margin-top: 42px; color: #8796a3; font-family: var(--mono); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.proof-line span { display:flex; align-items:center; gap:8px; }
.proof-line span::before { content:""; width:4px; height:4px; border-radius:50%; background: var(--metal); }

.vault-stage { position: relative; min-height: 560px; display: grid; place-items: center; perspective: 1400px; }
.orbit { position:absolute; border:1px solid rgba(215,175,103,.18); border-radius:50%; pointer-events:none; }
.orbit::after { content:""; position:absolute; width:8px; height:8px; border-radius:50%; background:var(--metal); box-shadow:0 0 18px rgba(215,175,103,.7); }
.orbit-one { width:570px; height:570px; animation:spin 26s linear infinite; }
.orbit-one::after { left:70px; top:51px; }
.orbit-two { width:448px; height:448px; border-color:rgba(159,229,231,.13); animation:spin-reverse 21s linear infinite; }
.orbit-two::after { right:54px; bottom:52px; background:var(--ice); }
.orbit-three { width:340px; height:340px; border-style:dashed; opacity:.7; animation:spin 35s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }
@keyframes spin-reverse { to { transform:rotate(-360deg); } }
.identity-passport { position:relative; z-index:3; width:min(440px, 78vw); min-height:540px; padding:24px; border:1px solid rgba(255,255,255,.24); border-radius:28px; background:linear-gradient(145deg, rgba(42,59,72,.94), rgba(13,24,34,.96) 58%, rgba(26,40,52,.96)); box-shadow:var(--shadow), inset 0 1px 0 rgba(255,255,255,.14); overflow:hidden; transform:rotateY(-8deg) rotateX(2deg); transform-style:preserve-3d; transition:transform .16s ease-out; }
.identity-passport::before { content:""; position:absolute; inset:0; background:linear-gradient(105deg, transparent 15%, rgba(255,255,255,.12) 41%, transparent 58%); transform:translateX(-130%); animation:card-sheen 7s ease-in-out infinite; pointer-events:none; }
.identity-passport::after { content:""; position:absolute; width:260px; height:260px; right:-120px; bottom:-130px; border-radius:50%; border:45px double rgba(215,175,103,.07); }
@keyframes card-sheen { 0%, 68%, 100% { transform:translateX(-130%); } 82% { transform:translateX(140%); } }
.passport-topline, .passport-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.passport-topline { padding-bottom:18px; border-bottom:1px solid var(--line); font-family:var(--mono); font-size:10px; letter-spacing:.12em; color:#c8d0d5; }
.status { display:inline-flex; align-items:center; gap:7px; font-family:var(--mono); font-size:10px; letter-spacing:.08em; }
.status i { width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 10px rgba(112,215,162,.7); }
.passport-profile { display:grid; grid-template-columns:112px 1fr; gap:22px; align-items:center; padding:26px 0 22px; }
.portrait { border-radius:19px; overflow:hidden; box-shadow:0 14px 35px rgba(0,0,0,.25); }
.profile-data p { margin-bottom:2px; color:#aeb9c1; font-size:13px; }
.profile-data .data-label { margin-bottom:0; font-family:var(--mono); font-size:9px; letter-spacing:.1em; text-transform:uppercase; color:#6f8392; }
.profile-data .mono { font-family:var(--mono); font-size:11px; color:var(--metal-light); }
.profile-data h2 { margin:16px 0 4px; font-size:32px; letter-spacing:-.035em; }
.jurisdiction { display:inline-flex; margin-top:13px; padding:5px 8px; border:1px solid rgba(255,255,255,.15); border-radius:6px; color:#bfc9d0; font-family:var(--mono); font-size:9px; letter-spacing:.08em; }
.passport-rights { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); border-radius:15px; overflow:hidden; }
.passport-rights div { padding:16px; }
.passport-rights div:nth-child(odd) { border-right:1px solid var(--line); }
.passport-rights div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
.passport-rights span { display:block; margin-bottom:4px; font-family:var(--mono); font-size:9px; letter-spacing:.09em; color:#778a99; }
.passport-rights strong { font-size:12px; font-weight:600; color:#e8edf0; }
.passport-footer { margin-top:21px; padding-top:18px; border-top:1px solid var(--line); }
.passport-footer > div { flex:1; }
.passport-footer span { display:block; font-size:9px; color:#718593; }
.passport-footer strong { display:block; margin-top:2px; font-size:10px; color:#bbc5cb; font-weight:500; }
.fingerprint { width:36px; height:36px; border-radius:50%; background:repeating-radial-gradient(ellipse at center, transparent 0 2px, rgba(215,175,103,.65) 3px 4px); opacity:.75; }
.passport-seal { display:grid !important; place-items:center; width:35px; height:35px; border:1px solid var(--metal); border-radius:50%; color:var(--metal-light) !important; font-family:var(--serif); font-size:11px !important; }
.floating-note { position:absolute; z-index:5; padding:12px 14px; border:1px solid rgba(255,255,255,.15); border-radius:10px; background:rgba(10,20,29,.78); backdrop-filter:blur(14px); box-shadow:0 14px 35px rgba(0,0,0,.22); font-family:var(--mono); }
.floating-note span { display:block; font-size:8px; text-transform:uppercase; letter-spacing:.1em; color:#6f8391; }
.floating-note strong { display:block; margin-top:3px; font-size:10px; letter-spacing:.05em; color:#dfe6e9; }
.note-one { left:0; top:18%; animation:float 5s ease-in-out infinite; }
.note-two { right:-4%; bottom:17%; animation:float 6s ease-in-out infinite reverse; }
.note-two strong { font-size:18px; color:var(--metal-light); }
@keyframes float { 50% { transform:translateY(-9px); } }
.hero-rail { position:relative; z-index:2; display:flex; gap:80px; width:max-content; padding:12px 0; border-block:1px solid var(--line); color:#536575; font-family:var(--mono); font-size:9px; letter-spacing:.14em; animation:rail 30s linear infinite; }
.hero-rail span { white-space:nowrap; }
@keyframes rail { to { transform:translateX(-33.33%); } }

.signal-bar { border-bottom:1px solid var(--line-dark); background:var(--paper); color:var(--ink); }
.signal-grid { display:grid; grid-template-columns:repeat(4, 1fr); }
.signal-grid > div { position:relative; min-height:185px; padding:36px 30px; border-right:1px solid var(--line-dark); }
.signal-grid > div:first-child { border-left:1px solid var(--line-dark); }
.signal-number { display:block; margin-bottom:20px; font-family:var(--mono); font-size:10px; color:#8a8070; }
.signal-grid strong { font-family:var(--display); font-size:24px; }
.signal-grid p { max-width:220px; margin:8px 0 0; font-size:14px; color:#5f6466; }

.section { padding:130px 0; }
.section-heading { max-width:790px; margin-bottom:60px; }
.section-heading h2, .control-copy h2, .trust-copy h2, .final-cta h2 { margin-bottom:24px; font-size:clamp(44px, 6vw, 78px); letter-spacing:-.055em; }
.section-heading > p:last-child, .control-copy > p, .request-demo-copy > p:last-child { max-width:650px; color:#92a1ad; font-size:18px; }
.platform { background:#0b151f; }
.platform-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.feature { position:relative; min-height:520px; padding:34px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); overflow:hidden; display:flex; flex-direction:column; justify-content:flex-end; }
.feature-index { position:absolute; top:22px; left:24px; font-family:var(--mono); font-size:10px; color:#647886; }
.feature-content { position:relative; z-index:2; max-width:460px; }
.feature-label { margin-bottom:14px; font-family:var(--mono); font-size:10px; text-transform:uppercase; letter-spacing:.15em; color:var(--metal-light); }
.feature h3 { margin-bottom:16px; font-size:clamp(30px, 3vw, 42px); letter-spacing:-.04em; }
.feature-content > p:not(.feature-label) { color:#96a5b0; }
.feature a { display:inline-flex; align-items:center; gap:8px; margin-top:12px; color:#dfe5e8; font-size:14px; font-weight:700; }
.feature a span { color:var(--metal); transition:transform .2s ease; }
.feature a:hover span { transform:translateX(4px); }
.mini-vault { position:absolute; top:42px; right:34px; width:250px; height:250px; display:grid; place-items:center; }
.mini-ring { position:absolute; border:1px solid rgba(215,175,103,.28); border-radius:50%; }
.ring-a { inset:0; border-style:dashed; animation:spin 24s linear infinite; }
.ring-b { inset:36px; border-color:rgba(159,229,231,.18); animation:spin-reverse 17s linear infinite; }
.mini-lock { width:90px; height:90px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.17); border-radius:50%; background:radial-gradient(circle, rgba(215,175,103,.16), transparent 70%); font-family:var(--serif); font-size:20px; color:var(--metal-light); box-shadow:0 0 60px rgba(215,175,103,.1); }
.registry-lines { position:absolute; top:60px; left:85px; right:40px; display:grid; gap:19px; transform:skewY(-7deg); }
.registry-lines span { display:block; width:var(--w); height:16px; border-radius:2px; background:linear-gradient(90deg, rgba(159,229,231,.25), rgba(215,175,103,.09)); border-left:2px solid var(--ice); }
.registry-lines::after { content:""; position:absolute; inset:-38px -22px; background-image:linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px); background-size:24px 24px; z-index:-1; }
.permission-switches { position:absolute; top:52px; left:60px; right:45px; border:1px solid var(--line); border-radius:14px; background:rgba(255,255,255,.025); overflow:hidden; }
.permission-switches div { display:flex; justify-content:space-between; align-items:center; padding:16px; border-bottom:1px solid var(--line); color:#9eacb5; font-size:12px; }
.permission-switches div:last-child { border:0; }
.permission-switches i { position:relative; width:36px; height:20px; border-radius:999px; background:#263744; }
.permission-switches i::after { content:""; position:absolute; top:3px; left:3px; width:14px; height:14px; border-radius:50%; background:#71818d; }
.permission-switches i.on { background:rgba(112,215,162,.25); }
.permission-switches i.on::after { left:19px; background:var(--green); }
.ledger-chart { position:absolute; top:48px; left:60px; right:45px; height:215px; display:flex; align-items:flex-end; gap:12px; padding:20px; border-left:1px solid var(--line); border-bottom:1px solid var(--line); }
.ledger-chart span { flex:1; height:var(--h); background:linear-gradient(to top, rgba(215,175,103,.18), var(--metal)); border-radius:4px 4px 0 0; opacity:.75; }

.control { background:var(--metal); color:var(--ink); }
.control-layout { display:grid; grid-template-columns:.84fr 1.16fr; gap:80px; align-items:center; }
.control .eyebrow { color:#51452f; }
.control-copy > p { color:#433f38; }
.check-list { display:grid; gap:12px; padding:0; margin:30px 0 38px; list-style:none; }
.check-list li { display:flex; gap:11px; align-items:flex-start; color:#302d28; }
.check-list li::before { content:"↳"; font-family:var(--mono); font-weight:700; }
.policy-console { background:var(--paper); border:1px solid rgba(8,16,25,.2); border-radius:22px; padding:26px; box-shadow:0 35px 80px rgba(50,37,15,.22); }
.console-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:24px; border-bottom:1px solid var(--line-dark); }
.console-header > div { display:grid; gap:4px; }
.console-header strong { font-family:var(--display); font-size:26px; }
.console-kicker { color:#726b60; font-family:var(--mono); font-size:9px; letter-spacing:.1em; }
.status-dark { color:#30453a; }
.policy-row { display:grid; grid-template-columns:1fr auto; gap:18px; align-items:center; padding:20px 0; border-bottom:1px solid var(--line-dark); }
.policy-row > div span { display:block; margin-bottom:3px; color:#7b776f; font-size:11px; }
.policy-row > div strong { font-size:14px; }
.policy-chip { min-width:92px; padding:7px 10px; border-radius:999px; border:1px solid var(--line-dark); background:transparent; font-family:var(--mono); font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.policy-chip.approved { color:#225b3c; background:rgba(112,215,162,.22); border-color:rgba(34,91,60,.15); }
.policy-chip.denied { color:#7c2f29; background:rgba(240,141,131,.2); border-color:rgba(124,47,41,.15); }
.policy-chip.required { color:#365881; background:rgba(86,168,255,.15); border-color:rgba(54,88,129,.15); }
.console-audit { display:flex; align-items:center; gap:13px; margin-top:22px; padding:15px; border-radius:12px; background:#e7e2d8; }
.audit-icon { width:28px; height:28px; display:grid; place-items:center; border-radius:50%; background:var(--ink); color:var(--paper); }
.console-audit div { display:grid; gap:2px; }
.console-audit strong { font-size:12px; }
.console-audit div span { color:#6e6a62; font-size:10px; }

.exchange { background:var(--paper); color:var(--ink); }
.exchange .eyebrow { color:#76674d; }
.section-heading-split { max-width:none; display:grid; grid-template-columns:1.2fr .8fr; gap:80px; align-items:end; }
.section-heading-split h2 { margin-bottom:0; }
.section-heading-split > p { margin-bottom:4px; color:#60666a; }
.exchange-flow { display:grid; grid-template-columns:repeat(4, 1fr); border-top:1px solid var(--line-dark); border-left:1px solid var(--line-dark); }
.exchange-flow article { position:relative; min-height:350px; padding:26px; border-right:1px solid var(--line-dark); border-bottom:1px solid var(--line-dark); }
.exchange-flow article:not(:last-child)::after { content:"→"; position:absolute; top:79px; right:-13px; z-index:2; width:26px; height:26px; display:grid; place-items:center; border-radius:50%; background:var(--ink); color:var(--paper); font-size:12px; }
.flow-step { font-family:var(--mono); font-size:9px; letter-spacing:.1em; color:#78736a; }
.flow-icon { margin:40px 0 52px; font-family:var(--serif); font-size:52px; color:var(--metal); }
.exchange-flow h3 { margin-bottom:13px; font-size:26px; letter-spacing:-.035em; }
.exchange-flow p { color:#65696c; font-size:14px; }
.request-demo { margin-top:34px; padding:46px; display:grid; grid-template-columns:.9fr 1.1fr; gap:60px; align-items:center; background:var(--ink); color:var(--paper); border-radius:22px; overflow:hidden; position:relative; }
.request-demo::after { content:"TV"; position:absolute; right:-22px; bottom:-72px; font-family:var(--serif); font-size:220px; line-height:1; color:rgba(215,175,103,.035); pointer-events:none; }
.request-demo-copy h3 { max-width:540px; margin-bottom:16px; font-size:44px; letter-spacing:-.045em; }
.request-form { position:relative; z-index:2; display:grid; grid-template-columns:1fr auto; gap:14px; }
.request-form label { grid-column:1 / -1; display:grid; gap:8px; color:#8f9da8; font-family:var(--mono); font-size:9px; text-transform:uppercase; letter-spacing:.08em; }
select, input, textarea { width:100%; border:1px solid rgba(255,255,255,.2); border-radius:10px; background:#13212c; color:var(--paper); padding:13px 14px; outline:none; }
textarea { resize:vertical; }
select:focus, input:focus, textarea:focus { border-color:var(--metal); }
.license-result { display:flex; align-items:center; gap:12px; min-height:50px; padding:10px 14px; border:1px solid rgba(112,215,162,.24); border-radius:10px; background:rgba(112,215,162,.08); opacity:0; transform:translateY(5px); transition:.25s ease; }
.license-result.visible { opacity:1; transform:translateY(0); }
.result-icon { width:28px; height:28px; flex:0 0 auto; display:grid; place-items:center; border-radius:50%; background:var(--green); color:var(--ink); font-weight:800; }
.license-result strong { display:block; font-size:12px; }
.license-result p { margin:1px 0 0; color:#9badb5; font-size:10px; }
.license-result.denied { border-color:rgba(240,141,131,.3); background:rgba(240,141,131,.08); }
.license-result.denied .result-icon { background:var(--red); }
.license-result.review { border-color:rgba(86,168,255,.3); background:rgba(86,168,255,.08); }
.license-result.review .result-icon { background:var(--blue); }

.audiences { background:#0b151f; }
.audience-tabs { border:1px solid var(--line); border-radius:20px; overflow:hidden; }
.tab-list { display:grid; grid-template-columns:repeat(4, 1fr); border-bottom:1px solid var(--line); }
.tab-list button { border:0; border-right:1px solid var(--line); padding:18px; background:transparent; color:#718390; cursor:pointer; font-size:13px; }
.tab-list button:last-child { border-right:0; }
.tab-list button[aria-selected="true"] { background:rgba(215,175,103,.1); color:var(--metal-light); box-shadow:inset 0 -2px var(--metal); }
.tab-panel { min-height:510px; display:grid; grid-template-columns:.9fr 1.1fr; gap:60px; align-items:center; padding:62px; }
.tab-panel[hidden] { display:none; }
.panel-kicker { margin-bottom:20px; color:var(--metal-light); font-family:var(--mono); font-size:10px; letter-spacing:.13em; }
.panel-copy h3 { margin-bottom:22px; font-size:clamp(38px, 4vw, 58px); letter-spacing:-.05em; }
.panel-copy > p:not(.panel-kicker) { color:#91a2ae; font-size:17px; }
.panel-copy ul { display:grid; gap:8px; padding-left:18px; color:#c1cbd1; }
.dashboard-card { position:relative; min-height:360px; padding:28px; border:1px solid rgba(255,255,255,.17); border-radius:18px; background:linear-gradient(145deg, #172733, #101c26); box-shadow:0 35px 80px rgba(0,0,0,.22); overflow:hidden; }
.dash-top { display:flex; justify-content:space-between; align-items:center; padding-bottom:22px; border-bottom:1px solid var(--line); color:#aebbc3; font-size:12px; }
.dash-top i { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--metal); border-radius:50%; color:var(--metal-light); font-family:var(--serif); font-style:normal; font-size:10px; }
.dash-stat { display:flex; justify-content:space-between; align-items:end; padding:32px 0 24px; }
.dash-stat span { color:#718694; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.dash-stat strong { color:var(--green); font-family:var(--display); font-size:32px; }
.dash-bars { display:grid; gap:10px; }
.dash-bars span { width:var(--w); height:7px; background:linear-gradient(90deg, var(--metal), rgba(215,175,103,.12)); border-radius:99px; }
.dash-approval { position:absolute; left:28px; right:28px; bottom:26px; display:grid; grid-template-columns:1fr auto; gap:3px 15px; align-items:center; padding:15px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.04); }
.dash-approval span { font-size:9px; color:#6e8391; text-transform:uppercase; letter-spacing:.08em; }
.dash-approval strong { font-size:12px; }
.dash-approval button { grid-row:1 / 3; grid-column:2; border:0; border-radius:999px; background:var(--metal); padding:8px 13px; color:var(--ink); font-size:10px; font-weight:700; }
.role-map { min-height:390px; }
.role-map svg { position:absolute; inset:0; width:100%; height:100%; }
.role-map svg path { fill:none; stroke:rgba(215,175,103,.23); stroke-width:1.4; stroke-dasharray:5 6; }
.role-node { position:absolute; z-index:2; padding:11px 15px; border:1px solid var(--line); border-radius:999px; background:#172936; color:#c5d0d6; font-size:11px; }
.role-center { left:50%; top:50%; transform:translate(-50%, -50%); padding:24px; border-radius:50%; background:var(--metal); color:var(--ink); font-weight:700; }
.role-a { left:9%; top:13%; }.role-b { right:8%; top:13%; }.role-c { left:8%; bottom:13%; }.role-d { right:7%; bottom:13%; }
.buyer-card { display:grid; align-content:center; }
.buyer-line { display:flex; justify-content:space-between; gap:20px; padding:18px 0; border-bottom:1px solid var(--line); }
.buyer-line span { color:#718492; font-size:11px; }
.buyer-line strong { font-size:13px; }
.buyer-line strong.fit { color:var(--green); font-size:22px; }
.buyer-status { display:flex; align-items:center; gap:8px; margin-top:24px; color:#9db1ba; font-size:11px; }
.buyer-status i { width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 12px rgba(112,215,162,.65); }
.api-card { display:grid; align-content:center; }
.api-card pre { margin:0; white-space:pre-wrap; color:#aebdc6; font-family:var(--mono); font-size:13px; line-height:1.8; }
.api-card code > span:first-child { color:var(--metal-light); }
.api-card .api-ok { color:var(--green); }

.trust-section { padding:130px 0; background:#101e29; }
.trust-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; }
.trust-copy { position:sticky; top:130px; align-self:start; }
.trust-copy h2 { font-size:clamp(44px, 5vw, 68px); }
.trust-list article { display:grid; grid-template-columns:48px 1fr; gap:22px; padding:31px 0; border-top:1px solid var(--line); }
.trust-list article:last-child { border-bottom:1px solid var(--line); }
.trust-list article > span { color:var(--metal); font-family:var(--mono); font-size:10px; }
.trust-list h3 { margin-bottom:10px; font-size:27px; letter-spacing:-.03em; }
.trust-list p { margin:0; color:#93a3ae; }

.final-cta { padding:115px 0; background:var(--ink); position:relative; overflow:hidden; }
.final-cta::before { content:""; position:absolute; width:620px; height:620px; border:1px solid rgba(215,175,103,.13); border-radius:50%; left:-230px; top:-100px; box-shadow:0 0 0 90px rgba(215,175,103,.025), 0 0 0 180px rgba(215,175,103,.018); }
.final-cta-inner { position:relative; display:grid; grid-template-columns:1.15fr .85fr; align-items:end; gap:90px; }
.final-cta h2 { margin-bottom:0; font-size:clamp(50px, 7vw, 92px); }
.cta-card { padding:30px; border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.035); }
.cta-card p { color:#a3b0b8; font-size:18px; }
.cta-card .button { width:100%; margin:14px 0 18px; }
.cta-card > span { display:block; text-align:center; color:#6f8290; font-family:var(--mono); font-size:9px; text-transform:uppercase; letter-spacing:.09em; }

.site-footer { padding:70px 0 24px; border-top:1px solid var(--line); background:#060c12; }
.footer-grid { display:grid; grid-template-columns:1.6fr .7fr .7fr; gap:70px; padding-bottom:60px; }
.footer-brand { margin-bottom:18px; }
.footer-grid > div:first-child > p { max-width:430px; color:#738491; }
.footer-links { display:grid; align-content:start; gap:10px; }
.footer-links span { margin-bottom:8px; color:#6d808e; font-family:var(--mono); font-size:9px; text-transform:uppercase; letter-spacing:.12em; }
.footer-links a, .footer-links button { border:0; padding:0; background:transparent; color:#b4c0c7; text-align:left; cursor:pointer; font-size:13px; }
.footer-links a:hover, .footer-links button:hover { color:var(--metal-light); }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:22px; border-top:1px solid var(--line); color:#536774; font-family:var(--mono); font-size:9px; text-transform:uppercase; letter-spacing:.09em; }

.modal { width:min(620px, calc(100vw - 30px)); max-height:calc(100vh - 40px); padding:0; border:1px solid rgba(255,255,255,.18); border-radius:22px; background:#0f1c26; color:var(--paper); box-shadow:0 40px 120px rgba(0,0,0,.6); overflow:auto; }
.modal::backdrop { background:rgba(3,8,12,.76); backdrop-filter:blur(8px); }
.modal-card { position:relative; padding:44px; }
.modal-card-small { max-width:520px; }
.modal-card h2 { margin-bottom:15px; font-size:46px; letter-spacing:-.05em; }
.modal-card > p:not(.eyebrow) { color:#94a4ae; }
.modal-close { position:absolute; right:19px; top:17px; width:36px; height:36px; border:1px solid var(--line); border-radius:50%; background:transparent; color:#a8b4bb; cursor:pointer; font-size:22px; line-height:1; }
.modal form { display:grid; gap:17px; margin-top:28px; }
.modal label { display:grid; gap:7px; color:#a5b2ba; font-size:12px; }
.modal .button { width:100%; margin-top:4px; }
.toast { position:fixed; z-index:200; right:22px; bottom:22px; display:flex; align-items:center; gap:13px; width:min(380px, calc(100vw - 44px)); padding:16px; border:1px solid rgba(112,215,162,.3); border-radius:14px; background:#12231e; box-shadow:0 20px 60px rgba(0,0,0,.4); opacity:0; transform:translateY(24px); pointer-events:none; transition:.3s ease; }
.toast.visible { opacity:1; transform:translateY(0); }
.toast > span { width:30px; height:30px; flex:0 0 auto; display:grid; place-items:center; border-radius:50%; background:var(--green); color:var(--ink); font-weight:800; }
.toast strong { font-size:12px; }.toast p { margin:2px 0 0; color:#91a49d; font-size:10px; }

.reveal { opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity:1; transform:none; }

@media (max-width: 1050px) {
  .hero-grid { grid-template-columns:1fr; padding-top:100px; }
  .hero-copy { max-width:850px; }
  .vault-stage { min-height:650px; }
  .note-one { left:7%; }.note-two { right:7%; }
  .control-layout, .trust-grid, .final-cta-inner { grid-template-columns:1fr; gap:55px; }
  .trust-copy { position:static; }
  .section-heading-split { gap:45px; }
  .tab-panel { padding:44px; gap:40px; }
}

@media (max-width: 820px) {
  :root { --shell: min(100% - 28px, 720px); }
  .desktop-nav, .desktop-only { display:none; }
  .menu-button { display:block; }
  .mobile-nav { position:absolute; top:78px; left:14px; right:14px; display:grid; gap:2px; padding:10px; border:1px solid var(--line); border-radius:14px; background:#0e1a24; box-shadow:var(--shadow); opacity:0; transform:translateY(-10px); pointer-events:none; transition:.2s ease; }
  .mobile-nav.open { opacity:1; transform:none; pointer-events:auto; }
  .mobile-nav a, .mobile-nav button { padding:14px; border-radius:8px; text-align:left; }
  .mobile-nav a:hover, .mobile-nav button:hover { background:rgba(255,255,255,.05); }
  .hero-grid { min-height:auto; gap:35px; padding-block:80px 70px; }
  .vault-stage { min-height:580px; transform:scale(.92); margin-inline:-25px; }
  .signal-grid { grid-template-columns:1fr 1fr; }
  .signal-grid > div:nth-child(odd) { border-left:1px solid var(--line-dark); }
  .section { padding:92px 0; }
  .platform-grid { grid-template-columns:1fr; }
  .feature { min-height:500px; }
  .section-heading-split, .request-demo, .tab-panel, .footer-grid { grid-template-columns:1fr; }
  .exchange-flow { grid-template-columns:1fr 1fr; }
  .exchange-flow article:nth-child(2)::after { display:none; }
  .exchange-flow article { min-height:310px; }
  .request-demo { gap:35px; padding:35px; }
  .tab-panel { min-height:auto; }
  .footer-grid { gap:38px; }
}

@media (max-width: 560px) {
  .header-inner { height:68px; }
  .site-header .brand span { font-size:17px; }
  .header-actions .button-small { display:none; }
  .mobile-nav { top:68px; }
  h1 { font-size:clamp(49px, 15vw, 70px); }
  .hero-lede { font-size:17px; }
  .hero-actions .button { width:100%; }
  .vault-stage { min-height:500px; transform:scale(.75); margin:-35px -70px -55px; }
  .floating-note { display:none; }
  .signal-grid { grid-template-columns:1fr; }
  .signal-grid > div, .signal-grid > div:first-child, .signal-grid > div:nth-child(odd) { border-left:1px solid var(--line-dark); }
  .signal-grid > div { min-height:150px; }
  .section-heading h2, .control-copy h2, .trust-copy h2, .final-cta h2 { font-size:42px; }
  .feature { min-height:470px; padding:26px; }
  .mini-vault { transform:scale(.82); transform-origin:top right; }
  .registry-lines { left:50px; }
  .permission-switches, .ledger-chart { left:35px; right:30px; }
  .control-layout { gap:42px; }
  .policy-console { padding:18px; }
  .console-header { align-items:flex-start; }
  .console-header strong { font-size:21px; }
  .policy-row { grid-template-columns:1fr; gap:10px; }
  .policy-chip { width:max-content; }
  .section-heading-split { gap:10px; }
  .exchange-flow { grid-template-columns:1fr; }
  .exchange-flow article:not(:last-child)::after { display:none; }
  .exchange-flow article { min-height:270px; }
  .flow-icon { margin:25px 0 35px; }
  .request-demo { padding:28px 22px; }
  .request-demo-copy h3 { font-size:36px; }
  .request-form { grid-template-columns:1fr; }
  .request-form label, .license-result { grid-column:1; }
  .tab-list { grid-template-columns:1fr 1fr; }
  .tab-list button:nth-child(2) { border-right:0; }
  .tab-list button:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .tab-panel { padding:28px 20px; }
  .panel-copy h3 { font-size:38px; }
  .dashboard-card { min-height:330px; padding:20px; }
  .dash-approval { left:20px; right:20px; }
  .trust-list article { grid-template-columns:34px 1fr; gap:13px; }
  .final-cta { padding:90px 0; }
  .cta-card { padding:24px; }
  .footer-bottom { flex-direction:column; }
  .modal-card { padding:38px 22px 24px; }
  .modal-card h2 { font-size:38px; }
}

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