:root {
  --ink: #092028;
  --deep: #06171d;
  --paper: #f4f6f2;
  --mist: #dce8e3;
  --soft: #aac1ba;
  --line: rgba(8, 37, 44, .14);
  --lime: #c3ee65;
  --teal: #146c70;
  --cyan: #82e9e5;
  --warm: #f3b97e;
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --display: Iowan Old Style, Palatino Linotype, Book Antiqua, Georgia, serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); font-size: 16px; line-height: 1.5; }
a { color: inherit; text-underline-offset: .2em; }
a:focus-visible { outline: 3px solid var(--lime); outline-offset: 4px; }
.skip-link { position: absolute; top: -10rem; left: 1rem; z-index: 30; padding: .7rem 1rem; background: var(--lime); color: var(--deep); font-weight: 800; }
.skip-link:focus { top: 1rem; }
.site-shell { overflow: hidden; }
.site-header, .hero, .proof-strip, .model-section, .capabilities, .principles, .access-section, .site-footer { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.site-header { display: flex; align-items: center; justify-content: space-between; min-height: 88px; position: relative; z-index: 2; }
.brand { display: inline-flex; align-items: center; gap: .55rem; color: var(--ink); text-decoration: none; font-size: 1.1rem; font-weight: 800; letter-spacing: -.04em; }
.brand svg { width: 30px; height: 30px; color: var(--teal); }
.site-header nav { display: flex; align-items: center; gap: 1.65rem; margin-left: auto; margin-right: 1.65rem; }
.site-header nav a, .footer-links a { color: #34575a; font-size: .9rem; font-weight: 650; text-decoration: none; }
.site-header nav a:hover, .footer-links a:hover { color: var(--teal); }
.button { display: inline-flex; align-items: center; justify-content: center; gap: .65rem; min-height: 48px; padding: .75rem 1.1rem; border: 1px solid var(--teal); border-radius: 999px; background: var(--teal); color: white; font-size: .94rem; font-weight: 780; text-decoration: none; transition: transform .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); background: #0a595c; }
.button span { font-size: 1.2em; line-height: 0; }
.button-small { min-height: 38px; padding: .5rem .85rem; font-size: .84rem; }
.button-quiet { background: transparent; color: var(--teal); }
.button-quiet:hover { background: #e0f2ec; }
.hero { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: clamp(3rem, 8vw, 8rem); min-height: calc(100vh - 88px); padding-block: 6.8rem 5rem; }
.eyebrow { display: flex; align-items: center; gap: .55rem; margin: 0 0 1.25rem; color: var(--teal); font-size: .72rem; font-weight: 850; letter-spacing: .105em; text-transform: uppercase; }
.pulse { width: .56rem; height: .56rem; border-radius: 99px; background: var(--lime); box-shadow: 0 0 0 5px rgba(195, 238, 101, .2); }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { letter-spacing: -.07em; line-height: .94; }
h1 { max-width: 650px; margin-bottom: 1.7rem; font-family: var(--display); font-size: clamp(3.9rem, 7.6vw, 7.25rem); font-weight: 500; }
h1 em { color: var(--teal); font-weight: 400; }
.hero-intro { max-width: 520px; color: #416165; font-size: clamp(1.04rem, 1.7vw, 1.22rem); line-height: 1.65; }
.hero-actions { display: flex; align-items: center; gap: 1.45rem; margin-top: 2rem; }
.text-link { display: inline-flex; align-items: center; gap: .5rem; color: var(--teal); font-size: .92rem; font-weight: 800; text-decoration: none; }
.text-link:hover { text-decoration: underline; }
.access-note { margin-top: 1.65rem; color: #6d8582; font-size: .77rem; font-weight: 650; }
.hero-visual { position: relative; min-height: 530px; display: grid; place-items: center; }
.visual-orbit { position: absolute; border: 1px solid rgba(20, 108, 112, .18); border-radius: 50%; }
.orbit-one { width: 105%; aspect-ratio: 1; }
.orbit-two { width: 72%; aspect-ratio: 1; border-style: dashed; }
.signal { position: absolute; width: 9px; height: 9px; border-radius: 99px; background: var(--lime); box-shadow: 0 0 0 7px rgba(195, 238, 101, .15); }
.signal-one { top: 12%; right: 18%; }.signal-two { bottom: 18%; left: 4%; background: var(--warm); box-shadow: 0 0 0 7px rgba(243, 185, 126, .16); }
.console-card { position: relative; width: min(100%, 460px); padding: 1.35rem; border: 1px solid rgba(20, 108, 112, .26); border-radius: 20px; background: rgba(252, 255, 251, .78); box-shadow: 0 28px 70px rgba(3, 43, 46, .12); backdrop-filter: blur(18px); transform: rotate(-4deg); }
.console-topline, .console-footer { display: flex; justify-content: space-between; color: #617b78; font-size: .68rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.console-live { display: inline-flex; align-items: center; gap: .45rem; color: var(--teal); }.console-live i { width: .45rem; height: .45rem; border-radius: 99px; background: var(--lime); }
.console-intention { padding: 2rem 0 1.55rem; }.micro-label { display: block; margin-bottom: .52rem; color: #78918d; font-size: .61rem; font-weight: 850; letter-spacing: .11em; }
.console-intention strong { color: var(--ink); font-family: var(--display); font-size: clamp(2rem, 4vw, 2.65rem); font-weight: 500; line-height: 1.02; letter-spacing: -.05em; }
.console-path { display: flex; align-items: center; padding: 1.05rem 0 1.55rem; }.path-dot { width: 8px; height: 8px; border: 1px solid #6e8c87; border-radius: 99px; }.path-dot.active { background: var(--teal); border-color: var(--teal); box-shadow: 0 0 0 4px #cceae1; }.path-line { width: 30%; height: 1px; background: #c0d6d1; }
.console-work { display: flex; align-items: center; gap: .8rem; padding: .95rem; border: 1px solid #dbe8e3; border-radius: 13px; background: #fff; }.console-work b { display: block; font-size: .86rem; }.work-check { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: #e0f3ed; color: var(--teal); font-weight: 900; }.work-status { margin-left: auto; color: var(--teal); font-size: .64rem; font-weight: 900; letter-spacing: .08em; }.console-footer { align-items: center; margin-top: 1rem; text-transform: none; letter-spacing: 0; }.beacon-point { width: 8px; height: 8px; border-radius: 50%; background: var(--lime); }
.proof-strip { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 1.15rem 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.proof-strip p { margin: 0; color: #4e6d6c; font-size: .82rem; font-weight: 700; }.proof-strip ul { display: flex; flex-wrap: wrap; gap: 1.25rem; margin: 0; padding: 0; list-style: none; color: #456768; font-size: .78rem; font-weight: 750; }.proof-strip li::before { content: "·"; margin-right: .45rem; color: var(--teal); font-size: 1.2em; }
.model-section { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem 10%; padding-block: clamp(6rem, 13vw, 11rem); }.section-heading h2, .access-section h2 { margin-bottom: 0; font-family: var(--display); font-size: clamp(3rem, 5.4vw, 5.7rem); font-weight: 500; }.model-copy { align-self: end; padding-bottom: .65rem; }.model-copy p { max-width: 470px; color: #4a6869; font-size: 1.06rem; line-height: 1.7; }.model-flow { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 2.5rem 0 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }.model-flow li { position: relative; min-height: 210px; padding: 1.25rem 1.4rem 1.25rem 0; border-right: 1px solid var(--line); }.model-flow li:not(:first-child) { padding-left: 1.4rem; }.model-flow li:last-child { border: 0; }.flow-number, .card-index { display: block; margin-bottom: 2.9rem; color: var(--teal); font-size: .72rem; font-weight: 900; letter-spacing: .1em; }.model-flow h3, .capability-card h3 { margin-bottom: .55rem; font-family: var(--display); font-size: 1.7rem; font-weight: 500; letter-spacing: -.04em; }.model-flow p, .capability-card p { margin: 0; color: #617a79; font-size: .88rem; line-height: 1.6; }
.capabilities { padding-bottom: clamp(6rem, 12vw, 10rem); }.capability-grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 1rem; margin-top: 3.4rem; }.capability-card { min-height: 375px; padding: 1.4rem; border: 1px solid var(--line); border-radius: 16px; background: #ecf0ec; display: flex; flex-direction: column; }.capability-card-large { background: var(--teal); color: white; }.capability-card-large .card-index, .capability-card-large p { color: #c5eecc; }.capability-card-large h3 { font-size: 2rem; }.capability-card p { margin-top: auto; }.glyph { margin: 1rem 0 auto; }.glyph-path { position: relative; width: 150px; height: 90px; }.glyph-path span, .glyph-path i, .glyph-path b { position: absolute; display: block; width: 18px; height: 18px; border-radius: 50%; background: var(--lime); }.glyph-path span { top: 2px; left: 4px; }.glyph-path i { top: 38px; left: 66px; background: var(--cyan); }.glyph-path b { right: 5px; bottom: 1px; background: var(--warm); }.glyph-path::before, .glyph-path::after { content: ""; position: absolute; width: 68px; height: 1px; background: rgba(255,255,255,.5); transform-origin: left center; }.glyph-path::before { top: 13px; left: 18px; transform: rotate(30deg); }.glyph-path::after { top: 51px; left: 79px; transform: rotate(-31deg); }.glyph-shield { display: grid; width: 76px; height: 76px; place-items: center; border-radius: 45% 45% 52% 52%; background: #d8f3d5; color: var(--teal); font-size: 2rem; }.glyph-agent { display: flex; align-items: center; gap: .5rem; height: 76px; }.glyph-agent i { width: 16px; height: 16px; border-radius: 50%; background: var(--teal); }.glyph-agent i:nth-child(2) { width: 30px; height: 30px; background: var(--lime); }.glyph-agent i:nth-child(3) { background: var(--warm); }
.principles { width: 100%; max-width: none; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); background: var(--deep); color: #f1f6f2; }.principles-copy { width: min(100%, 590px); justify-self: end; padding: clamp(5rem, 10vw, 9rem) clamp(2rem, 7vw, 9rem) clamp(5rem, 10vw, 9rem) 24px; }.principles .eyebrow { color: var(--lime); }.principles h2 { margin-bottom: 1.45rem; font-family: var(--display); font-size: clamp(3.1rem, 5vw, 5.3rem); font-weight: 500; }.principles-copy > p:not(.eyebrow) { max-width: 500px; color: #acc4c0; font-size: 1.05rem; line-height: 1.7; }.light-link { color: var(--lime); margin-top: .6rem; }.principles-list { display: flex; flex-direction: column; justify-content: center; margin: 0; padding: clamp(5rem, 10vw, 9rem) 24px clamp(5rem, 10vw, 9rem) clamp(2rem, 7vw, 9rem); background: #0b242b; }.principles-list div { padding: 1.55rem 0; border-top: 1px solid rgba(211,236,228,.2); }.principles-list div:last-child { border-bottom: 1px solid rgba(211,236,228,.2); }.principles-list dt { margin-bottom: .45rem; color: var(--lime); font-family: var(--display); font-size: 1.8rem; }.principles-list dd { max-width: 360px; margin: 0; color: #b8cfcb; font-size: .95rem; line-height: 1.6; }
.access-section { padding-block: clamp(6rem, 13vw, 10rem); text-align: center; }.access-section .eyebrow { justify-content: center; }.access-section h2 { margin-bottom: 1.25rem; }.access-section > p:not(.eyebrow) { max-width: 570px; margin: 0 auto 2rem; color: #536e6e; font-size: 1.05rem; line-height: 1.65; }.button-light { border-color: var(--ink); background: var(--ink); }.button-light:hover { background: var(--teal); }.site-footer { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 1rem; min-height: 120px; border-top: 1px solid var(--line); }.footer-links { display: flex; gap: 1.25rem; }.site-footer p { justify-self: end; margin: 0; color: #6f8584; font-size: .72rem; }.footer-brand { font-size: 1rem; }
.legal-page { min-height: 100vh; }.legal-main { width: min(780px, calc(100% - 48px)); margin: 0 auto; padding: clamp(4rem, 10vw, 7rem) 0; }.legal-main h1 { margin-bottom: 1.4rem; font-size: clamp(3.5rem, 7vw, 6rem); }.legal-main h2 { margin: 2.6rem 0 .8rem; font-family: var(--display); font-size: 2rem; font-weight: 500; letter-spacing: -.04em; }.legal-main p, .legal-main li { color: #486465; line-height: 1.75; }.legal-main ul { padding-left: 1.2rem; }.legal-kicker { color: var(--teal); font-size: .82rem; font-weight: 800; }.legal-header { border-bottom: 1px solid var(--line); }.page-lead { max-width: 640px; color: #496a6a; font-size: 1.15rem; line-height: 1.65; }
.not-found { display: grid; min-height: calc(100vh - 208px); place-items: center; text-align: center; }.not-found h1 { font-size: clamp(5rem, 15vw, 12rem); }.not-found p { max-width: 390px; color: #587374; }
@media (max-width: 800px) { .site-header nav { display: none; }.hero { grid-template-columns: 1fr; min-height: auto; padding-top: 4rem; }.hero-visual { min-height: 420px; }.console-card { transform: rotate(-2deg); }.proof-strip, .model-section { display: block; }.proof-strip ul { margin-top: .8rem; }.model-copy { margin-top: 2rem; }.model-flow { grid-template-columns: 1fr 1fr; margin-top: 3rem; }.model-flow li:nth-child(2) { border-right: 0; }.model-flow li:nth-child(n+3) { border-top: 1px solid var(--line); padding-top: 1.25rem; }.capability-grid { grid-template-columns: 1fr; }.capability-card { min-height: 285px; }.principles { grid-template-columns: 1fr; }.principles-copy { width: 100%; justify-self: stretch; padding-right: 24px; }.principles-list { padding-left: 24px; }.site-footer { grid-template-columns: 1fr; padding-block: 2rem; }.site-footer p { justify-self: start; }.footer-links { flex-wrap: wrap; } }
@media (max-width: 480px) { .site-header, .hero, .proof-strip, .model-section, .capabilities, .access-section, .site-footer { width: min(100% - 32px, 1180px); }.button-quiet { display: none; }.hero { padding-block: 3.5rem 4rem; }.hero-actions { align-items: flex-start; flex-direction: column; gap: 1rem; }.hero-visual { min-height: 340px; }.console-card { padding: 1rem; }.console-intention { padding: 1.4rem 0 1rem; }.model-flow { grid-template-columns: 1fr; }.model-flow li, .model-flow li:not(:first-child) { min-height: auto; padding: 1.25rem 0; border-right: 0; border-bottom: 1px solid var(--line); }.model-flow li:last-child { border-bottom: 0; }.flow-number { margin-bottom: 1rem; }.legal-main { width: min(100% - 32px, 780px); } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }
