@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=Inter:wght@400;500;600&display=swap');

:root {
  --bg: #080b0a;
  --surface: #0d1210;
  --surface-2: #111815;
  --line: rgba(220, 235, 225, .13);
  --line-strong: rgba(220, 235, 225, .25);
  --text: #e7ece8;
  --muted: #8e9a92;
  --green: #98c3a7;
  --red: #f04b48;
  --red-soft: #9d302f;
  --blue: #57b7ff;
  --blue-soft: #267db8;
  --amber: #e4b75e;
  --amber-soft: #8a682d;
  --page-pad: clamp(1.25rem, 4vw, 4.5rem);
  --max: 1440px;
  --mono: 'DM Mono', 'SFMono-Regular', Consolas, monospace;
  --sans: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
section[id] { scroll-margin-top: 76px; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--sans); line-height: 1.6; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
.skip-link { position: fixed; left: 1rem; top: -5rem; z-index: 1000; padding: .75rem 1rem; background: var(--text); color: var(--bg); }
.skip-link:focus { top: 1rem; }
.site-header { position: fixed; inset: 0 0 auto 0; height: 76px; z-index: 100; padding: 0 var(--page-pad); display: grid; grid-template-columns: 1fr auto; align-items: center; border-bottom: 1px solid transparent; transition: background .25s, border-color .25s; }
.site-header.is-scrolled { background: rgba(8, 11, 10, .88); border-color: var(--line); backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; gap: .8rem; width: max-content; font-family: var(--mono); font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; }
.brand-mark { width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid var(--line-strong); color: var(--green); font-size: .65rem; letter-spacing: -.02em; transform: rotate(45deg); }
.brand-mark::first-line { transform: rotate(-45deg); }
.brand-mark { text-indent: 0; }
.brand-mark > * { transform: rotate(-45deg); }
.brand-mark { line-height: 31px; text-align: center; }
.brand-mark { --rotation: -45deg; }
.brand-mark { font-variant-ligatures: none; }
.brand-mark { color: transparent; position: relative; }
.brand-mark::after { content: 'DF'; color: var(--green); position: absolute; inset: 0; transform: rotate(-45deg); }
.site-nav { display: flex; align-items: center; gap: clamp(1.25rem, 3vw, 2.75rem); }
.site-nav a { font-family: var(--mono); color: var(--muted); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; transition: color .2s; }
.site-nav a:hover, .site-nav a:focus-visible { color: var(--text); }
.menu-toggle { display: none; background: none; border: 0; color: var(--text); font-family: var(--mono); font-size: .72rem; text-transform: uppercase; }
.eyebrow { margin: 0 0 1.35rem; font: 400 .72rem/1.4 var(--mono); color: var(--green); letter-spacing: .14em; text-transform: uppercase; }
.button { display: inline-flex; justify-content: center; align-items: center; min-height: 50px; padding: .75rem 1.4rem; border: 1px solid var(--line-strong); font: 500 .72rem/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; transition: background .2s, border-color .2s, color .2s, transform .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--text); color: var(--bg); border-color: var(--text); }
.button-primary:hover { background: var(--green); border-color: var(--green); }
.text-link { font: 400 .76rem/1 var(--mono); color: var(--muted); letter-spacing: .04em; }
.text-link span { margin-left: .45rem; color: var(--text); }
.text-link:hover { color: var(--text); }
.section { padding: clamp(6rem, 11vw, 10rem) var(--page-pad); }
.section-intro { display: grid; grid-template-columns: minmax(10rem, .65fr) 1.25fr 1fr; gap: 3rem; align-items: start; margin: 0 auto 5rem; max-width: var(--max); }
.section-intro h2, .approach h2, .contact-band h2, .product-contact h2, .method-lead h2 { margin: 0; font-size: clamp(2rem, 4.2vw, 4.4rem); font-weight: 500; letter-spacing: -.055em; line-height: 1.02; }
.section-intro > p:last-child { max-width: 32rem; margin: .25rem 0 0; color: var(--muted); font-size: clamp(.95rem, 1.2vw, 1.08rem); }

/* Home */
.home-hero { position: relative; min-height: min(900px, 100svh); padding: clamp(9rem, 18vh, 13rem) var(--page-pad) 3rem; display: flex; flex-direction: column; justify-content: center; overflow: hidden; border-bottom: 1px solid var(--line); }
.hero-grid { position: absolute; inset: 0; opacity: .45; pointer-events: none; background-image: linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px); background-size: min(9vw, 130px) min(9vw, 130px); mask-image: linear-gradient(to right, transparent, #000 30%, #000); }
.home-hero::after { content: ''; position: absolute; width: 55vw; aspect-ratio: 1; right: -12vw; top: 50%; transform: translateY(-50%); border: 1px solid rgba(152, 195, 167, .12); border-radius: 50%; box-shadow: 0 0 0 8vw rgba(152, 195, 167, .025), 0 0 0 16vw rgba(152, 195, 167, .018); pointer-events: none; }
.home-hero > *:not(.hero-grid) { position: relative; z-index: 1; }
.home-hero h1, .product-hero h1 { max-width: 1100px; margin: 0; font-size: clamp(3.3rem, 9.3vw, 9rem); font-weight: 500; letter-spacing: -.075em; line-height: .87; }
.home-hero h1 em { color: var(--green); font-style: normal; font-weight: 400; }
.hero-copy { max-width: 660px; margin: 2.6rem 0 0; color: var(--muted); font-size: clamp(1rem, 1.55vw, 1.28rem); }
.hero-actions { display: flex; align-items: center; gap: 2rem; margin-top: 2.4rem; }
.signal-line { width: calc(100% - (2 * var(--page-pad))); position: absolute !important; bottom: 1.5rem; display: grid; grid-template-columns: auto 1fr auto 1fr auto; gap: 1rem; align-items: center; color: var(--muted); font: .62rem/1 var(--mono); letter-spacing: .12em; }
.signal-line i { height: 1px; background: var(--line); }
.signal-line b { color: var(--green); font-weight: 400; }
.products { background: #090c0b; }
.product-grid { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.product-card { position: relative; min-height: 660px; padding: clamp(1.5rem, 3vw, 3rem); display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; background: var(--bg); transition: background .35s; }
.product-card:hover { background: var(--surface); }
.product-meta { position: relative; z-index: 2; display: flex; justify-content: space-between; color: var(--muted); font: .66rem/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.product-symbol { position: absolute; inset: 11% 8% 30%; display: grid; place-items: center; opacity: .8; transition: transform .6s cubic-bezier(.2,.7,.2,1), opacity .4s; }
.product-card:hover .product-symbol { transform: scale(1.04); opacity: 1; }
.sword-symbol::before { content: ''; width: 1px; height: 80%; background: linear-gradient(transparent, var(--red), transparent); transform: rotate(38deg); box-shadow: 0 0 30px var(--red); }
.sword-symbol::after { content: ''; position: absolute; width: 46%; height: 1px; background: var(--red-soft); transform: rotate(38deg) translateY(3rem); }
.sword-symbol span { position: absolute; width: 52%; aspect-ratio: 1; border: 1px solid rgba(240, 75, 72, .15); border-radius: 50%; box-shadow: 0 0 0 4rem rgba(240, 75, 72, .02); }
.wall-symbol::before, .wall-symbol::after, .wall-symbol span { content: ''; position: absolute; border: 1px solid rgba(87, 183, 255, .32); }
.wall-symbol::before { width: 55%; aspect-ratio: 1; transform: rotate(45deg); box-shadow: inset 0 0 40px rgba(87,183,255,.04), 0 0 45px rgba(87,183,255,.06); }
.wall-symbol::after { width: 35%; aspect-ratio: 1; border-color: rgba(87, 183, 255, .5); transform: rotate(45deg); }
.wall-symbol span { width: 11%; aspect-ratio: 1; background: rgba(87,183,255,.1); border-color: var(--blue); transform: rotate(45deg); box-shadow: 0 0 40px rgba(87,183,255,.25); }
.stair-symbol { transform: rotate(-28deg); }
.product-card:hover .stair-symbol { transform: rotate(-28deg) scale(1.04); }
.stair-symbol::before { content: ''; width: 62%; height: 62%; border: solid rgba(228,183,94,.55); border-width: 0 0 1px 1px; background: repeating-linear-gradient(90deg, transparent 0 14%, rgba(228,183,94,.22) 14% 14.5%); box-shadow: -18px 18px 45px rgba(228,183,94,.04); }
.stair-symbol::after { content: ''; position: absolute; width: 9px; aspect-ratio: 1; right: 16%; top: 13%; border: 1px solid var(--amber); transform: rotate(45deg); background: rgba(228,183,94,.16); box-shadow: 0 0 30px rgba(228,183,94,.55); }
.stair-symbol span { position: absolute; width: 68%; height: 1px; background: linear-gradient(90deg, transparent, var(--amber)); transform: translate(7%, -2rem); box-shadow: 0 0 18px rgba(228,183,94,.35); }
.product-copy { position: relative; z-index: 2; max-width: 30rem; }
.product-label { margin: 0 0 .6rem; color: var(--muted); font: .64rem/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.product-copy h3 { margin: 0 0 1.1rem; font-size: clamp(2.3rem, 4vw, 4rem); font-weight: 500; letter-spacing: -.05em; }
.product-copy > p:not(.product-label) { min-height: 5.3rem; margin: 0 0 1.8rem; color: var(--muted); font-size: .95rem; }
.card-link { font: .72rem/1 var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.card-link b { display: inline-block; margin-left: .5rem; font-size: 1rem; transition: transform .2s; }
.product-card:hover .card-link b { transform: translateX(.4rem); }
.product-card.sword .card-link { color: var(--red); }
.product-card.wall .card-link { color: var(--blue); }
.product-card.stair .card-link { color: var(--amber); }
.agentic-overview { background: #0c100f; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.agentic-lanes { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--line); }
.agentic-lane { --lane: var(--green); min-height: 520px; padding: clamp(1.7rem, 3vw, 3rem); display: flex; flex-direction: column; border-right: 1px solid var(--line); background: rgba(8,11,10,.55); transition: background .25s; }
.agentic-lane:last-child { border-right: 0; }
.agentic-lane:hover { background: rgba(255,255,255,.018); }
.agentic-lane.offense-lane { --lane: var(--red); }
.agentic-lane.defense-lane { --lane: var(--blue); }
.agentic-lane > div { display: flex; justify-content: space-between; color: var(--muted); font: .65rem/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.agentic-lane > div b { color: var(--lane); font-weight: 400; }
.agentic-lane h3 { max-width: 28rem; margin: 4.5rem 0 1rem; font-size: clamp(1.8rem, 3.2vw, 3.2rem); font-weight: 500; letter-spacing: -.045em; line-height: 1.05; }
.agentic-lane > p { max-width: 34rem; margin: 0; color: var(--muted); font-size: .92rem; }
.agentic-lane ul { margin: 2.2rem 0; padding: 1.4rem 0 0; display: grid; grid-template-columns: 1fr 1fr; gap: .7rem 1.5rem; border-top: 1px solid var(--line); list-style: none; }
.agentic-lane li { color: #b4bdb7; font: .68rem/1.5 var(--mono); }
.agentic-lane li::before { content: '+'; margin-right: .5rem; color: var(--lane); }
.agentic-lane > a { margin-top: auto; color: var(--lane); font: .7rem/1 var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.approach { max-width: var(--max); margin: 0 auto; }
.approach-heading { display: grid; grid-template-columns: .65fr 2.25fr; gap: 3rem; margin-bottom: 6rem; }
.principles { display: grid; grid-template-columns: repeat(3, 1fr); margin-left: calc(28.5% + 1.3rem); border-top: 1px solid var(--line); }
.principle { padding: 2.2rem 2rem 2rem 0; border-right: 1px solid var(--line); }
.principle + .principle { padding-left: 2rem; }
.principle:last-child { border-right: 0; }
.principle span { color: var(--green); font: .65rem/1 var(--mono); }
.principle h3 { margin: 2.5rem 0 .9rem; font-size: 1.05rem; font-weight: 500; }
.principle p { margin: 0; color: var(--muted); font-size: .88rem; }
.founder-preview { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: .55fr 1.5fr .7fr; gap: clamp(2.5rem, 6vw, 7rem); align-items: center; border-top: 1px solid var(--line); }
.founder-preview-mark { width: min(18vw, 210px); aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(152,195,167,.3); transform: rotate(45deg); box-shadow: inset 0 0 60px rgba(152,195,167,.025), 0 0 0 2.2rem rgba(152,195,167,.018); }
.founder-preview-mark span { color: var(--green); font: 400 clamp(1.2rem, 2.3vw, 2rem)/1 var(--mono); letter-spacing: .12em; transform: rotate(-45deg); }
.founder-preview-copy h2 { margin: 0; font-size: clamp(2rem, 4.2vw, 4.4rem); font-weight: 500; letter-spacing: -.055em; line-height: 1.02; }
.founder-preview-copy > p:not(.eyebrow) { max-width: 43rem; margin: 1.7rem 0 2rem; color: var(--muted); }
.founder-preview-proof { padding-left: 2rem; display: flex; flex-direction: column; border-left: 1px solid var(--line); }
.founder-preview-proof span { margin-bottom: 1.5rem; color: var(--muted); font: .62rem/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.founder-preview-proof strong { padding: .8rem 0; border-bottom: 1px solid var(--line); font: 400 .78rem/1 var(--mono); letter-spacing: .06em; }
.contact-band { max-width: var(--max); margin: 0 auto; padding: 6rem var(--page-pad); display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; border-top: 1px solid var(--line); }
.contact-options { display: flex; flex-direction: column; }
.contact-options a { padding: 1.4rem 0; display: flex; flex-direction: column; border-bottom: 1px solid var(--line); }
.contact-options span { color: var(--muted); font: .66rem/1.4 var(--mono); letter-spacing: .07em; text-transform: uppercase; }
.contact-options strong { margin-top: .35rem; font: 400 clamp(.95rem, 1.5vw, 1.25rem)/1.4 var(--mono); }
.contact-options a:hover strong { color: var(--green); }
.site-footer, .product-footer { padding: 2rem var(--page-pad); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 2rem; border-top: 1px solid var(--line); color: var(--muted); font: .65rem/1.4 var(--mono); letter-spacing: .06em; }
.site-footer > :last-child, .product-footer > :last-child { justify-self: end; }

/* Product pages */
.product-page { --product: var(--text); --product-soft: var(--line); background: #090909; }
.sword-page { --product: var(--red); --product-soft: rgba(240,75,72,.16); background: #0b0808; }
.wall-page { --product: var(--blue); --product-soft: rgba(87,183,255,.14); background: #070b10; }
.stair-page { --product: var(--amber); --product-soft: rgba(228,183,94,.14); background: #0d0b07; }
.product-page .brand-mark::after, .product-page .eyebrow { color: var(--product); }
.product-header { grid-template-columns: 1fr auto 1fr; }
.product-header .site-nav { justify-self: end; }
.product-name { font: 500 .8rem/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.product-name small { color: var(--muted); font-size: .62rem; }
.product-page .site-header.is-scrolled { background: color-mix(in srgb, var(--bg) 91%, transparent); }
.product-hero { position: relative; min-height: min(920px, 100svh); padding: clamp(10rem, 19vh, 14rem) var(--page-pad) 5rem; display: flex; flex-direction: column; justify-content: center; overflow: hidden; border-bottom: 1px solid var(--line); }
.product-hero > *:not(.sword-scan):not(.wall-orbit):not(.stair-trajectory) { position: relative; z-index: 2; }
.product-hero h1 { max-width: 1200px; font-size: clamp(3.4rem, 8.8vw, 8.5rem); }
.product-hero h1 em { color: var(--product); font-style: normal; }
.product-hero .hero-copy { max-width: 730px; }
.sword-scan { position: absolute; inset: 0; opacity: .7; background: linear-gradient(112deg, transparent 55%, rgba(240,75,72,.05) 55%, transparent 56%), repeating-linear-gradient(0deg, transparent 0 42px, rgba(240,75,72,.035) 43px); }
.sword-scan::before { content: ''; position: absolute; right: 13%; top: 5%; width: 1px; height: 105%; background: linear-gradient(transparent 5%, var(--red), transparent 90%); transform: rotate(32deg); box-shadow: 0 0 40px rgba(240,75,72,.8); }
.sword-scan::after { content: 'TARGET / ACQUIRED'; position: absolute; right: 7%; bottom: 18%; color: rgba(240,75,72,.45); font: .58rem/1 var(--mono); letter-spacing: .2em; transform: rotate(-58deg); }
.wall-orbit { position: absolute; width: min(55vw, 750px); aspect-ratio: 1; right: -3vw; top: 50%; transform: translateY(-50%); border: 1px solid rgba(87,183,255,.15); border-radius: 50%; box-shadow: inset 0 0 100px rgba(87,183,255,.025), 0 0 0 8vw rgba(87,183,255,.018); }
.wall-orbit::before, .wall-orbit::after, .wall-orbit i { content: ''; position: absolute; inset: 13%; border: 1px solid rgba(87,183,255,.17); border-radius: 50%; }
.wall-orbit::after { inset: 35%; border-color: rgba(87,183,255,.4); background: rgba(87,183,255,.025); box-shadow: 0 0 50px rgba(87,183,255,.12); }
.wall-orbit i:nth-child(1) { clip-path: inset(0 48% 0 48%); }
.wall-orbit i:nth-child(2) { clip-path: inset(48% 0 48% 0); }
.wall-orbit i:nth-child(3) { inset: 47%; border-color: var(--blue); background: var(--blue); box-shadow: 0 0 35px var(--blue); }
.stair-trajectory { position: absolute; width: min(58vw, 820px); aspect-ratio: 1; right: -4vw; top: 50%; transform: translateY(-50%) rotate(-28deg); border: 1px solid rgba(228,183,94,.13); border-width: 0 0 1px 1px; background: repeating-linear-gradient(90deg, transparent 0 11%, rgba(228,183,94,.04) 11% 11.2%); }
.stair-trajectory::before { content: ''; position: absolute; width: 1px; height: 76%; right: 18%; top: -2%; background: linear-gradient(transparent, var(--amber)); box-shadow: 0 0 22px rgba(228,183,94,.5); }
.stair-trajectory::after { content: 'TRAJECTORY / NOMINAL'; position: absolute; right: 4%; top: -6%; color: rgba(228,183,94,.5); font: .58rem/1 var(--mono); letter-spacing: .18em; transform: rotate(90deg); transform-origin: bottom right; }
.stair-trajectory i { position: absolute; width: 11px; aspect-ratio: 1; border: 1px solid rgba(228,183,94,.7); background: #151006; transform: rotate(45deg); box-shadow: 0 0 22px rgba(228,183,94,.22); }
.stair-trajectory i:nth-child(1) { left: 9%; bottom: 8%; }
.stair-trajectory i:nth-child(2) { left: 28%; bottom: 27%; }
.stair-trajectory i:nth-child(3) { left: 47%; bottom: 46%; }
.stair-trajectory i:nth-child(4) { left: 66%; bottom: 65%; }
.stair-trajectory i:nth-child(5) { left: 85%; bottom: 84%; border-color: var(--amber); background: var(--amber); box-shadow: 0 0 34px rgba(228,183,94,.65); }
.sword-button { border-color: var(--red); color: #fff; background: var(--red-soft); }
.sword-button:hover { background: var(--red); }
.wall-button { border-color: var(--blue); color: #061018; background: var(--blue); }
.wall-button:hover { background: #8ccfff; border-color: #8ccfff; }
.stair-button { border-color: var(--amber); color: #130f07; background: var(--amber); }
.stair-button:hover { background: #f1cf88; border-color: #f1cf88; }
.scope-strip { position: absolute !important; inset: auto var(--page-pad) 1.5rem; display: flex; flex-wrap: wrap; gap: .6rem 1.6rem; }
.scope-strip span { color: var(--muted); font: .58rem/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.scope-strip span::before { content: '+'; margin-right: .45rem; color: var(--product); }
.product-section { border-bottom: 1px solid var(--line); }
.agentic-section { border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--product) 3%, transparent); }
.agentic-grid { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); border: solid var(--line); border-width: 1px 0 0 1px; }
.agentic-grid article { min-height: 310px; padding: 2.1rem; border: solid var(--line); border-width: 0 1px 1px 0; background: rgba(7,8,8,.38); }
.agentic-grid span { color: var(--product); font: .62rem/1 var(--mono); letter-spacing: .09em; text-transform: uppercase; }
.agentic-grid h3 { margin: 5rem 0 .8rem; font-size: 1.05rem; font-weight: 500; }
.agentic-grid p { margin: 0; color: var(--muted); font-size: .86rem; }
.service-list { max-width: var(--max); margin: 0 auto; border-top: 1px solid var(--line); }
.service-row { display: grid; grid-template-columns: .35fr 1fr 1.5fr; gap: 2rem; padding: 2.2rem 0; border-bottom: 1px solid var(--line); }
.service-row > span, .trust-cards span, .use-grid span { color: var(--product); font: .66rem/1.5 var(--mono); }
.service-row h3 { margin: 0; font-size: 1.15rem; font-weight: 500; }
.service-row p { max-width: 620px; margin: 0; color: var(--muted); font-size: .92rem; }
.method-section { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: .9fr 1.35fr; gap: clamp(4rem, 9vw, 10rem); }
.method-lead > p:last-child { max-width: 30rem; margin: 2rem 0 0; color: var(--muted); }
.method-grid { display: grid; grid-template-columns: 1fr 1fr; }
.method-grid article { min-height: 240px; padding: 1.75rem; border: solid var(--line); border-width: 1px 1px 0 0; }
.method-grid article:nth-child(-n+2) { border-top: 0; }
.method-grid article:nth-child(even) { border-right: 0; }
.method-grid b { color: var(--product); font: 400 .65rem/1 var(--mono); }
.method-grid h3 { margin: 3.2rem 0 .7rem; font-size: 1rem; font-weight: 500; }
.method-grid p { margin: 0; color: var(--muted); font-size: .85rem; }
.product-contact { min-height: 600px; padding: 8rem var(--page-pad); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; border-top: 1px solid var(--line); position: relative; overflow: hidden; }
.product-contact::after { content: ''; position: absolute; width: 35vw; aspect-ratio: 1; right: 8vw; border: 1px solid var(--product-soft); transform: rotate(45deg); }
.sword-contact::after { border-radius: 50%; box-shadow: 0 0 0 5vw rgba(240,75,72,.015), 0 0 0 10vw rgba(240,75,72,.01); }
.product-contact > * { position: relative; z-index: 1; }
.product-contact > p:not(.eyebrow) { max-width: 520px; margin: 1.6rem 0 2rem; color: var(--muted); }
.product-footer a:hover { color: var(--product); }

/* Wallfacer */
.trust-cards { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line); }
.trust-cards article { min-height: 310px; padding: 2.2rem; border-right: 1px solid var(--line); }
.trust-cards article:last-child { border: 0; }
.trust-cards h3 { margin: 5rem 0 .8rem; font-size: 1.05rem; font-weight: 500; }
.trust-cards p { margin: 0; color: var(--muted); font-size: .88rem; }
.attestation-flow { max-width: var(--max); margin: 4.5rem auto 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); list-style: none; counter-reset: step; }
.attestation-flow li { position: relative; padding: 2rem 1.5rem 0 0; border-top: 1px solid var(--line); }
.attestation-flow li::before { content: ''; position: absolute; top: -4px; left: 0; width: 7px; height: 7px; border-radius: 50%; background: var(--blue); box-shadow: 0 0 15px var(--blue); }
.attestation-flow b { display: block; margin-bottom: .55rem; font: 500 .78rem/1 var(--mono); color: var(--text); text-transform: uppercase; letter-spacing: .08em; }
.attestation-flow span { display: block; max-width: 15rem; color: var(--muted); font-size: .82rem; }
.wall-capabilities { background: #091019; border-bottom: 1px solid var(--line); }
.capability-grid { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); border: solid var(--line); border-width: 1px 0 0 1px; }
.capability-grid article { min-height: 240px; padding: 2rem; border: solid var(--line); border-width: 0 1px 1px 0; background: rgba(7,11,16,.35); }
.capability-grid article::before { content: '◆'; display: block; margin-bottom: 3rem; color: var(--blue); font-size: .6rem; }
.capability-grid h3 { margin: 0 0 .75rem; font-size: 1rem; font-weight: 500; }
.capability-grid p { margin: 0; color: var(--muted); font-size: .85rem; }
.fhe-module { max-width: var(--max); margin: 5rem auto 0; display: grid; grid-template-columns: .8fr 1.7fr; gap: clamp(3rem, 8vw, 8rem); padding-top: 5rem; border-top: 1px solid var(--line); }
.fhe-lead h3 { margin: 0; font-size: clamp(2rem, 3.6vw, 3.8rem); font-weight: 500; letter-spacing: -.05em; line-height: 1.02; }
.fhe-lead > p:last-child { max-width: 31rem; margin: 1.7rem 0 0; color: var(--muted); font-size: .9rem; }
.fhe-cases { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.fhe-cases article { padding: 1.8rem 1.6rem 1.8rem 0; border-right: 1px solid var(--line); }
.fhe-cases article + article { padding-left: 1.6rem; }
.fhe-cases article:last-child { border-right: 0; }
.fhe-cases span { color: var(--blue); font: .62rem/1 var(--mono); }
.fhe-cases h4 { min-height: 3rem; margin: 3.5rem 0 .75rem; font-size: .95rem; font-weight: 500; }
.fhe-cases p { margin: 0; color: var(--muted); font-size: .82rem; }
.use-section { max-width: var(--max); margin: 0 auto; }
.use-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); }
.use-grid article { padding: 2rem 2rem 2rem 0; border-right: 1px solid var(--line); }
.use-grid article + article { padding-left: 2rem; }
.use-grid article:last-child { border-right: 0; }
.use-grid h3 { min-height: 3rem; margin: 3.5rem 0 .7rem; font-size: .98rem; font-weight: 500; }
.use-grid p { margin: 0; color: var(--muted); font-size: .83rem; }

/* Staircase */
.stair-mlops { background: #110e08; }
.onprem-section { border-bottom: 1px solid var(--line); background: #0a0b09; }
.scale-grid { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); border: solid var(--line); border-width: 1px 0 0 1px; }
.scale-grid > article { min-height: 450px; padding: 2rem; border: solid var(--line); border-width: 0 1px 1px 0; }
.scale-grid > article > span { color: var(--amber); font: .62rem/1 var(--mono); letter-spacing: .09em; text-transform: uppercase; }
.scale-grid h3 { margin: 2.4rem 0 .75rem; font-size: 1.08rem; font-weight: 500; }
.scale-grid p { margin: 0; color: var(--muted); font-size: .86rem; }
.scale-visual { height: 150px; margin-bottom: 2.3rem; padding: 1.2rem; display: grid; align-content: end; gap: 5px; border: 1px solid rgba(228,183,94,.12); background: repeating-linear-gradient(0deg, transparent 0 24px, rgba(228,183,94,.025) 25px); }
.scale-visual i { display: block; height: 8px; border: 1px solid rgba(228,183,94,.55); background: rgba(228,183,94,.055); box-shadow: 0 0 12px rgba(228,183,94,.025); }
.scale-small { grid-template-columns: 42%; }
.scale-medium { grid-template-columns: 38% 38%; column-gap: 7%; }
.scale-large { grid-template-columns: repeat(3, 26%); column-gap: 6%; }
.delivery-section { border-bottom: 1px solid var(--line); }
.delivery-path { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.delivery-path article { position: relative; min-height: 300px; padding: 2rem 2rem 2rem 0; border-right: 1px solid var(--line); }
.delivery-path article + article { padding-left: 2rem; }
.delivery-path article:last-child { border-right: 0; }
.delivery-path article::after { content: '→'; position: absolute; top: 1.7rem; right: 1.7rem; color: rgba(228,183,94,.36); font: 1rem/1 var(--mono); }
.delivery-path article:last-child::after { content: '◆'; font-size: .65rem; }
.delivery-path span { color: var(--amber); font: .62rem/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.delivery-path h3 { margin: 5rem 0 .8rem; font-size: 1.08rem; font-weight: 500; }
.delivery-path p { margin: 0; color: var(--muted); font-size: .86rem; }
.stair-method { background: rgba(228,183,94,.018); }
.stair-contact::after { width: 42vw; border-color: rgba(228,183,94,.16); box-shadow: 0 0 0 4vw rgba(228,183,94,.012), 0 0 0 8vw rgba(228,183,94,.008); }

/* Founder */
.founder-page { background: #080b0a; }
.founder-hero { position: relative; min-height: min(920px, 100svh); padding: clamp(10rem, 19vh, 14rem) var(--page-pad) 6rem; display: flex; flex-direction: column; justify-content: center; overflow: hidden; border-bottom: 1px solid var(--line); }
.founder-hero > *:not(.founder-field) { position: relative; z-index: 2; }
.founder-identity { display: flex; align-items: center; gap: 1.2rem; margin-bottom: 2rem; }
.founder-identity .eyebrow { margin: 0; }
.founder-monogram { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid rgba(152,195,167,.35); transform: rotate(45deg); }
.founder-monogram span { color: var(--green); font: .62rem/1 var(--mono); letter-spacing: .08em; transform: rotate(-45deg); }
.founder-hero h1 { max-width: 1240px; margin: 0; font-size: clamp(3.2rem, 8vw, 8rem); font-weight: 500; letter-spacing: -.075em; line-height: .9; }
.founder-hero h1 em { color: var(--green); font-style: normal; font-weight: 400; }
.founder-hero .hero-copy { max-width: 750px; }
.founder-field { position: absolute; width: min(58vw, 800px); aspect-ratio: 1; right: -9vw; top: 50%; transform: translateY(-50%) rotate(45deg); border: 1px solid rgba(152,195,167,.12); }
.founder-field::before, .founder-field::after, .founder-field i { content: ''; position: absolute; border: 1px solid rgba(152,195,167,.1); }
.founder-field::before { inset: 12%; }
.founder-field::after { inset: 28%; background: rgba(152,195,167,.012); }
.founder-field i:nth-child(1) { inset: 44%; border-color: rgba(152,195,167,.45); box-shadow: 0 0 35px rgba(152,195,167,.16); }
.founder-field i:nth-child(2) { left: 50%; top: -25%; bottom: -25%; border-width: 0 0 0 1px; }
.founder-field i:nth-child(3) { top: 50%; left: -25%; right: -25%; border-width: 1px 0 0; }
.founder-scope { --product: var(--green); }
.founder-intro { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(4rem, 10vw, 12rem); align-items: start; }
.founder-statement h2, .credentials-lead h2 { margin: 0; font-size: clamp(2.2rem, 4.6vw, 4.8rem); font-weight: 500; letter-spacing: -.057em; line-height: 1.03; }
.founder-summary { padding-top: 3.7rem; border-top: 1px solid var(--line); }
.founder-summary p { margin: 0 0 1.4rem; color: var(--muted); font-size: clamp(.96rem, 1.25vw, 1.08rem); }
.experience-section { background: #0b100e; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.career-timeline { max-width: var(--max); margin: 0 auto; border-top: 1px solid var(--line); }
.career-row { display: grid; grid-template-columns: .6fr .9fr 1.5fr; gap: clamp(1.5rem, 4vw, 4rem); padding: 3rem 0; border-bottom: 1px solid var(--line); }
.career-when { display: flex; flex-direction: column; gap: .65rem; }
.career-when span, .career-role p { margin: 0; color: var(--green); font: .62rem/1.4 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.career-when b { color: var(--muted); font: 400 .72rem/1.4 var(--mono); letter-spacing: .05em; }
.career-role h3 { max-width: 21rem; margin: .65rem 0 0; font-size: clamp(1.15rem, 2vw, 1.65rem); font-weight: 500; letter-spacing: -.03em; line-height: 1.15; }
.career-detail > p { max-width: 48rem; margin: 0; color: #b0bab3; font-size: .92rem; }
.career-detail ul { margin: 1.4rem 0 0; padding: 1.2rem 0 0; display: flex; flex-wrap: wrap; gap: .55rem 1.5rem; border-top: 1px solid var(--line); list-style: none; }
.career-detail li { color: var(--muted); font: .64rem/1.5 var(--mono); }
.career-detail li::before { content: '+'; margin-right: .45rem; color: var(--green); }
.career-now .career-when span, .career-now .career-role p { color: var(--text); }
.perspective-section { border-bottom: 1px solid var(--line); }
.perspective-grid { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: repeat(4, 1fr); border: solid var(--line); border-width: 1px 0 0 1px; }
.perspective-grid article { min-height: 330px; padding: 2rem; border: solid var(--line); border-width: 0 1px 1px 0; }
.perspective-grid span, .credential-list span { color: var(--green); font: .62rem/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.perspective-grid h3 { margin: 5.5rem 0 .8rem; font-size: 1.05rem; font-weight: 500; }
.perspective-grid p { margin: 0; color: var(--muted); font-size: .86rem; }
.credentials-section { max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: .75fr 1.4fr; gap: clamp(4rem, 9vw, 10rem); }
.credentials-lead > p:not(.eyebrow) { max-width: 28rem; margin: 1.7rem 0 2rem; color: var(--muted); }
.credential-list { display: grid; grid-template-columns: 1fr 1fr; }
.credential-list article { min-height: 230px; padding: 1.8rem; border: solid var(--line); border-width: 1px 1px 0 0; }
.credential-list article:nth-child(-n+2) { border-top: 0; }
.credential-list article:nth-child(even) { border-right: 0; }
.credential-list h3 { margin: 3.2rem 0 .65rem; font-size: 1.05rem; font-weight: 500; }
.credential-list p { margin: 0; color: var(--muted); font-size: .84rem; }
.founder-contact .contact-options a:last-child strong { font-size: clamp(.9rem, 1.3vw, 1.08rem); }

.not-found { min-height: 100svh; display: grid; place-items: center; padding: 2rem; }
.not-found main { max-width: 700px; text-align: center; }
.not-found h1 { margin: 0; font-size: clamp(3rem, 8vw, 7rem); letter-spacing: -.06em; line-height: .95; }
.not-found main > p:not(.eyebrow) { color: var(--muted); margin: 1.5rem 0 2rem; }

.reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.reveal.is-visible { opacity: 1; transform: none; }

@media (max-width: 920px) {
  .section-intro { grid-template-columns: 1fr 2fr; }
  .section-intro > p:last-child { grid-column: 2; }
  .product-grid { grid-template-columns: 1fr; }
  .agentic-lanes { grid-template-columns: 1fr; }
  .agentic-lane { border-right: 0; border-bottom: 1px solid var(--line); }
  .agentic-lane:last-child { border-bottom: 0; }
  .product-card { min-height: 590px; }
  .approach-heading { grid-template-columns: 1fr 2fr; }
  .principles { margin-left: 0; }
  .founder-preview { grid-template-columns: .5fr 1.5fr; }
  .founder-preview-proof { grid-column: 2; padding: 2rem 0 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 1.5rem; border: 0; border-top: 1px solid var(--line); }
  .founder-preview-proof span { grid-column: 1 / -1; }
  .method-section { grid-template-columns: 1fr; }
  .trust-cards { grid-template-columns: 1fr; }
  .trust-cards article { min-height: auto; border: 0; border-bottom: 1px solid var(--line); }
  .trust-cards h3 { margin-top: 3rem; }
  .capability-grid { grid-template-columns: 1fr 1fr; }
  .agentic-grid { grid-template-columns: 1fr 1fr; }
  .fhe-module { grid-template-columns: 1fr; }
  .use-grid { grid-template-columns: 1fr 1fr; }
  .use-grid article:nth-child(2) { border-right: 0; }
  .career-row { grid-template-columns: .45fr .8fr 1.5fr; }
  .perspective-grid { grid-template-columns: 1fr 1fr; }
  .credentials-section { grid-template-columns: 1fr; }
  .scale-grid { grid-template-columns: 1fr; }
  .scale-grid > article { min-height: 390px; }
  .product-header { grid-template-columns: 1fr 1fr; }
  .product-name { display: none; }
}

@media (max-width: 680px) {
  section[id] { scroll-margin-top: 66px; }
  .site-header { height: 66px; }
  .menu-toggle { display: block; justify-self: end; }
  .site-nav { position: absolute; inset: 66px 0 auto; padding: 1.5rem var(--page-pad) 2rem; display: none; flex-direction: column; align-items: flex-start; gap: 1.2rem; background: rgba(8,11,10,.98); border-bottom: 1px solid var(--line); }
  .site-nav.is-open { display: flex; }
  .product-header .site-nav { justify-self: stretch; }
  .home-hero h1, .product-hero h1 { font-size: clamp(3.1rem, 16vw, 5rem); }
  .home-hero { min-height: 760px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 1.5rem; }
  .signal-line { grid-template-columns: auto 1fr auto; }
  .signal-line i:nth-of-type(2), .signal-line span:last-child { display: none; }
  .section-intro { grid-template-columns: 1fr; gap: 1rem; margin-bottom: 3rem; }
  .section-intro > p:last-child { grid-column: auto; margin-top: 1rem; }
  .product-card { min-height: 520px; }
  .agentic-lane { min-height: 480px; }
  .agentic-lane h3 { margin-top: 3.5rem; }
  .agentic-lane ul { grid-template-columns: 1fr; }
  .product-symbol { inset: 8% 8% 37%; }
  .approach-heading { grid-template-columns: 1fr; gap: 1rem; margin-bottom: 3.5rem; }
  .principles { grid-template-columns: 1fr; }
  .principle, .principle + .principle { padding: 1.8rem 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .principle h3 { margin-top: 1.5rem; }
  .founder-preview { grid-template-columns: 1fr; }
  .founder-preview-mark { width: 120px; margin: 1rem 0 2.5rem; }
  .founder-preview-proof { grid-column: auto; grid-template-columns: 1fr; }
  .contact-band { grid-template-columns: 1fr; gap: 3rem; }
  .site-footer, .product-footer { grid-template-columns: 1fr; gap: 1rem; }
  .site-footer > :last-child, .product-footer > :last-child { justify-self: start; }
  .product-hero { min-height: 800px; padding-bottom: 7rem; }
  .scope-strip { gap: .65rem 1rem; }
  .wall-orbit { width: 100vw; opacity: .7; right: -42vw; }
  .stair-trajectory { width: 115vw; right: -62vw; opacity: .62; }
  .service-row { grid-template-columns: 2.5rem 1fr; gap: 1rem; }
  .service-row p { grid-column: 2; }
  .method-grid { grid-template-columns: 1fr; }
  .method-grid article { min-height: 210px; border-width: 1px 0 0; }
  .method-grid article:nth-child(2) { border-top: 1px solid var(--line); }
  .product-contact { min-height: 540px; }
  .product-contact::after { width: 70vw; right: -30vw; opacity: .7; }
  .attestation-flow { grid-template-columns: 1fr 1fr; row-gap: 2rem; }
  .capability-grid { grid-template-columns: 1fr; }
  .agentic-grid { grid-template-columns: 1fr; }
  .agentic-grid article { min-height: 270px; }
  .agentic-grid h3 { margin-top: 3.5rem; }
  .fhe-cases { grid-template-columns: 1fr; }
  .fhe-cases article, .fhe-cases article + article { padding: 1.7rem 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .fhe-cases h4 { min-height: auto; margin-top: 1.8rem; }
  .use-grid { grid-template-columns: 1fr; }
  .use-grid article, .use-grid article + article { padding: 1.8rem 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .use-grid h3 { min-height: auto; margin-top: 1.7rem; }
  .delivery-path { grid-template-columns: 1fr; }
  .delivery-path article, .delivery-path article + article { min-height: 250px; padding: 1.8rem 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .delivery-path h3 { margin-top: 3.5rem; }
  .founder-hero { min-height: 830px; padding-bottom: 7rem; }
  .founder-hero h1 { font-size: clamp(3rem, 15vw, 5rem); }
  .founder-field { width: 110vw; right: -65vw; opacity: .65; }
  .founder-intro { grid-template-columns: 1fr; gap: 3.5rem; }
  .founder-summary { padding-top: 2rem; }
  .career-row { grid-template-columns: 1fr; gap: 1.6rem; }
  .career-role { padding-top: 1rem; border-top: 1px solid var(--line); }
  .perspective-grid { grid-template-columns: 1fr; }
  .perspective-grid article { min-height: 270px; }
  .perspective-grid h3 { margin-top: 3.5rem; }
  .credential-list { grid-template-columns: 1fr; }
  .credential-list article { min-height: 205px; border-width: 1px 0 0; }
  .credential-list article:nth-child(2) { border-top: 1px solid var(--line); }
}

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