* { box-sizing: border-box; }
html { scroll-behavior: smooth; scrollbar-gutter: stable; }
section[id] { scroll-margin-top: 92px; }
body { margin: 0; background: var(--surface); color: var(--primary); font-family: Manrope, ui-sans-serif, system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
.skip-link { position: fixed; z-index: 120; top: 12px; left: 12px; min-height: 44px; padding: 0 16px; border: 1px solid var(--iris-strong); border-radius: 9px; display: inline-flex; align-items: center; background: var(--surface-2); color: var(--primary); font: 650 12px/1 Manrope, sans-serif; transform: translateY(-150%); transition: transform .18s ease; }
.skip-link:focus { transform: translateY(0); }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
.site { color: var(--primary); min-height: 100vh; position: relative; transition: background-color .25s ease, color .25s ease; overflow-x: clip; overflow-y: visible; }
.site :where(.site-header, .ticker, .section, .agent-copy, .conversation, .principle, .concept, .suggest, .custom-panel, .custom-step, .closing, .footer, .modal, .catalog-card, .catalog-mini, .catalog-release, .catalog-research-shell, .catalog-custom-row, input, select, textarea) { transition: background-color .24s ease, border-color .24s ease, color .24s ease, box-shadow .24s ease; }
.container { width: min(1260px, calc(100% - 48px)); margin-inline: auto; }
.site-header { height: 72px; position: sticky; top: 0; z-index: 40; border-bottom: 1px solid color-mix(in srgb, var(--line) 82%, transparent); background: color-mix(in srgb, var(--surface) 91%, transparent); backdrop-filter: blur(18px) saturate(118%); }
.header-inner { height: 100%; display: flex; align-items: center; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 12px; font: 500 20px/1 Fraunces, Georgia, serif; letter-spacing: -.015em; }
.brand em { color: var(--iris); font-weight: 400; }
.brand-mark { width: 30px; height: 30px; }
.nav { display: flex; gap: 26px; margin-left: auto; color: var(--muted); font: 500 10px/1 JetBrains Mono, monospace; letter-spacing: .075em; text-transform: uppercase; }
.nav a { position: relative; padding: 11px 0; transition: color .2s ease; }
.nav a::after { content: ''; position: absolute; left: 0; right: 100%; bottom: 4px; height: 1px; background: var(--iris); transition: right .22s cubic-bezier(.2,.7,.2,1); }
.nav a:hover { color: var(--primary); }
.nav a:hover::after, .nav a:focus-visible::after { right: 0; }
.header-actions { display: flex; align-items: center; gap: 10px; }
.icon-button { width: 44px; height: 44px; border-radius: 50%; border: 1px solid color-mix(in srgb, var(--line) 86%, transparent); display: grid; place-items: center; background: color-mix(in srgb, var(--surface-2) 64%, transparent); color: var(--primary); cursor: pointer; transition: background-color .2s ease, border-color .2s ease; }
.icon-button:hover { background: var(--surface-3); border-color: color-mix(in srgb, var(--iris-strong) 32%, var(--line)); }
.start { min-height: 44px; border: 1px solid color-mix(in srgb, var(--action) 72%, white); border-radius: 10px; padding: 0 20px; background: var(--action); color: var(--on-action); box-shadow: 0 8px 22px color-mix(in srgb, var(--action) 18%, transparent); cursor: pointer; font: 650 12px/1 Manrope, sans-serif; }
a.start { display: inline-flex; align-items: center; justify-content: center; }
.sun, .moon { width: 16px; height: 16px; }
:root[data-theme="dark"] .moon, :root[data-theme="light"] .sun { display: none; }
.mobile-menu { display: none; }
.mobile-panel { display: none; }
.mobile-theme-action { min-height: 48px; width: 100%; border: 0; padding: 0 8px; display: flex; align-items: center; justify-content: space-between; gap: 16px; background: transparent; color: var(--muted); cursor: pointer; text-align: left; }
.mobile-theme-action span { font-size: 13px; }
.mobile-theme-action strong { color: var(--primary); font: 600 10px/1 JetBrains Mono, monospace; letter-spacing: .06em; text-transform: uppercase; }
.mobile-menu .menu-x { display: none; }
.mobile-menu[aria-expanded="true"] .menu-lines { display: none; }
.mobile-menu[aria-expanded="true"] .menu-x { display: block; }
:root[data-theme="light"] .site-header { background: color-mix(in srgb, #fbfaf7 92%, transparent); box-shadow: 0 1px 0 rgba(23,23,32,.02), 0 10px 30px rgba(42,36,73,.04); }
:root[data-theme="light"] .hero::before { background: radial-gradient(50% 58% at 78% 42%, rgba(103,87,229,.12), transparent 68%), radial-gradient(34% 40% at 6% 98%, rgba(228,185,92,.18), transparent 76%), linear-gradient(115deg, rgba(251,250,247,.48), transparent 52%); }
:root[data-theme="light"] .concept,
:root[data-theme="light"] .suggest { background: #fbfaf7; box-shadow: 0 10px 34px rgba(40,34,72,.045); }
:root[data-theme="light"] .conversation { background: #fdfcf9; }
:root[data-theme="light"] .agent-bubble { background: rgba(103,87,229,.095); }
:root[data-theme="light"] .agent-copy { background: #fbfaf7; box-shadow: -14px 24px 54px rgba(40,34,72,.07); }
:root[data-theme="light"] .conversation { box-shadow: 14px 24px 54px rgba(40,34,72,.07); }
:root[data-theme="light"] :where(.principle, .custom-panel, .catalog-release, .catalog-research-shell, .catalog-custom-row, .modal) { background-color: #fbfaf7; }
:root[data-theme="light"] .closing { background: radial-gradient(circle at 50% 45%, rgba(251,250,247,.96), rgba(235,234,240,.74) 58%, rgba(103,87,229,.045)); }

.hero { min-height: 660px; position: relative; border-bottom: 1px solid var(--line); display: flex; align-items: center; overflow: hidden; }
.hero::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(48% 54% at 76% 42%, var(--iris-wash), transparent 70%), radial-gradient(25% 30% at 10% 94%, var(--gold-wash), transparent 78%); }
.hero-copy { width: min(700px, 58%); position: relative; z-index: 4; padding: 82px 0 92px; }
.availability { display: inline-flex; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 999px; padding: 10px 14px; color: var(--muted); background: color-mix(in srgb, var(--surface-2) 72%, transparent); font: 600 11px/1 JetBrains Mono, monospace; letter-spacing: .08em; text-transform: uppercase; }
.availability::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 4px var(--gold-wash); animation: pulse 2.4s ease-in-out infinite; }
.hero h1 { margin: 26px 0 23px; max-width: 11.4ch; font: 500 clamp(58px, 6vw, 92px)/.95 Fraunces, Georgia, serif; letter-spacing: -.039em; text-wrap: balance; }
.hero h1 em { color: var(--iris); font-weight: 400; }
.hero-copy > p { max-width: 57ch; margin: 0; color: var(--muted); font-size: 16px; line-height: 1.68; }
.hero-actions { margin-top: 32px; display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.button-dark { min-height: 48px; padding: 0 21px; border: 1px solid var(--action); border-radius: 12px; background: var(--action); color: var(--on-action); box-shadow: 0 12px 32px color-mix(in srgb, var(--action) 25%, transparent); cursor: pointer; font: 650 13px/1 Manrope, sans-serif; display: inline-flex; align-items: center; justify-content: center; }
.text-link { border: 0; border-bottom: 1px solid var(--muted-2); padding: 9px 0 5px; background: transparent; color: var(--muted); cursor: pointer; font: 650 12px/1 Manrope, sans-serif; }
.hero-signals { margin-top: 30px; display: flex; gap: 10px; flex-wrap: wrap; }
.hero-signal { min-height: 34px; display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--line); border-radius: 9px; padding: 0 11px; color: var(--muted); background: color-mix(in srgb, var(--surface-2) 76%, transparent); font: 500 11px/1 Manrope, sans-serif; }
.hero-signal::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: var(--iris); }
.field { width: min(49vw, 650px); aspect-ratio: 1; position: absolute; right: 1.5%; top: 49%; transform: translateY(-50%); pointer-events: none; }
.field::after { content: ''; position: absolute; inset: 28%; border-radius: 50%; background: radial-gradient(circle, color-mix(in srgb, var(--iris-strong) 15%, transparent), transparent 70%); filter: blur(18px); }
.field-atmosphere { position: absolute; z-index: 0; inset: 5%; border-radius: 50%; background: radial-gradient(circle at 54% 46%, color-mix(in srgb, var(--iris-strong) 11%, transparent), transparent 38%), radial-gradient(circle at 66% 62%, color-mix(in srgb, var(--gold) 8%, transparent), transparent 46%); filter: blur(6px); }
.spectral-wash { position: absolute; z-index: 1; inset: 14%; border-radius: 50%; background: conic-gradient(from 205deg, transparent 0 20%, color-mix(in srgb, var(--iris-strong) 12%, transparent) 31%, transparent 43% 68%, color-mix(in srgb, var(--gold) 8%, transparent) 79%, transparent 91%); filter: blur(24px); opacity: .62; animation: spectralDrift 24s ease-in-out infinite alternate; }
.ring { position: absolute; z-index: 1; border: 1px solid color-mix(in srgb, var(--iris-strong) 20%, transparent); border-radius: 50%; }
.ring.one { inset: 2%; }
.ring.one::after { content: ''; position: absolute; inset: -2px; border-radius: 50%; background: repeating-conic-gradient(from 3deg, color-mix(in srgb, var(--iris-strong) 34%, transparent) 0 .55deg, transparent .55deg 14deg); -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 2px)); mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 2px)); opacity: .35; }
.ring.two { inset: 14%; border-style: dashed; animation: rotate 72s linear infinite reverse; }
.ring.three { inset: 30%; border-color: color-mix(in srgb, var(--gold) 20%, transparent); }
.orbit-fragment { position: absolute; z-index: 2; width: 22px; height: 22px; clip-path: polygon(50% 0, 100% 100%, 0 73%); background: linear-gradient(145deg, color-mix(in srgb, var(--iris-strong) 86%, white 8%), color-mix(in srgb, var(--iris-strong) 28%, transparent)); filter: drop-shadow(0 0 9px color-mix(in srgb, var(--iris-strong) 35%, transparent)); opacity: .36; }
.orbit-fragment.f1 { right: 9%; top: 28%; animation: fragmentOne 20s ease-in-out infinite; }
.orbit-fragment.f2 { left: 15%; bottom: 19%; width: 17px; height: 17px; background: linear-gradient(145deg, color-mix(in srgb, var(--gold) 84%, white 7%), color-mix(in srgb, var(--gold) 24%, transparent)); filter: drop-shadow(0 0 8px color-mix(in srgb, var(--gold) 30%, transparent)); opacity: .3; animation: fragmentTwo 27s ease-in-out infinite; }
:root[data-theme="light"] .field .ring { opacity: .38; }
:root[data-theme="light"] .field .signal-nodes { filter: saturate(1.08) contrast(1.06); }
:root[data-theme="light"] .field .signal-beams { opacity: .78; }
:root[data-theme="light"] .field .orbit-fragment { opacity: .3; }
:root[data-theme="light"] .signal-beam::before { background: linear-gradient(90deg, color-mix(in srgb, var(--beam-color) 94%, transparent), color-mix(in srgb, var(--beam-color) 58%, transparent) 76%, transparent); filter: drop-shadow(0 0 2px var(--beam-color)); }
:root[data-theme="light"] .signal-node { box-shadow: 0 0 5px var(--signal-iris), 0 0 0 5px color-mix(in srgb, var(--signal-iris) 11%, transparent); }
:root[data-theme="light"] .signal-node.gold { box-shadow: 0 0 5px var(--signal-gold), 0 0 0 5px color-mix(in srgb, var(--signal-gold) 11%, transparent); }
.signal-nodes { position: absolute; z-index: 3; inset: 0; pointer-events: none; }
.signal-beams { position: absolute; z-index: 2; inset: 0; pointer-events: none; }
.signal-beam { --beam-color: var(--beam-iris); position: absolute; left: 50%; top: 50%; width: var(--beam-length); height: 1px; transform: rotate(var(--beam-angle)); transform-origin: left center; }
.signal-beam::before { content: ''; position: absolute; inset: 0; border-radius: 999px; background: linear-gradient(90deg, color-mix(in srgb, var(--beam-color) 88%, transparent), color-mix(in srgb, var(--beam-color) 46%, transparent) 74%, transparent); filter: drop-shadow(0 0 5px var(--beam-color)); opacity: 0; transform: scaleX(0); transform-origin: right center; animation: beamSignal var(--beam-duration) cubic-bezier(.22,.68,.18,1) var(--beam-delay) infinite; }
.signal-beam.gold { --beam-color: var(--beam-gold); }
.signal-beam.b1 { --beam-length: 47%; --beam-angle: -116.6deg; --beam-duration: 4.8s; --beam-delay: -1.1s; }
.signal-beam.b2 { --beam-length: 45.3%; --beam-angle: -46.8deg; --beam-duration: 5.4s; --beam-delay: -3.7s; }
.signal-beam.b3 { --beam-length: 46%; --beam-angle: -2.5deg; --beam-duration: 6.1s; --beam-delay: -5.2s; }
.signal-beam.b4 { --beam-length: 49.2%; --beam-angle: 60.8deg; --beam-duration: 6.8s; --beam-delay: -2.4s; }
.signal-beam.b5 { --beam-length: 51.9%; --beam-angle: 117.6deg; --beam-duration: 5s; --beam-delay: -4.1s; }
.signal-beam.b6 { --beam-length: 46.4%; --beam-angle: 172.6deg; --beam-duration: 7.2s; --beam-delay: -6.3s; }
.signal-beam.b7 { --beam-length: 35.2%; --beam-angle: -96.5deg; --beam-duration: 5.8s; --beam-delay: -2.8s; }
.signal-beam.b8 { --beam-length: 50.1%; --beam-angle: 28.6deg; --beam-duration: 6.5s; --beam-delay: -5.7s; }
.signal-beam.b9 { --beam-length: 47.5%; --beam-angle: -75.4deg; --beam-duration: 4.9s; --beam-delay: -2s; }
.signal-beam.b10 { --beam-length: 44.7%; --beam-angle: -146deg; --beam-duration: 6.9s; --beam-delay: -4.9s; }
.signal-beam.b11 { --beam-length: 49.5%; --beam-angle: 136.6deg; --beam-duration: 5.6s; --beam-delay: -.5s; }
.signal-beam.b12 { --beam-length: 36.7%; --beam-angle: 79deg; --beam-duration: 6.3s; --beam-delay: -3.3s; }
.signal-node { --node-duration: 4.2s; --node-delay: 0s; position: absolute; width: 7px; height: 7px; border-radius: 50%; background: var(--signal-iris); box-shadow: 0 0 8px var(--signal-iris), 0 0 0 7px color-mix(in srgb, var(--signal-iris) 13%, transparent); animation: signalPulse var(--node-duration) ease-in-out var(--node-delay) infinite; }
.signal-node::after { content: ''; position: absolute; inset: -9px; border: 1px solid color-mix(in srgb, var(--signal-iris) 35%, transparent); border-radius: 50%; opacity: 0; animation: signalHalo var(--node-duration) ease-out var(--node-delay) infinite; }
.signal-node.gold { background: var(--signal-gold); box-shadow: 0 0 8px var(--signal-gold), 0 0 0 7px color-mix(in srgb, var(--signal-gold) 13%, transparent); }
.signal-node.gold::after { border-color: color-mix(in srgb, var(--signal-gold) 38%, transparent); }
.signal-node.s1 { left: 29%; top: 8%; --node-duration: 3.2s; --node-delay: -.8s; }
.signal-node.s2 { right: 19%; top: 17%; --node-duration: 4.1s; --node-delay: -2.7s; }
.signal-node.s3 { right: 4%; top: 48%; --node-duration: 3.6s; --node-delay: -1.9s; }
.signal-node.s4 { right: 26%; bottom: 7%; --node-duration: 4.8s; --node-delay: -3.6s; }
.signal-node.s5 { left: 26%; bottom: 4%; --node-duration: 3.9s; --node-delay: -1.4s; }
.signal-node.s6 { left: 4%; top: 56%; --node-duration: 5s; --node-delay: -4.2s; }
.signal-node.s7 { left: 46%; top: 15%; --node-duration: 3.4s; --node-delay: -2.2s; }
.signal-node.s8 { left: 94%; top: 74%; --node-duration: 4.6s; --node-delay: -3.1s; }
.signal-node.s9 { left: 62%; top: 4%; --node-duration: 3.3s; --node-delay: -1.2s; }
.signal-node.s10 { left: 13%; top: 25%; --node-duration: 4.7s; --node-delay: -3.8s; }
.signal-node.s11 { left: 14%; top: 84%; --node-duration: 3.8s; --node-delay: -.4s; }
.signal-node.s12 { left: 57%; top: 86%; --node-duration: 4.4s; --node-delay: -2.5s; }
.mark-stage { position: absolute; z-index: 4; inset: 28%; display: grid; place-items: center; }
.hero-mark { display: block; width: 100%; height: 100%; transform-box: fill-box; transform-origin: 50% 50%; animation: apertureRotate 55s linear infinite; will-change: transform; }

.ticker { border-bottom: 1px solid var(--line); background: var(--surface-2); }
.proof-track { min-height: 62px; display: grid; grid-template-columns: 1.25fr repeat(4, 1fr); align-items: center; gap: 0; }
.proof-lead { color: var(--primary); font: 650 12px/1.3 Manrope, sans-serif; }
.proof-item { min-height: 28px; display: flex; align-items: center; gap: 9px; padding-left: 20px; border-left: 1px solid var(--line); color: var(--muted); font: 500 9px/1.25 JetBrains Mono, monospace; letter-spacing: .07em; text-transform: uppercase; }
.proof-item::before { content: ''; width: 5px; height: 5px; flex: 0 0 auto; border-radius: 50%; background: var(--gold); }

.section { padding: 96px 0; border-bottom: 1px solid var(--line); position: relative; }
.section-label { display: block; color: var(--iris); font: 600 11px/1 JetBrains Mono, monospace; letter-spacing: .11em; text-transform: uppercase; }
.section-title { margin: 19px 0 0; max-width: 17ch; font: 500 clamp(39px, 4.2vw, 62px)/1.02 Fraunces, Georgia, serif; letter-spacing: -.028em; }
.section-intro { max-width: 58ch; margin: 20px 0 0; color: var(--muted); font-size: 15px; line-height: 1.7; }

.available-agent { padding-block: 112px; background: var(--surface-2); }
#approach { padding-block: 86px; }
.approach-head { display: block; }
.approach-head .section-intro { margin: 0 0 4px; }
#custom { padding-block: 108px; }
.custom-head { display: block; }
.custom-head .section-intro { margin: 0 0 4px; }
.agent-layout { margin-top: 48px; display: grid; grid-template-columns: .92fr 1.08fr; column-gap: 0; row-gap: 16px; align-items: stretch; }
.agent-copy { border: 1px solid var(--line); border-right: 0; border-radius: 18px 0 0 18px; padding: 38px; background: var(--surface); box-shadow: -18px 26px 64px rgba(0,0,0,.18); }
.agent-topline { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.status { border-radius: 999px; padding: 7px 9px; color: var(--gold); background: var(--gold-wash); font: 600 10px/1 JetBrains Mono, monospace; letter-spacing: .07em; text-transform: uppercase; }
.agent-copy h3 { margin: 30px 0 14px; font: 650 31px/1.08 Manrope, sans-serif; letter-spacing: -.03em; }
.agent-copy p { margin: 0; color: var(--muted); font-size: 15px; line-height: 1.68; }
.capabilities { margin: 27px 0 30px; display: grid; gap: 1px; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: var(--line); }
.cap { display: grid; grid-template-columns: 118px 1fr; gap: 16px; padding: 15px 16px; background: var(--surface-2); font-size: 13px; }
.cap b { color: var(--iris); font: 600 10px/1.4 JetBrains Mono, monospace; letter-spacing: .06em; text-transform: uppercase; }
.cap span { color: var(--muted); }
.agent-cta { width: 100%; min-height: 46px; border: 0; border-radius: 11px; background: var(--action); color: var(--on-action); cursor: pointer; font: 650 12px/1 Manrope, sans-serif; }
a.agent-cta { display: inline-flex; align-items: center; justify-content: center; }
.fit-note { margin: -7px 0 22px; display: flex; align-items: flex-start; gap: 10px; color: var(--muted); font-size: 12px; line-height: 1.55; }
.fit-note::before { content: ''; width: 7px; height: 7px; flex: 0 0 auto; margin-top: 6px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 4px var(--gold-wash); }
.conversation { position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 0 18px 18px 0; background: var(--surface); box-shadow: 18px 26px 64px rgba(0,0,0,.18); }
.conversation::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 95% 5%, var(--iris-wash), transparent 38%); pointer-events: none; }
.convo-signal { position: absolute; z-index: 1; width: 96px; height: 1px; right: 22px; top: 71px; background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--signal-iris) 58%, transparent)); opacity: .38; animation: traceSignal 7.4s ease-in-out infinite; pointer-events: none; }
.convo-signal::after { content: ''; position: absolute; width: 5px; height: 5px; right: -2px; top: -2px; border-radius: 50%; background: var(--signal-iris); box-shadow: 0 0 8px var(--signal-iris), 0 0 0 5px color-mix(in srgb, var(--signal-iris) 10%, transparent); }
.convo-head { position: relative; display: flex; justify-content: space-between; align-items: center; padding: 16px 20px; border-bottom: 1px solid var(--line); color: var(--muted); font: 500 10px/1 JetBrains Mono, monospace; letter-spacing: .08em; text-transform: uppercase; }
.live-dot { display: inline-flex; align-items: center; gap: 8px; }
.live-dot::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--iris-strong); }
.messages { position: relative; padding: 32px 28px; display: flex; flex-direction: column; gap: 15px; }
.bubble { max-width: 82%; padding: 15px 17px; border: 1px solid var(--line); font-size: 13px; line-height: 1.55; }
.customer { align-self: flex-start; border-radius: 13px 13px 13px 4px; background: var(--surface-3); color: var(--primary); }
.agent-bubble { align-self: flex-end; border-radius: 13px 13px 4px 13px; background: var(--iris-wash); border-color: color-mix(in srgb, var(--iris-strong) 28%, var(--line)); color: var(--primary); }
.agent-meta { align-self: flex-end; margin-top: -8px; color: var(--muted); font: 500 10px/1 JetBrains Mono, monospace; letter-spacing: .06em; text-transform: uppercase; }
.event { align-self: center; color: var(--gold); font: 500 10px/1 JetBrains Mono, monospace; letter-spacing: .06em; text-transform: uppercase; }
.human { margin-top: 13px; border: 1px solid var(--line); border-radius: 11px; padding: 14px; display: flex; justify-content: space-between; gap: 20px; color: var(--muted); background: var(--surface-2); font-size: 12px; }
.example-note { position: relative; padding: 0 28px 22px; color: var(--muted-2); font-size: 11px; line-height: 1.5; }
.launch-flow { grid-column: 1 / -1; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; background: var(--line); display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; }
.launch-step { min-height: 132px; padding: 22px; background: var(--surface); }
.launch-step b { color: var(--iris); font: 600 10px/1 JetBrains Mono, monospace; letter-spacing: .07em; text-transform: uppercase; }
.launch-step strong { display: block; margin: 24px 0 7px; font-size: 14px; }
.launch-step span { color: var(--muted); font-size: 12px; line-height: 1.55; }

.principles-grid { margin-top: 50px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; background: var(--line); }
.principle { min-height: 220px; padding: 25px; background: var(--surface); position: relative; }
.principle-num { color: var(--gold); font: 600 10px/1 JetBrains Mono, monospace; letter-spacing: .1em; text-transform: uppercase; }
.principle h3 { margin: 52px 0 10px; font: 650 20px/1.15 Manrope, sans-serif; letter-spacing: -.02em; }
.principle p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.62; }

.lab { padding-block: 90px; background: var(--surface-2); overflow: hidden; }
.lab::before { content: ''; position: absolute; width: 620px; height: 620px; right: -290px; top: -180px; border: 1px solid var(--line); border-radius: 50%; box-shadow: inset 0 0 0 80px transparent, 0 0 0 80px color-mix(in srgb, var(--line) 28%, transparent), 0 0 0 160px color-mix(in srgb, var(--line) 13%, transparent); opacity: .7; }
.lab-head { display: block; position: relative; z-index: 2; }
.disclaimer { max-width: 430px; border-left: 2px solid var(--gold); padding: 4px 0 4px 15px; color: var(--muted); font-size: 13px; line-height: 1.58; }
.concepts { margin-top: 42px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; position: relative; z-index: 2; }
.concept { min-height: 318px; border: 1px solid var(--line); border-radius: 16px; padding: 28px; background: color-mix(in srgb, var(--surface) 97%, var(--surface-2)); display: flex; flex-direction: column; position: relative; overflow: hidden; transition: transform .24s ease, border-color .24s ease, background .24s ease; }
.concept::after { content: ''; position: absolute; inset: 0 auto 0 0; width: 2px; background: linear-gradient(180deg, var(--iris-strong), transparent 78%); opacity: .72; }
.concept:hover, .concept:focus-within { transform: translateY(-3px); border-color: color-mix(in srgb, var(--iris-strong) 38%, var(--line)); background: color-mix(in srgb, var(--surface) 92%, var(--iris-wash)); }
.concept-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.concept-mark { width: 44px; height: 44px; border: 1px solid color-mix(in srgb, var(--iris-strong) 34%, var(--line)); border-radius: 12px; display: grid; place-items: center; background: color-mix(in srgb, var(--iris-wash) 72%, var(--surface)); color: var(--iris); }
.concept-mark svg, .catalog-icon svg { width: 21px; height: 21px; display: block; }
.concept-id { color: var(--muted-2); font: 600 10px/1 JetBrains Mono, monospace; letter-spacing: .1em; text-transform: uppercase; }
.concept h3 { margin: 27px 0 11px; font: 650 22px/1.12 Manrope, sans-serif; letter-spacing: -.025em; }
.concept > p { max-width: 52ch; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.65; }
.possibilities { margin: 20px 0 22px; display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 18px; }
.possibilities span { min-height: 34px; display: flex; align-items: center; border-top: 1px solid var(--line); color: var(--muted); font: 550 11px/1.25 Manrope, sans-serif; }
.research-button { width: fit-content; margin-top: auto; min-height: 44px; border: 1px solid color-mix(in srgb, var(--iris-strong) 32%, var(--line)); border-radius: 10px; padding: 0 15px; background: color-mix(in srgb, var(--iris-wash) 58%, transparent); color: var(--primary); cursor: pointer; font: 650 12px/1 Manrope, sans-serif; }
.concept-note { margin: 10px 0 0; color: var(--muted-2); font-size: 11px; line-height: 1.45; }
.suggest { grid-column: 1 / -1; min-height: 0; border: 1px solid color-mix(in srgb, var(--iris-strong) 28%, var(--line)); border-radius: 16px; padding: 24px 28px; background: color-mix(in srgb, var(--surface) 96%, var(--iris-wash)); display: grid; grid-template-columns: 48px 1fr auto; gap: 18px; align-items: center; position: relative; overflow: hidden; }
.suggest::before { content: ''; position: absolute; width: 220px; height: 220px; right: -100px; top: -120px; border: 1px solid color-mix(in srgb, var(--iris-strong) 18%, transparent); border-radius: 50%; }
.suggest .concept-mark { position: relative; z-index: 1; }
.suggest-copy { position: relative; z-index: 1; }
.suggest h3 { margin: 0 0 5px; font: 650 17px/1.2 Manrope, sans-serif; letter-spacing: -.015em; }
.suggest p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.58; }
.suggest .research-button { position: relative; z-index: 1; margin: 0; white-space: nowrap; }

.custom-panel { margin-top: 50px; border: 1px solid var(--line); border-radius: 20px; overflow: hidden; display: grid; grid-template-columns: .82fr 1.18fr; background: var(--surface-2); box-shadow: var(--shadow-soft); }
.custom-copy { padding: 42px; }
.custom-kicker { margin-bottom: 30px; display: inline-flex; align-items: center; gap: 10px; color: var(--iris); font: 600 10px/1 JetBrains Mono, monospace; letter-spacing: .09em; text-transform: uppercase; }
.custom-kicker svg { width: 19px; height: 19px; }
.custom-copy h3 { margin: 0 0 15px; font: 650 30px/1.1 Manrope, sans-serif; letter-spacing: -.03em; }
.custom-copy p { max-width: 53ch; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.68; }
.custom-copy button { margin-top: 27px; }
.custom-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); border-left: 1px solid var(--line); }
.custom-step { min-height: 100%; padding: 26px 22px; background: var(--surface); }
.custom-step b { color: var(--iris); font: 600 11px/1 JetBrains Mono, monospace; letter-spacing: .08em; }
.custom-step strong { display: block; margin: 24px 0 7px; font-size: 14px; }
.custom-step span { color: var(--muted); font-size: 12px; line-height: 1.55; }

.closing { padding: 110px 0; text-align: center; position: relative; overflow: hidden; }
.closing::before { content: ''; position: absolute; width: 450px; height: 450px; left: 50%; top: 50%; transform: translate(-50%,-50%); border: 1px solid var(--line); border-radius: 50%; box-shadow: 0 0 0 70px color-mix(in srgb, var(--line) 18%, transparent), 0 0 0 140px color-mix(in srgb, var(--line) 8%, transparent); }
.closing-inner { position: relative; z-index: 2; }
.closing h2 { margin: 15px auto 18px; max-width: 13ch; font: 500 clamp(42px, 5vw, 72px)/.96 Fraunces, Georgia, serif; }
.closing p { max-width: 50ch; margin: 0 auto 27px; color: var(--muted); font-size: 15px; line-height: 1.65; }
.closing-actions { display: flex; justify-content: center; align-items: center; gap: 18px; }
.footer { border-top: 1px solid var(--line); background: var(--surface-2); }
.footer-inner { min-height: 160px; padding: 34px 0; display: flex; justify-content: space-between; align-items: start; gap: 30px; }
.footer-copy { max-width: 390px; margin-bottom: 20px; color: var(--muted); font-size: 12px; line-height: 1.62; }
.footer-meta { color: var(--muted-2); font: 500 9px/1.4 JetBrains Mono, monospace; letter-spacing: .06em; text-transform: uppercase; }
.footer-links { display: grid; grid-template-columns: repeat(3, auto); gap: 48px; }
.footer-col b { display: block; margin-bottom: 12px; color: var(--primary); font: 600 10px/1 JetBrains Mono, monospace; letter-spacing: .08em; text-transform: uppercase; }
.footer-col span, .footer-col a { display: block; margin-top: 9px; color: var(--muted); font-size: 12px; transition: color .2s ease; }
.footer-col a:hover { color: var(--primary); }

.internal-main { min-height: calc(100vh - 232px); }
.internal-hero { position: relative; overflow: hidden; border-bottom: 1px solid var(--line); background: radial-gradient(54% 90% at 82% 22%, var(--iris-wash), transparent 72%), radial-gradient(30% 70% at 8% 100%, var(--gold-wash), transparent 76%); }
.internal-hero::after { content: ''; position: absolute; width: min(48vw, 620px); aspect-ratio: 1; right: -12%; top: -58%; border: 1px solid color-mix(in srgb, var(--iris-strong) 20%, transparent); border-radius: 50%; box-shadow: 0 0 0 74px color-mix(in srgb, var(--iris-strong) 4%, transparent), 0 0 0 148px color-mix(in srgb, var(--iris-strong) 2%, transparent); pointer-events: none; }
.internal-hero-inner { position: relative; z-index: 1; padding-block: 104px 70px; }
.internal-hero h1 { max-width: 12ch; margin: 18px 0 22px; font: 500 clamp(52px, 6vw, 82px)/.98 Fraunces, Georgia, serif; letter-spacing: -.038em; text-wrap: balance; }
.internal-hero p { max-width: 64ch; margin: 0; color: var(--muted); font-size: 16px; line-height: 1.7; }
.legal-meta { max-width: 72ch; margin-top: 36px; padding-top: 18px; border-top: 1px solid var(--line); display: flex; justify-content: space-between; gap: 18px; color: var(--muted-2); font: 550 10px/1.5 JetBrains Mono, monospace; letter-spacing: .06em; text-transform: uppercase; }
.prose { width: min(72ch, calc(100% - 48px)); padding-block: 76px 104px; }
.prose-section { padding: 0 0 42px; }
.prose-section + .prose-section { padding-top: 42px; border-top: 1px solid var(--line); }
.prose-section:last-child { padding-bottom: 0; }
.prose h2 { margin: 0 0 19px; font: 500 clamp(29px, 3vw, 38px)/1.08 Fraunces, Georgia, serif; letter-spacing: -.025em; text-wrap: balance; }
.prose h3 { margin: 27px 0 9px; color: var(--primary); font-size: 15px; line-height: 1.4; }
.prose p, .prose li { color: var(--muted); font-size: 15px; line-height: 1.78; }
.prose p { margin: 0; }
.prose p + p { margin-top: 16px; }
.prose ul { margin: 0; padding-left: 1.25em; }
.prose li + li { margin-top: 8px; }
.prose a, .check a { color: var(--iris); font-weight: 650; text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--iris) 52%, transparent); text-underline-offset: .2em; }
.prose a:hover, .check a:hover { color: var(--primary); text-decoration-color: currentColor; }
.footer-col a[aria-current="page"] { color: var(--primary); }

.overlay { position: fixed; inset: 0; z-index: 90; display: flex; align-items: center; justify-content: center; padding: max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left)); background: var(--scrim); backdrop-filter: blur(7px); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .2s ease; }
.overlay.is-open { opacity: 1; visibility: visible; pointer-events: auto; }
.modal { width: min(600px, 100%); max-height: min(calc(100dvh - 48px), 860px); overflow: auto; overscroll-behavior: contain; scrollbar-color: var(--control-line) transparent; scrollbar-width: thin; border: 1px solid var(--line); border-radius: 20px; background: var(--surface-2); color: var(--primary); box-shadow: var(--shadow-modal); transform: translateY(10px) scale(.985); transition: transform .2s ease; }
.overlay.is-open .modal { transform: translateY(0) scale(1); }
body.modal-open { overflow: hidden; }
body.modal-open :is(.hero-mark, .ring, .signal-node, .spectral-wash, .orbit-fragment, .convo-signal),
body.modal-open .signal-node::after,
body.modal-open .signal-beam::before { animation-play-state: paused; }
body.modal-open .availability::before { animation-play-state: paused; }
.modal.wide { width: min(760px, 100%); }
#catalog-modal .modal { width: min(660px, 100%); }
.modal-head { display: flex; justify-content: space-between; gap: 24px; padding: 25px; border-bottom: 1px solid var(--line); }
.modal-label { color: var(--iris); font: 600 11px/1 JetBrains Mono, monospace; letter-spacing: .1em; text-transform: uppercase; }
.modal h3 { margin: 9px 0 6px; font: 500 31px/1.05 Fraunces, Georgia, serif; }
.modal-head p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.close { width: 44px; height: 44px; flex: 0 0 auto; border: 1px solid var(--line); border-radius: 50%; background: var(--surface); color: var(--primary); cursor: pointer; display: grid; place-items: center; }
.close svg { width: 16px; height: 16px; }
.catalog { padding: 20px; display: grid; gap: 18px; }
.catalog-group { display: grid; gap: 10px; }
.catalog-eyebrow { display: flex; justify-content: space-between; align-items: center; gap: 12px; color: var(--muted); font: 600 10px/1 JetBrains Mono, monospace; letter-spacing: .08em; text-transform: uppercase; }
.catalog-eyebrow span { color: var(--muted-2); font-weight: 500; }
.catalog-card { border: 1px solid var(--line); border-radius: 14px; padding: 17px; background: var(--surface); display: grid; grid-template-columns: 44px 1fr auto; align-items: center; gap: 14px; }
.catalog-primary { border-color: color-mix(in srgb, var(--iris-strong) 42%, var(--line)); background: color-mix(in srgb, var(--surface) 94%, var(--iris-wash)); box-shadow: 0 12px 34px color-mix(in srgb, var(--iris-strong) 10%, transparent); }
.catalog-card.disabled { opacity: .86; }
.catalog-icon { width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: var(--iris-wash); color: var(--iris); }
.catalog-card h4 { margin: 0 0 4px; font-size: 14px; }
.catalog-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.small-action { min-height: 44px; border: 0; border-radius: 10px; padding: 0 14px; display: inline-flex; align-items: center; justify-content: center; text-align: center; background: var(--action); color: var(--on-action); cursor: pointer; font: 650 11px/1 Manrope, sans-serif; }
.small-action.outline { background: transparent; color: var(--primary); border: 1px solid var(--line); }
.catalog-note { padding: 0 20px 22px; color: var(--muted); font-size: 12px; line-height: 1.55; }
.catalog-research-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.catalog-mini { border: 1px solid var(--line); border-radius: 13px; padding: 14px; background: var(--surface); display: grid; gap: 13px; }
.catalog-mini-head { display: flex; align-items: center; gap: 11px; }
.catalog-mini h4 { margin: 0 0 4px; font-size: 13px; }
.catalog-mini p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.45; }
.catalog-mini .small-action { width: 100%; }
.catalog-release { position: relative; isolation: isolate; overflow: hidden; border: 1px solid color-mix(in srgb, var(--iris-strong) 54%, var(--line)); border-radius: 16px; padding: 19px; background: color-mix(in srgb, var(--surface) 91%, var(--iris-wash)); box-shadow: var(--shadow-release), inset 0 1px rgba(255,255,255,.035); display: grid; grid-template-columns: 48px 1fr auto; align-items: center; gap: 15px; }
.catalog-release::before { content: ''; position: absolute; z-index: -1; inset: 0 auto 0 0; width: 2px; background: linear-gradient(180deg, transparent, var(--iris-strong) 28%, var(--gold) 70%, transparent); }
.catalog-release::after { content: ''; position: absolute; z-index: -2; width: 240px; height: 240px; right: -100px; top: -145px; border-radius: 50%; background: radial-gradient(circle, color-mix(in srgb, var(--iris-strong) 17%, transparent), transparent 68%); }
.catalog-release .catalog-icon { width: 48px; height: 48px; border: 1px solid color-mix(in srgb, var(--iris-strong) 28%, var(--line)); background: color-mix(in srgb, var(--iris-wash) 82%, var(--surface)); }
.catalog-release h4, .catalog-research-row h4, .catalog-custom-row h4 { margin: 0 0 5px; }
.catalog-release h4 { font: 650 17px/1.2 Manrope, sans-serif; letter-spacing: -.015em; }
.catalog-release p { font-size: 13px; line-height: 1.55; }
.catalog-research-row h4, .catalog-custom-row h4 { font: 650 14px/1.2 Manrope, sans-serif; letter-spacing: -.01em; }
.catalog-research-row p, .catalog-custom-row p { font-size: 11.5px; line-height: 1.5; }
.catalog-release p, .catalog-research-row p, .catalog-custom-row p { margin: 0; color: var(--muted); }
.catalog-release .small-action { min-width: 176px; white-space: nowrap; }
.catalog-research-shell { overflow: hidden; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); }
.catalog-research-row { min-height: 82px; padding: 14px 15px; display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 13px; }
.catalog-research-row + .catalog-research-row { border-top: 1px solid var(--line); }
.catalog-research-row { transition: background-color .2s ease, border-color .2s ease; }
.catalog-research-row:hover, .catalog-research-row:focus-within { background: color-mix(in srgb, var(--surface) 92%, var(--iris-wash)); }
.catalog-research-row .catalog-icon { width: 42px; height: 42px; border-radius: 11px; background: color-mix(in srgb, var(--iris-wash) 58%, var(--surface-2)); }
.catalog-research-row .small-action { min-width: 128px; }
.catalog-custom-row { min-height: 82px; border: 1px solid color-mix(in srgb, var(--line) 90%, transparent); border-radius: 15px; padding: 15px; background: color-mix(in srgb, var(--surface) 97%, var(--surface-2)); display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 13px; }
.catalog-custom-row .catalog-icon { width: 42px; height: 42px; border-radius: 11px; }
.catalog-custom-row .small-action { min-width: 128px; }
#catalog-modal .catalog-note { margin: 0 20px 20px; padding: 13px 15px; border: 1px solid var(--line); border-radius: 12px; background: color-mix(in srgb, var(--surface) 92%, var(--surface-2)); font-size: 11px; }
.form-modal { width: min(680px, 100%); }
.form-modal.wide { width: min(820px, 100%); }
.form-modal .modal-head { position: sticky; top: 0; z-index: 4; background: color-mix(in srgb, var(--surface-2) 94%, transparent); backdrop-filter: blur(16px); }
.modal-head h3[tabindex="-1"]:focus { outline: none; }
.form { padding: 0; }
.form-content { padding: 24px 25px 27px; display: grid; gap: 16px; }
[data-form-content][hidden],
[data-success-panel][hidden] { display: none !important; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.field-group { min-width: 0; display: grid; align-content: start; gap: 7px; }
.form label { color: var(--muted); font: 600 10px/1.3 JetBrains Mono, monospace; letter-spacing: .065em; text-transform: uppercase; }
.field-group > label { min-height: 14px; display: flex; justify-content: space-between; gap: 12px; }
.field-group > label span { color: var(--muted-2); font-size: 8px; letter-spacing: .04em; text-align: right; }
input, select, textarea { width: 100%; border: 1px solid var(--control-line); border-radius: 10px; padding: 12px 13px; background: var(--surface); color: var(--primary); outline: none; font: 400 13px/1.45 Manrope, sans-serif; text-transform: none; letter-spacing: 0; }
textarea { min-height: 104px; resize: vertical; }
input::placeholder, textarea::placeholder { color: color-mix(in srgb, var(--muted-2) 82%, transparent); }
input:focus, select:focus, textarea:focus { border-color: var(--iris-strong); box-shadow: 0 0 0 3px var(--iris-wash); }
input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"] { border-color: color-mix(in srgb, #f27686 72%, var(--control-line)); box-shadow: 0 0 0 3px color-mix(in srgb, #f27686 12%, transparent); }
.field-error { margin: 0; color: color-mix(in srgb, #ff8d9c 78%, var(--primary)); font-size: 11px; line-height: 1.4; }
.field-error:empty { display: none; }
.form-note { margin: -1px 0 0; padding: 13px 15px; border-left: 2px solid var(--iris-strong); border-radius: 0 10px 10px 0; background: color-mix(in srgb, var(--iris-wash) 38%, transparent); color: var(--muted); font-size: 11px; line-height: 1.58; }
.consent-stack { display: grid; gap: 10px; }
.consent-group, .optional-check { border: 1px solid color-mix(in srgb, var(--line) 88%, transparent); border-radius: 12px; background: color-mix(in srgb, var(--surface) 72%, transparent); }
.consent-group { padding: 13px 14px 12px; display: grid; grid-template-columns: 1fr auto; gap: 7px 12px; align-items: start; }
.check { min-height: 24px; display: flex; align-items: start; gap: 10px; color: var(--muted); font: 400 12px/1.55 Manrope, sans-serif; text-transform: none; letter-spacing: 0; cursor: pointer; }
.check input { width: 19px; height: 19px; flex: 0 0 auto; margin-top: 1px; accent-color: var(--action); }
.optional-check { min-height: 48px; padding: 12px 14px; }
.consent-privacy { align-self: start; color: var(--iris); font: 600 10px/1.5 JetBrains Mono, monospace; letter-spacing: .035em; text-underline-offset: 3px; white-space: nowrap; }
.consent-group .field-error { grid-column: 1 / -1; }
.honeypot { position: fixed !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.verification-block { min-height: 82px; border: 1px solid var(--line); border-radius: 13px; padding: 13px 14px; background: color-mix(in srgb, var(--surface) 78%, transparent); display: grid; grid-template-columns: minmax(128px, .75fr) minmax(290px, 1.25fr); gap: 16px; align-items: center; }
.verification-block > div:first-child { display: grid; gap: 4px; }
.verification-block strong { color: var(--primary); font-size: 12px; line-height: 1.3; }
.verification-block span { color: var(--muted-2); font-size: 10px; line-height: 1.45; }
.turnstile-mount { min-height: 65px; display: flex; align-items: center; justify-content: flex-end; overflow: hidden; }
.form-error-summary { border: 1px solid color-mix(in srgb, #f27686 45%, var(--line)); border-left: 3px solid color-mix(in srgb, #f27686 72%, var(--primary)); border-radius: 11px; padding: 12px 14px; background: color-mix(in srgb, #f27686 9%, var(--surface)); color: var(--primary); font-size: 12px; line-height: 1.55; }
.form-status { min-height: 17px; margin-top: -3px; color: var(--muted-2); font: 500 10px/1.5 JetBrains Mono, monospace; letter-spacing: .03em; }
.form-fallback { margin: -9px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.form-fallback a { color: var(--iris); text-underline-offset: 3px; }
.submit { min-height: 48px; border: 1px solid color-mix(in srgb, var(--action) 70%, white); border-radius: 11px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; text-align: center; background: var(--action); color: var(--on-action); box-shadow: 0 10px 26px color-mix(in srgb, var(--action) 18%, transparent); cursor: pointer; font: 650 12px/1 Manrope, sans-serif; }
.submit:disabled { opacity: .7; cursor: wait; transform: none; }
.submit-pulse { display: none; width: 6px; height: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px color-mix(in srgb, currentColor 16%, transparent); }
.form[data-state="submitting"] .submit-pulse { display: block; animation: formPulse 1.1s ease-in-out infinite; }
.form[data-state="submitting"] .form-content { opacity: .88; }
.form-journey { border: 1px solid color-mix(in srgb, var(--iris-strong) 24%, var(--line)); border-radius: 15px; padding: 17px; background: linear-gradient(135deg, color-mix(in srgb, var(--iris-wash) 44%, var(--surface)), color-mix(in srgb, var(--surface) 94%, transparent)); display: grid; grid-template-columns: minmax(150px, .6fr) minmax(0, 1.4fr); gap: 20px; }
.form-journey h4 { margin: 7px 0 0; color: var(--primary); font: 500 19px/1.12 Fraunces, Georgia, serif; }
.form-journey ol { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); }
.form-journey li { padding: 11px; background: color-mix(in srgb, var(--surface) 92%, transparent); display: grid; grid-template-columns: auto 1fr; gap: 8px; align-content: start; }
.form-journey li b { color: var(--iris); font: 600 9px/1.4 JetBrains Mono, monospace; }
.form-journey li span { color: var(--muted-2); font-size: 10px; line-height: 1.45; }
.form-journey li strong { display: block; margin-bottom: 3px; color: var(--primary); font-size: 10.5px; line-height: 1.25; }
.success-panel { min-height: 390px; padding: 44px 36px 38px; display: grid; align-content: center; justify-items: start; gap: 13px; background: radial-gradient(circle at 8% 12%, color-mix(in srgb, var(--iris-strong) 12%, transparent), transparent 38%); }
.success-signal { width: 54px; height: 54px; margin-bottom: 6px; border: 1px solid color-mix(in srgb, var(--iris-strong) 40%, var(--line)); border-radius: 50%; display: grid; place-items: center; background: var(--iris-wash); box-shadow: 0 0 30px color-mix(in srgb, var(--iris-strong) 12%, transparent); }
.success-signal span { width: 9px; height: 9px; border-radius: 50%; background: var(--iris); box-shadow: 0 0 0 7px color-mix(in srgb, var(--iris-strong) 14%, transparent), 0 0 17px var(--iris-strong); }
.success-panel h4 { max-width: 16ch; margin: 2px 0 0; font: 500 34px/1.02 Fraunces, Georgia, serif; letter-spacing: -.025em; }
.success-panel > p { max-width: 61ch; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.receipt { width: 100%; margin: 7px 0 5px; border-block: 1px solid var(--line); display: grid; grid-template-columns: 1fr 1fr; }
.receipt div { min-width: 0; padding: 13px 0; display: grid; gap: 5px; }
.receipt div + div { border-left: 1px solid var(--line); padding-left: 18px; }
.receipt dt { color: var(--muted-2); font: 600 9px/1 JetBrains Mono, monospace; letter-spacing: .08em; text-transform: uppercase; }
.receipt dd { min-width: 0; margin: 0; color: var(--primary); font: 600 12px/1.35 JetBrains Mono, monospace; overflow-wrap: anywhere; }
.success-panel .small-action { margin-top: 4px; }
button.start { display: inline-flex; align-items: center; justify-content: center; text-align: center; }
.footer-col [aria-disabled="true"] { opacity: .72; cursor: not-allowed; }

:where(a, button, input, select, textarea, [data-form-error-summary], [data-success-panel], [data-turnstile-mount]):focus-visible { outline: 3px solid color-mix(in srgb, var(--iris-strong) 72%, white); outline-offset: 3px; }
:where(.start, .button-dark, .agent-cta, .submit, .small-action):hover { filter: brightness(1.07); transform: translateY(-1px); }
:where(.start, .button-dark, .agent-cta, .submit, .small-action):active { transform: translateY(0); }

@keyframes rotate { to { transform: rotate(360deg); } }
@keyframes apertureRotate { to { transform: rotate(360deg); } }
@keyframes pulse { 50% { opacity: .45; } }
@keyframes signalPulse { 0%, 62%, 100% { transform: scale(.86); opacity: .58; filter: brightness(.92); } 72% { transform: scale(1.32); opacity: 1; filter: brightness(1.32); } 82% { transform: scale(1); opacity: .82; filter: brightness(1.08); } }
@keyframes signalHalo { 0%, 64%, 100% { transform: scale(.62); opacity: 0; } 74% { transform: scale(1); opacity: .72; } 88% { transform: scale(1.32); opacity: 0; } }
@keyframes beamSignal { 0%, 62%, 100% { transform: scaleX(0); opacity: 0; } 64% { transform: scaleX(.03); opacity: .2; } 72% { transform: scaleX(1); opacity: .94; } 77% { transform: scaleX(1); opacity: .24; } 80% { transform: scaleX(1); opacity: 0; } }
@keyframes spectralDrift { from { transform: rotate(-8deg) scale(.96); opacity: .44; } to { transform: rotate(16deg) scale(1.06); opacity: .68; } }
@keyframes fragmentOne { 0%, 100% { transform: translate3d(0,0,0) rotate(-14deg); opacity: .22; } 48% { transform: translate3d(-16px,12px,0) rotate(18deg); opacity: .46; } 72% { transform: translate3d(-8px,4px,0) rotate(8deg); opacity: .32; } }
@keyframes fragmentTwo { 0%, 100% { transform: translate3d(0,0,0) rotate(16deg); opacity: .18; } 44% { transform: translate3d(13px,-11px,0) rotate(-21deg); opacity: .4; } 78% { transform: translate3d(5px,-3px,0) rotate(-4deg); opacity: .27; } }
@keyframes traceSignal { 0%, 58%, 100% { transform: scaleX(.08); transform-origin: right center; opacity: 0; } 68% { transform: scaleX(1); transform-origin: right center; opacity: .42; } 82% { transform: scaleX(1); opacity: .12; } }
@keyframes formPulse { 0%, 100% { opacity: .45; transform: scale(.78); } 50% { opacity: 1; transform: scale(1.15); } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: 0s !important; } .ticker-group + .ticker-group { display: none; } .signal-beam::before { opacity: 0 !important; transform: none !important; } .signal-node { opacity: .72 !important; transform: none !important; filter: none !important; } .signal-node::after { opacity: .18 !important; transform: none !important; } .spectral-wash { opacity: .45 !important; transform: none !important; } .orbit-fragment { opacity: .22 !important; transform: none !important; } }
@media (max-width: 1000px) { .nav { display: none; } .mobile-menu { display: grid; } .mobile-panel { position: absolute; top: calc(100% + 1px); left: 24px; right: 24px; padding: 10px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-2); box-shadow: var(--shadow); } .mobile-panel.open { display: grid; } .mobile-panel a { min-height: 44px; display: flex; align-items: center; padding: 0 12px; border-radius: 9px; color: var(--muted); font-size: 13px; } .mobile-panel a:hover { background: var(--surface-3); color: var(--primary); } .hero-copy { width: 68%; } .field { right: -8%; opacity: .54; } .ticker-group { flex-wrap: wrap; justify-content: center; line-height: 1.45; } .principles-grid { grid-template-columns: 1fr 1fr; } .concepts { grid-template-columns: 1fr; } .concept { min-height: 280px; } .custom-panel { grid-template-columns: 1fr; } .custom-steps { border-left: 0; border-top: 1px solid var(--line); } }
@media (max-width: 720px) { .container { width: min(100% - 32px, 1260px); } .header-inner { gap: 12px; } .brand { font-size: 18px; } .brand-mark { width: 25px; height: 25px; } .header-actions { margin-left: auto; gap: 7px; } .header-actions .start { padding-inline: 13px; } .mobile-panel { left: 16px; right: 16px; } .hero { min-height: 850px; align-items: start; } .hero-copy { width: 100%; padding: 68px 0 250px; } .hero h1 { font-size: clamp(47px, 14.5vw, 62px); } .hero-copy > p { font-size: 16px; } .hero-actions { align-items: flex-start; flex-direction: column; } .hero-signals { display: grid; grid-template-columns: 1fr; width: min(100%, 330px); } .field { opacity: .16; width: 420px; right: -105px; top: 73%; } .ticker-track { padding: 17px 16px; } .ticker-group { width: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 16px; text-align: center; } .ticker-group i { display: none; } .ticker-group span:last-child { grid-column: 1 / -1; } .agent-layout { grid-template-columns: 1fr; } .launch-flow { grid-template-columns: 1fr; } .section { padding: 76px 0; } .lab-head { align-items: start; flex-direction: column; } .concept-top { align-items: flex-start; } .concept-id { display: grid; justify-items: end; gap: 7px; text-align: right; } .suggest { grid-template-columns: 44px 1fr; padding: 22px; } .suggest .research-button { grid-column: 1 / -1; width: 100%; } .principles-grid { grid-template-columns: 1fr; } .custom-steps { grid-template-columns: 1fr; } .footer-inner { flex-direction: column; } .footer-links { width: 100%; grid-template-columns: repeat(3, 1fr); gap: 18px; } .overlay { align-items: flex-start; padding: 12px; } .modal { max-height: calc(100dvh - 24px); border-radius: 16px; } .modal-head { padding: 20px; } .form { padding: 20px; } .form-grid { grid-template-columns: 1fr; } input, select, textarea { font-size: 16px; } .catalog { padding: 16px; } .catalog-research-grid { grid-template-columns: 1fr; } .catalog-card { grid-template-columns: 42px 1fr; } .catalog-card .small-action { grid-column: 1 / -1; width: 100%; } .catalog-release, .catalog-research-row, .catalog-custom-row { grid-template-columns: 42px 1fr; } .catalog-release { padding: 16px; } .catalog-release .catalog-icon { width: 42px; height: 42px; } .catalog-release .small-action, .catalog-research-row .small-action, .catalog-custom-row .small-action { grid-column: 1 / -1; width: 100%; } #catalog-modal .catalog-note { margin: 0 16px 16px; } }
@media (max-width: 720px) { .field { width: 338px; right: -4px; top: 80%; opacity: 1; } .field .ring { opacity: .3; } .field .signal-node { opacity: .56; } .field .signal-beams { opacity: .68; } .signal-node.s2, .signal-node.s8, .signal-node.s11, .signal-beam.b2, .signal-beam.b8, .signal-beam.b11 { display: none; } .field .hero-mark { opacity: .62; } .field .mark-stage { inset: 22%; } .field .orbit-fragment { opacity: .24; } .proof-track { min-height: 0; padding-block: 20px; grid-template-columns: 1fr 1fr; gap: 12px 14px; } .proof-lead { grid-column: 1 / -1; padding-bottom: 12px; border-bottom: 1px solid var(--line); } .proof-item { min-height: 30px; padding-left: 0; border-left: 0; font-size: 10px; } .section-title { font-size: 42px; text-wrap: balance; } .agent-copy { padding: 26px; border: 1px solid var(--line); border-radius: 16px; box-shadow: none; } .agent-copy h3 { margin-top: 25px; font-size: 27px; } .capabilities { margin: 24px 0 27px; } .cap { grid-template-columns: 1fr; gap: 6px; padding: 15px; } .messages { padding: 25px 20px; } .bubble { max-width: 92%; font-size: 13px; } .human { flex-direction: column; gap: 7px; } .example-note { padding: 0 20px 20px; } .conversation { border-radius: 16px; box-shadow: none; } .principles-grid { margin-top: 36px; } .principle { min-height: 0; padding: 22px; } .principle h3 { margin: 30px 0 9px; } .custom-copy { padding: 32px 26px; } .closing { padding: 84px 0; } .closing h2 { font-size: 50px; } .closing-actions { align-items: center; flex-direction: column; } }
@media (max-width: 1000px) { .mobile-panel { padding: 8px 12px; background: color-mix(in srgb, var(--surface-2) 96%, transparent); backdrop-filter: blur(18px); } .mobile-panel a { padding: 0 8px; border-bottom: 1px solid color-mix(in srgb, var(--line) 72%, transparent); border-radius: 0; } .mobile-panel a:last-child { border-bottom: 0; } }
@media (max-width: 1000px) { #theme-toggle { display: none; } .mobile-theme-action { border-top: 1px solid color-mix(in srgb, var(--line) 72%, transparent); } }
@media (max-width: 720px) {
  .form { padding: 0; }
  .form-content { padding: 20px; gap: 15px; }
  .field-group > label { display: grid; justify-content: start; gap: 3px; }
  .field-group > label span { text-align: left; }
  .consent-group { grid-template-columns: 1fr; }
  .consent-privacy { padding-left: 29px; white-space: normal; }
  .verification-block { grid-template-columns: 1fr; gap: 10px; }
  .turnstile-mount { justify-content: flex-start; overflow-x: auto; }
  .form-journey { grid-template-columns: 1fr; gap: 14px; }
  .form-journey ol { grid-template-columns: 1fr; }
  .form-journey li { min-height: 58px; }
  .success-panel { min-height: 420px; padding: 34px 24px; }
  .success-panel h4 { font-size: 31px; }
  .receipt { grid-template-columns: 1fr; }
  .receipt div + div { border-top: 1px solid var(--line); border-left: 0; padding-left: 0; }
}
