:root {
  --paper: #080b12;
  --white: #0d121d;
  --ink: #dce5f5;
  --black: #05070c;
  --line: #1c2940;
  --muted: #74829a;
  --orange: #294f91;
  --blue: #17386e;
  --blue-dark: #0d2449;
  --pointer-x: 50vw;
  --pointer-y: 20vh;
  --font-geist-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-geist-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--paper); }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--font-geist-sans), Arial, sans-serif; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
main { min-height: 100vh; overflow: clip; }
.motion-shell { position: relative; isolation: isolate; }
.pointer-glow { position: fixed; z-index: -1; left: var(--pointer-x); top: var(--pointer-y); width: 560px; height: 560px; border-radius: 50%; transform: translate(-50%, -50%); pointer-events: none; background: radial-gradient(circle, rgba(49,85,223,.11), rgba(255,79,47,.04) 38%, transparent 68%); filter: blur(12px); }
[data-reveal] { opacity: 0; transform: translateY(28px); transition: opacity .75s cubic-bezier(.2,.75,.2,1), transform .75s cubic-bezier(.2,.75,.2,1); transition-delay: var(--delay, 0ms); }
[data-reveal].is-visible { opacity: 1; transform: translateY(0); }

.site-header { position: sticky; top: 0; z-index: 50; height: 88px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 3.5vw; border-bottom: 1px solid rgba(17,17,15,.28); background: rgba(242,239,231,.87); backdrop-filter: blur(18px) saturate(130%); }
.brand { display: flex; align-items: center; gap: 10px; width: max-content; }
.cf-mark { width: 40px; height: 40px; display: grid; place-items: center; background: var(--orange); color: white; font: 800 11px var(--font-geist-mono); letter-spacing: -.06em; transition: transform .35s ease, border-radius .35s ease; }
.brand:hover .cf-mark { transform: rotate(-8deg) scale(1.06); border-radius: 50%; }
.cf-wordmark { font-weight: 900; font-size: 12px; line-height: .88; letter-spacing: -.045em; }
.site-header nav { display: flex; gap: 36px; font: 700 9px var(--font-geist-mono); text-transform: uppercase; letter-spacing: .12em; }
.site-header nav a { position: relative; padding: 10px 0; }
.site-header nav a::after { content: ''; position: absolute; left: 0; right: 100%; bottom: 2px; height: 2px; background: var(--orange); transition: right .3s ease; }
.site-header nav a:hover::after { right: 0; }
.header-actions { justify-self: end; display: flex; align-items: center; gap: 19px; }
.admin-link { font: 700 9px var(--font-geist-mono); letter-spacing: .09em; text-transform: uppercase; color: #625f59; }
.header-cta { background: var(--ink); color: var(--paper); padding: 14px 18px; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; transition: background .25s, transform .25s; }
.header-cta span { color: #8fa2ff; margin-left: 14px; }
.header-cta:hover { background: var(--blue); transform: translateY(-2px); }

.hero { min-height: 755px; display: grid; grid-template-columns: 1.03fr .97fr; border-bottom: 1px solid var(--ink); position: relative; isolation: isolate; }
.hero-bg { position: absolute; inset: 0; z-index: -2; overflow: hidden; pointer-events: none; }
.hero-grid-lines { position: absolute; inset: 0; opacity: .35; background-image: linear-gradient(rgba(17,17,15,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(17,17,15,.06) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to right, #000, transparent 78%); animation: grid-drift 22s linear infinite; }
.aura { position: absolute; border-radius: 50%; filter: blur(85px); opacity: .24; animation: aura-float 12s ease-in-out infinite alternate; }
.aura-one { width: 420px; height: 420px; background: var(--orange); left: -230px; top: -210px; }
.aura-two { width: 350px; height: 350px; background: var(--blue); left: 36%; bottom: -250px; animation-delay: -5s; }
.hero-copy { padding: 96px 4.5vw 54px; border-right: 1px solid var(--ink); display: flex; flex-direction: column; justify-content: center; }
.eyebrow, .section-label { font: 700 9px var(--font-geist-mono); color: var(--blue); letter-spacing: .15em; margin: 0 0 30px; }
.hero-kicker { display: flex; justify-content: space-between; max-width: 650px; }
.hero-kicker span { color: #137b46; position: relative; padding-left: 14px; }
.hero-kicker span::before { content: ''; position: absolute; width: 6px; height: 6px; border-radius: 50%; left: 0; top: 2px; background: #20c46f; box-shadow: 0 0 0 5px rgba(32,196,111,.12); animation: pulse 1.8s ease-out infinite; }
.hero h1 { font-size: clamp(57px, 6.5vw, 105px); line-height: .87; letter-spacing: -.075em; margin: 0; font-weight: 820; max-width: 900px; }
.hero h1 em, .section h2 em { font-style: normal; color: var(--orange); }
.hero h1 em { display: inline-block; position: relative; }
.hero h1 em::after { content: ''; position: absolute; left: 3px; right: 0; bottom: -10px; height: 3px; background: linear-gradient(90deg, var(--orange), transparent); transform-origin: left; animation: draw-line 1.2s .4s both cubic-bezier(.2,.8,.2,1); }
.lede { max-width: 620px; color: #55514b; line-height: 1.68; font-size: 16px; margin: 38px 0; }
.hero-actions { display: flex; gap: 10px; margin-bottom: 72px; }
.primary-button, .secondary-button, .light-button { display: inline-flex; align-items: center; justify-content: space-between; padding: 16px 20px; min-width: 190px; font-size: 10px; font-weight: 850; text-transform: uppercase; letter-spacing: .07em; transition: transform .25s, box-shadow .25s, background .25s; }
.primary-button { background: var(--blue); color: white; box-shadow: 0 14px 35px rgba(49,85,223,.18); }
.secondary-button { border: 1px solid var(--ink); }
.primary-button span, .light-button span { margin-left: 30px; transition: transform .25s; }
.primary-button:hover, .secondary-button:hover, .light-button:hover { transform: translateY(-3px); box-shadow: 0 16px 36px rgba(17,17,15,.14); }
.primary-button:hover span, .light-button:hover span { transform: translateX(5px); }
.brand-row { margin-top: auto; border-top: 1px solid var(--ink); padding-top: 22px; display: flex; gap: 29px; flex-wrap: wrap; color: #77726a; font: 800 9px var(--font-geist-mono); letter-spacing: .1em; }

.compute-stage { position: relative; min-height: 755px; overflow: hidden; color: white; background: radial-gradient(circle at 50% 47%, rgba(79,105,226,.45), transparent 23%), radial-gradient(circle at 50% 50%, #20295a, #0b0e1b 56%, #06070a 100%); }
.compute-stage::before { content: ''; position: absolute; inset: 0; background: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 42px 42px; animation: stage-grid 15s linear infinite; }
.compute-stage::after { content: ''; position: absolute; inset: -40%; background: conic-gradient(from 180deg, transparent, rgba(49,85,223,.18), transparent 24%, rgba(255,79,47,.1), transparent 51%); animation: stage-turn 18s linear infinite; }
.stage-label { position: absolute; z-index: 4; top: 28px; left: 30px; right: 30px; display: flex; justify-content: space-between; color: #8993bf; font: 700 8px var(--font-geist-mono); letter-spacing: .14em; }
.live-dot { color: #86f5b2; padding-left: 14px; position: relative; }
.live-dot::before { content: ''; position: absolute; width: 6px; height: 6px; border-radius: 50%; left: 0; top: 2px; background: #45dc83; box-shadow: 0 0 12px #45dc83; }
.orbit { position: absolute; z-index: 2; left: 50%; top: 50%; border: 1px solid rgba(133,151,237,.38); border-radius: 50%; transform: translate(-50%, -50%); }
.orbit-one { width: 240px; height: 240px; animation: orbit-spin 12s linear infinite; }
.orbit-two { width: 410px; height: 410px; border-style: dashed; animation: orbit-spin-reverse 23s linear infinite; }
.orbit-three { width: 610px; height: 610px; opacity: .45; animation: breathe 5s ease-in-out infinite; }
.orbit-one::before, .orbit-two::before, .orbit-two::after { content: ''; position: absolute; border-radius: 50%; background: var(--orange); box-shadow: 0 0 22px var(--orange); }
.orbit-one::before { width: 9px; height: 9px; top: 14px; left: 48px; }
.orbit-two::before { width: 7px; height: 7px; right: 40px; top: 80px; background: #8da2ff; box-shadow: 0 0 20px #8da2ff; }
.orbit-two::after { width: 5px; height: 5px; left: 16px; bottom: 130px; }
.core { position: absolute; z-index: 5; left: 50%; top: 50%; width: 118px; height: 118px; transform: translate(-50%, -50%); background: linear-gradient(145deg, #5270f0, #15215b); border: 1px solid #91a3fa; box-shadow: 0 0 60px rgba(73,104,241,.65), inset 0 0 30px rgba(255,255,255,.16); display: grid; place-content: center; text-align: center; animation: core-float 4s ease-in-out infinite; }
.core::before, .core::after { content: ''; position: absolute; inset: -12px; border: 1px solid rgba(111,137,255,.35); }
.core::after { inset: -24px; border-style: dashed; animation: stage-turn 9s linear infinite; }
.core span { font: 900 28px var(--font-geist-mono); letter-spacing: -.08em; }
.core small { color: #b9c4ff; font: 800 8px var(--font-geist-mono); letter-spacing: .2em; }
.node { position: absolute; z-index: 6; width: 140px; padding: 15px; border: 1px solid rgba(152,167,238,.38); background: rgba(9,12,27,.72); backdrop-filter: blur(10px); display: flex; flex-direction: column; gap: 5px; box-shadow: 0 18px 40px rgba(0,0,0,.28); }
.node::after { content: ''; position: absolute; left: -20px; top: 50%; width: 20px; height: 1px; background: #7189f2; }
.node small { color: #7481b9; font: 700 7px var(--font-geist-mono); letter-spacing: .13em; }
.node strong { font-size: 18px; letter-spacing: -.04em; }
.node i { color: #b6c0ed; font: 700 7px var(--font-geist-mono); font-style: normal; }
.node-gpu { left: 10%; top: 28%; animation: node-float 5s ease-in-out infinite; }
.node-sys { right: 8%; top: 24%; animation: node-float 5.6s -1.2s ease-in-out infinite; }
.node-fabric { right: 12%; bottom: 19%; animation: node-float 4.8s -2.4s ease-in-out infinite; }
.node-sys::after, .node-fabric::after { left: auto; right: -20px; }
.stage-readout { position: absolute; z-index: 5; left: 30px; right: 30px; bottom: 30px; border-top: 1px solid rgba(139,153,221,.28); padding-top: 18px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: end; color: #7782af; font: 700 7px var(--font-geist-mono); letter-spacing: .12em; }
.stage-readout b { color: white; font-size: 24px; letter-spacing: -.06em; }
.stage-readout span:last-child { text-align: right; }

.marquee { overflow: hidden; background: var(--orange); color: white; border-bottom: 1px solid var(--ink); padding: 13px 0; font: 800 9px var(--font-geist-mono); letter-spacing: .13em; white-space: nowrap; }
.marquee div { width: max-content; animation: marquee 24s linear infinite; }
.marquee span { display: inline-block; }
.marquee b { color: #191919; margin: 0 22px; }
.signal-strip { display: grid; grid-template-columns: repeat(4, 1fr); padding: 0 3vw; border-bottom: 1px solid var(--ink); }
.signal-strip div { min-height: 118px; display: flex; align-items: center; gap: 16px; padding: 25px; border-right: 1px solid var(--line); transition: background .25s, color .25s; }
.signal-strip div:last-child { border-right: 0; }
.signal-strip div:hover { background: var(--ink); color: white; }
.signal-strip strong { font: 800 26px var(--font-geist-mono); color: var(--blue); }
.signal-strip div:hover strong { color: #8da1ff; }
.signal-strip span { color: #6c675f; font-size: 10px; }
.signal-strip div:hover span { color: #aaa59b; }

.section { border-bottom: 1px solid var(--ink); position: relative; }
.section-heading { padding: 112px 4vw 68px; display: grid; grid-template-columns: .38fr 1fr .56fr; gap: 40px; align-items: start; }
.section-heading h2, .about h2, .contact h2, .sourcing h2 { font-size: clamp(44px, 5.2vw, 78px); line-height: .94; letter-spacing: -.065em; margin: 0; }
.section-heading > p:last-child { color: var(--muted); font-size: 13px; line-height: 1.75; max-width: 340px; }
.capability-list { border-top: 1px solid var(--ink); }
.capability-list article { min-height: 220px; display: grid; grid-template-columns: 65px 1.1fr .8fr 100px 42px; gap: 28px; align-items: center; padding: 32px 4vw; border-bottom: 1px solid var(--line); position: relative; overflow: hidden; transition: background .35s, color .35s; }
.capability-list article::before { content: ''; position: absolute; inset: 0; background: var(--blue); transform: translateX(-101%); transition: transform .45s cubic-bezier(.2,.75,.2,1); z-index: -1; }
.capability-list article:hover { color: white; }
.capability-list article:hover::before { transform: translateX(0); }
.capability-list article:last-child { border-bottom: 0; }
.cap-no { font: 700 10px var(--font-geist-mono); color: var(--orange); }
.cap-main p { font: 700 8px var(--font-geist-mono); letter-spacing: .14em; color: var(--blue); margin: 0 0 10px; }
.capability-list article:hover .cap-main p { color: #ff9b88; }
.cap-main h3 { font-size: 31px; letter-spacing: -.05em; margin: 0 0 12px; }
.cap-main span { color: var(--muted); font-size: 12px; line-height: 1.65; max-width: 450px; display: block; }
.capability-list article:hover .cap-main span, .capability-list article:hover li { color: #c5cef7; }
.capability-list ul { list-style: none; margin: 0; padding: 0; border-left: 1px solid var(--line); }
.capability-list li { padding: 8px 0 8px 25px; font: 600 9px var(--font-geist-mono); color: #5e5a53; }
.cap-glyph { width: 82px; height: 82px; border: 1px solid var(--line); display: grid; place-items: center; font: 850 12px var(--font-geist-mono); color: var(--blue); transform: rotate(45deg); transition: transform .5s, color .3s, border-color .3s; }
.cap-glyph::first-line { transform: rotate(-45deg); }
.capability-list article:hover .cap-glyph { transform: rotate(0); color: white; border-color: rgba(255,255,255,.45); }
.capability-list article > a { width: 40px; height: 40px; border: 1px solid currentColor; display: grid; place-items: center; transition: transform .25s, background .25s; }
.capability-list article > a:hover { transform: rotate(45deg); background: white; color: var(--blue); }

.sourcing { display: grid; grid-template-columns: 1.05fr .95fr; background: var(--blue); color: white; overflow: hidden; }
.sourcing::before { content: ''; position: absolute; width: 620px; height: 620px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; left: -310px; bottom: -390px; box-shadow: 0 0 0 70px rgba(255,255,255,.025), 0 0 0 140px rgba(255,255,255,.018); animation: breathe 6s ease-in-out infinite; }
.source-pitch { padding: 112px 5vw; border-right: 1px solid rgba(255,255,255,.32); position: relative; }
.sourcing .section-label { color: #ffb09f; }
.sourcing h2 em { color: #ffad92; }
.source-pitch > p:nth-of-type(2) { max-width: 650px; line-height: 1.75; color: #d8ddf7; margin: 31px 0 42px; font-size: 13px; }
.light-button { background: white; color: var(--blue); }
.brief-card { margin-top: 76px; background: #1837ae; border: 1px solid rgba(255,255,255,.35); padding: 24px; display: flex; flex-direction: column; gap: 8px; max-width: 590px; position: relative; overflow: hidden; }
.brief-scan { position: absolute; left: 0; right: 0; top: -20%; height: 35%; background: linear-gradient(transparent, rgba(255,255,255,.13), transparent); animation: scan 3.6s ease-in-out infinite; }
.brief-card small { color: #9eadef; font: 700 8px var(--font-geist-mono); }
.brief-card strong { font: 700 13px var(--font-geist-mono); }
.brief-card span { color: #aeb9ed; font-size: 10px; }
.brief-card i { color: #ffad92; font: 700 8px var(--font-geist-mono); font-style: normal; letter-spacing: .12em; margin-top: 17px; display: flex; align-items: center; gap: 8px; }
.brief-card i b { width: 6px; height: 6px; border-radius: 50%; background: #ffad92; box-shadow: 0 0 12px #ffad92; animation: pulse 1.7s infinite; }
.source-matrix { padding: 112px 4vw; }
.source-matrix > p { font: 700 9px var(--font-geist-mono); color: #9facf0; letter-spacing: .13em; margin: 0 0 20px; }
.source-matrix article { display: grid; grid-template-columns: 55px 1fr auto; gap: 15px; align-items: center; padding: 23px 0; border-top: 1px solid rgba(255,255,255,.25); transition: padding .25s, background .25s; }
.source-matrix article:last-child { border-bottom: 1px solid rgba(255,255,255,.25); }
.source-matrix article:hover { padding-left: 14px; padding-right: 14px; background: rgba(255,255,255,.07); }
.source-matrix b { font: 700 9px var(--font-geist-mono); color: #ffad92; }
.source-matrix article div { display: flex; flex-direction: column; gap: 5px; }
.source-matrix strong { font-size: 14px; }
.source-matrix span { font-size: 10px; color: #b9c2ed; }
.source-matrix i { font-style: normal; color: #ffad92; }

.process { padding-bottom: 110px; background: linear-gradient(135deg, rgba(49,85,223,.04), transparent 45%); }
.process .section-heading { grid-template-columns: .38fr 1fr; }
.process ol { list-style: none; margin: 0 4vw; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--ink); }
.process li { min-height: 300px; padding: 28px; border-right: 1px solid var(--ink); position: relative; overflow: hidden; transition: background .3s, color .3s; }
.process li:last-child { border-right: 0; }
.process li::after { content: ''; position: absolute; width: 120px; height: 120px; border: 1px solid var(--blue); border-radius: 50%; right: -80px; top: -80px; transition: transform .5s, background .3s; }
.process li:hover { background: var(--ink); color: white; }
.process li:hover::after { transform: scale(2.4); background: rgba(49,85,223,.18); }
.process li > span { font: 700 9px var(--font-geist-mono); color: var(--orange); }
.step-glyph { font-size: 34px; color: var(--blue); height: 94px; display: flex; align-items: center; }
.process li:hover .step-glyph { color: #8fa2ff; animation: glyph-bounce .7s ease; }
.process h3 { font-size: 23px; margin: 12px 0; }
.process li p { font-size: 11px; line-height: 1.7; color: var(--muted); max-width: 230px; }
.process li:hover p { color: #aaa69e; }

.about { display: grid; grid-template-columns: 1.08fr .92fr; background: var(--black); color: var(--paper); overflow: hidden; }
.about::after { content: 'CF'; position: absolute; right: -3vw; bottom: -10vw; color: rgba(255,255,255,.025); font-weight: 900; font-size: 32vw; line-height: 1; letter-spacing: -.12em; }
.about-copy { padding: 112px 5vw; border-right: 1px solid #454542; position: relative; z-index: 1; }
.about .section-label { color: #8299ff; }
.about h2 em { color: #ff795d; }
.about-copy > p:last-child { color: #aaa69e; line-height: 1.75; max-width: 650px; margin-top: 32px; font-size: 13px; }
.about-grid { display: grid; grid-template-columns: 1fr 1fr; position: relative; z-index: 1; }
.about-grid article { padding: 45px 32px; border-right: 1px solid #40403d; border-bottom: 1px solid #40403d; display: flex; flex-direction: column; gap: 10px; transition: background .3s, transform .3s; }
.about-grid article:nth-child(2n) { border-right: 0; }
.about-grid article:hover { background: #171a26; transform: translateY(-3px); }
.about-grid strong { font: 800 40px var(--font-geist-mono); color: #ff795d; }
.about-grid span { font-size: 10px; color: #8d8982; }
.about-note { grid-column: 1 / 3 !important; border-bottom: 0 !important; }
.about-note b { font: 700 9px var(--font-geist-mono); color: #8299ff; letter-spacing: .12em; }
.about-note p { max-width: 500px; color: #aaa69e; line-height: 1.65; font-size: 12px; }

.contact { display: grid; grid-template-columns: .82fr 1.18fr; background: var(--paper); }
.contact-copy { padding: 112px 5vw; border-right: 1px solid var(--ink); }
.contact-copy > p:nth-of-type(2) { color: var(--muted); line-height: 1.7; max-width: 450px; margin: 28px 0 52px; font-size: 13px; }
.contact-rule { padding: 22px 0; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink); display: flex; flex-direction: column; gap: 8px; }
.contact-rule small { font: 700 8px var(--font-geist-mono); color: var(--blue); letter-spacing: .12em; }
.contact-rule strong { font-size: 13px; }
.contact-promises { display: flex; flex-direction: column; gap: 11px; color: #666159; font: 600 9px var(--font-geist-mono); margin-top: 28px; }
.company-info { margin-top: 50px; padding: 25px; background: var(--ink); color: var(--paper); display: flex; flex-direction: column; gap: 10px; font-style: normal; position: relative; overflow: hidden; }
.company-info::after { content: ''; position: absolute; width: 120px; height: 120px; right: -60px; top: -60px; border-radius: 50%; background: var(--blue); box-shadow: 0 0 60px rgba(49,85,223,.8); }
.company-info small { color: #91a3fb; font: 700 8px var(--font-geist-mono); letter-spacing: .14em; }
.company-info strong { font-size: 12px; line-height: 1.6; }
.company-info a { width: max-content; font: 700 10px var(--font-geist-mono); color: #b9c4ff; }
.company-info a:hover { color: #ff876f; }
.rfq-form { padding: 112px 4vw; background: var(--white); position: relative; }
.rfq-form::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at 100% 0, rgba(49,85,223,.09), transparent 30%); }
.rfq-form label, .rfq-form legend { color: #615d56; font-size: 9px; letter-spacing: .05em; text-transform: uppercase; font-weight: 750; position: relative; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 17px; }
.rfq-form label { display: flex; flex-direction: column; gap: 8px; }
.rfq-form input, .rfq-form textarea { width: 100%; background: rgba(255,255,255,.55); color: var(--ink); border: 1px solid #a9a296; border-radius: 0; padding: 15px; font-size: 12px; outline: none; text-transform: none; font-weight: 500; transition: border-color .2s, box-shadow .2s, transform .2s; }
.rfq-form input:focus, .rfq-form textarea:focus { border-color: var(--blue); box-shadow: inset 3px 0 0 var(--blue), 0 8px 24px rgba(49,85,223,.08); transform: translateY(-1px); }
.rfq-form fieldset { border: 0; padding: 0; margin: 30px 0; }
.rfq-form legend { margin-bottom: 13px; }
.category-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; }
.category-grid label { position: relative; }
.category-grid input { position: absolute; opacity: 0; }
.category-grid span { border: 1px solid #aaa398; padding: 13px 8px; text-align: center; color: #625e57; font-size: 9px; cursor: pointer; transition: background .2s, color .2s, transform .2s; }
.category-grid span:hover { transform: translateY(-2px); }
.category-grid input:checked + span { background: var(--blue); border-color: var(--blue); color: white; }
.file-drop { margin-top: 24px; border: 1px dashed #8d877e; padding: 25px !important; align-items: center; text-align: center; cursor: pointer; transition: background .2s, border-color .2s; }
.file-drop:hover { background: rgba(49,85,223,.05); border-color: var(--blue); }
.file-drop input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.file-drop strong { color: var(--ink); font-size: 11px; }
.file-drop span { color: #777269; font-size: 8px; }
.honeypot { position: absolute !important; left: -9999px !important; }
.submit-button, .save-button { margin-top: 25px; border: 0; background: var(--orange); color: white; padding: 17px 23px; font-size: 10px; font-weight: 850; text-transform: uppercase; letter-spacing: .07em; cursor: pointer; transition: transform .25s, box-shadow .25s; }
.submit-button span { margin-left: 28px; }
.submit-button:hover, .save-button:hover { transform: translateY(-3px); box-shadow: 0 14px 28px rgba(255,79,47,.22); }
.form-success { color: #17673e; font-size: 11px; }
.form-error { color: #a32222; font-size: 11px; }
.privacy-note { color: #716c64; font-size: 8px; line-height: 1.55; text-transform: none !important; }

footer { padding: 46px 4vw 30px; display: grid; grid-template-columns: 1fr 1fr auto; gap: 26px; align-items: center; font-size: 9px; color: #666159; background: var(--paper); }
footer nav { display: flex; gap: 21px; justify-self: end; text-transform: uppercase; letter-spacing: .08em; }
footer nav a:hover { color: var(--orange); }
.footer-contact { grid-column: 1 / -1; border-top: 1px solid var(--ink); padding-top: 21px; display: flex; gap: 26px; font: 650 9px var(--font-geist-mono); }
.footer-contact a:hover { color: var(--blue); }
.copyright { grid-column: 1 / -1; color: #8a857d; }

/* Protected client desk */
.access-denied { min-height: 100vh; display: grid; place-content: center; text-align: center; padding: 30px; background: var(--paper); }
.access-denied p { color: var(--blue); font: 700 9px var(--font-geist-mono); }
.access-denied h1 { font-size: 44px; max-width: 700px; letter-spacing: -.05em; }
.access-denied a { margin-top: 28px; color: var(--orange); font-weight: 700; }
.admin-shell { min-height: 100vh; background: #e9e6dd; display: grid; grid-template-columns: 230px 1fr; color: var(--ink); }
.admin-sidebar { border-right: 1px solid var(--ink); padding: 27px 22px; background: var(--paper); }
.admin-sidebar nav { margin-top: 54px; display: flex; flex-direction: column; gap: 7px; }
.admin-sidebar nav a { padding: 12px; color: #655f57; font-size: 10px; text-transform: uppercase; letter-spacing: .07em; display: flex; justify-content: space-between; }
.admin-sidebar nav a.active { background: var(--blue); color: white; }
.admin-sidebar nav b { background: white; color: var(--blue); padding: 2px 6px; border-radius: 10px; font-size: 8px; }
.admin-main { min-width: 0; }
.admin-main > header { height: 110px; padding: 0 3vw; border-bottom: 1px solid var(--ink); display: flex; align-items: center; justify-content: space-between; background: rgba(242,239,231,.88); backdrop-filter: blur(16px); }
.admin-main header p, .detail-heading p { color: var(--blue); font: 700 8px var(--font-geist-mono); letter-spacing: .13em; margin: 0 0 6px; }
.admin-main header h1 { font-size: 29px; letter-spacing: -.05em; }
.admin-main header input { background: var(--white); border: 1px solid var(--ink); color: var(--ink); padding: 12px; width: 240px; }
.admin-workspace { display: grid; grid-template-columns: 380px 1fr; min-height: calc(100vh - 110px); }
.record-list { border-right: 1px solid var(--ink); background: var(--paper); }
.record-list > button { width: 100%; border: 0; border-bottom: 1px solid var(--line); background: transparent; color: var(--ink); padding: 20px; display: grid; grid-template-columns: 12px 1fr auto; text-align: left; gap: 10px; cursor: pointer; transition: background .2s; }
.record-list > button:hover { background: #e5e0d5; }
.record-list > button.selected { background: #dcd7cb; box-shadow: inset 4px 0 0 var(--orange); }
.record-list button div { display: flex; flex-direction: column; gap: 5px; }
.record-list button strong { font-size: 12px; }
.record-list button span, .record-list time { color: #6c665d; font-size: 8px; }
.status-dot { width: 7px; height: 7px; border-radius: 50%; background: #888; margin-top: 5px; }
.status-dot.new { background: var(--orange); box-shadow: 0 0 0 4px rgba(255,79,47,.12); }
.status-dot.reviewing { background: #dca400; }
.status-dot.quoted { background: var(--blue); }
.record-detail { padding: 42px 4vw; max-width: 1000px; }
.detail-heading { display: flex; justify-content: space-between; align-items: start; padding-bottom: 27px; border-bottom: 1px solid var(--ink); }
.detail-heading h2 { font-size: 31px; margin: 0; letter-spacing: -.04em; }
.detail-heading select { background: var(--blue); color: white; border: 0; padding: 11px; }
.detail-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid var(--ink); }
.detail-grid > div { padding: 27px 20px 27px 0; display: flex; flex-direction: column; gap: 7px; }
.detail-grid small, .record-detail article small { color: #716a61; font: 700 8px var(--font-geist-mono); }
.detail-grid strong { font-size: 12px; }
.detail-grid a, .detail-grid span { color: #675f56; font-size: 10px; }
.record-detail article { padding: 29px 0; border-bottom: 1px solid var(--ink); }
.record-detail article p { font-size: 12px; line-height: 1.65; }
.attachment { display: flex; gap: 14px; align-items: center; padding: 18px; border: 1px solid var(--blue); margin: 24px 0; color: var(--blue); }
.attachment span { display: flex; flex-direction: column; gap: 4px; }
.attachment small { color: #6c665e; }
.notes { color: #645e55; font-size: 9px; display: flex; flex-direction: column; gap: 8px; text-transform: uppercase; letter-spacing: .06em; }
.notes textarea { background: var(--white); color: var(--ink); border: 1px solid var(--ink); padding: 14px; text-transform: none; letter-spacing: 0; }
.empty-state { padding: 40px; color: #6a645b; }

@keyframes grid-drift { to { background-position: 72px 72px; } }
@keyframes aura-float { to { transform: translate3d(70px, 30px, 0) scale(1.14); } }
@keyframes pulse { 0% { box-shadow: 0 0 0 0 currentColor; } 70% { box-shadow: 0 0 0 8px transparent; } 100% { box-shadow: 0 0 0 0 transparent; } }
@keyframes draw-line { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes stage-grid { to { background-position: 42px 42px; } }
@keyframes stage-turn { to { transform: rotate(360deg); } }
@keyframes orbit-spin { to { transform: translate(-50%, -50%) rotate(360deg); } }
@keyframes orbit-spin-reverse { to { transform: translate(-50%, -50%) rotate(-360deg); } }
@keyframes breathe { 50% { transform: translate(-50%, -50%) scale(1.035); opacity: .72; } }
@keyframes core-float { 50% { transform: translate(-50%, calc(-50% - 8px)); } }
@keyframes node-float { 50% { transform: translateY(-12px); } }
@keyframes marquee { to { transform: translateX(-50%); } }
@keyframes scan { 0% { transform: translateY(-150%); } 100% { transform: translateY(400%); } }
@keyframes glyph-bounce { 50% { transform: translateY(-8px) rotate(-8deg); } }

@media (max-width: 1050px) {
  .section-heading { grid-template-columns: 1fr; }
  .sourcing, .about, .contact { grid-template-columns: 1fr; }
  .source-pitch, .about-copy, .contact-copy { border-right: 0; border-bottom: 1px solid currentColor; }
  .process ol { grid-template-columns: 1fr 1fr; }
  .process li:nth-child(2) { border-right: 0; }
  .process li:nth-child(-n+2) { border-bottom: 1px solid var(--ink); }
  .admin-workspace { grid-template-columns: 300px 1fr; }
  .capability-list article { grid-template-columns: 55px 1fr .8fr 70px 40px; }
  .cap-glyph { width: 62px; height: 62px; }
}

@media (max-width: 820px) {
  .site-header { grid-template-columns: 1fr auto; height: 78px; }
  .site-header nav { display: none; }
  .hero { grid-template-columns: 1fr; }
  .hero-copy { border-right: 0; min-height: 670px; }
  .compute-stage { min-height: 650px; border-top: 1px solid var(--ink); }
  .signal-strip { grid-template-columns: 1fr 1fr; }
  .header-cta { padding: 12px 14px; }
  .admin-link { display: none; }
  .orbit-three { width: 530px; height: 530px; }
}

@media (max-width: 700px) {
  .capability-list article { grid-template-columns: 35px 1fr 35px; padding: 30px 22px; }
  .capability-list ul { grid-column: 2; padding-top: 16px; border-left: 0; }
  .cap-glyph { display: none; }
  .process ol, .about-grid, .form-grid, .category-grid { grid-template-columns: 1fr; }
  .process li, .process li:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--ink); }
  .process li:last-child { border-bottom: 0; }
  .about-note { grid-column: auto !important; }
  .admin-shell { grid-template-columns: 1fr; }
  .admin-sidebar { display: none; }
  .admin-main > header { height: auto; padding: 24px; align-items: flex-start; gap: 18px; }
  .admin-main header input { width: 145px; }
  .admin-workspace { grid-template-columns: 1fr; }
  .record-list { border-right: 0; max-height: 330px; overflow: auto; }
  .detail-grid { grid-template-columns: 1fr; }
  .record-detail { padding: 28px 20px; }
  footer { grid-template-columns: 1fr; }
  footer nav { justify-self: start; flex-wrap: wrap; }
  .footer-contact { flex-direction: column; gap: 10px; }
}

@media (max-width: 500px) {
  .cf-wordmark { font-size: 10px; }
  .site-header { padding: 0 20px; }
  .hero-copy, .section-heading, .source-pitch, .source-matrix, .about-copy, .contact-copy, .rfq-form { padding: 72px 22px; }
  .hero-copy { min-height: 645px; }
  .hero h1 { font-size: 53px; }
  .hero-kicker span { display: none; }
  .hero-actions { flex-direction: column; margin-bottom: 52px; }
  .primary-button, .secondary-button { width: 100%; }
  .compute-stage { min-height: 520px; }
  .orbit-one { width: 190px; height: 190px; }
  .orbit-two { width: 320px; height: 320px; }
  .orbit-three { width: 430px; height: 430px; }
  .core { width: 100px; height: 100px; }
  .node { width: 115px; padding: 12px; }
  .node-gpu { left: 5%; top: 23%; }
  .node-sys { right: 4%; top: 25%; }
  .node-fabric { right: 7%; bottom: 21%; }
  .stage-readout { left: 20px; right: 20px; }
  .stage-readout b { font-size: 19px; }
  .signal-strip { grid-template-columns: 1fr; }
  .signal-strip div { border-right: 0; border-bottom: 1px solid var(--line); }
  .process ol { margin: 0 22px; }
  .pointer-glow { display: none; }
}

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

/* Monochrome washed-black / deep-blue finish */
body,
footer,
.process,
.contact { background: #080b12; color: #dce5f5; }
.pointer-glow { background: radial-gradient(circle, rgba(37,75,142,.2), rgba(15,31,59,.12) 42%, transparent 70%); }
.site-header { background: rgba(7,10,17,.88); border-color: #1c2940; }
.cf-mark { background: #17386e; color: #dbe7fb; box-shadow: 0 0 28px rgba(32,72,139,.34); }
.site-header nav a::after { background: #345d9f; }
.admin-link { color: #76849d; }
.header-cta { background: #101c30; color: #dce5f5; border: 1px solid #263a59; }
.header-cta span { color: #708fca; }
.header-cta:hover { background: #17386e; }
.hero { border-color: #1c2940; background: #080b12; }
.hero-copy { border-color: #1c2940; background: linear-gradient(145deg, rgba(19,33,58,.36), transparent 52%); }
.hero-grid-lines { opacity: .42; background-image: linear-gradient(rgba(89,119,170,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(89,119,170,.08) 1px, transparent 1px); }
.aura-one { background: #17386e; opacity: .36; }
.aura-two { background: #0d2449; opacity: .52; }
.eyebrow,
.section-label,
.hero-kicker,
.cap-main p { color: #6886bd; }
.hero-kicker span { color: #5976aa; }
.hero-kicker span::before { background: #496da8; box-shadow: 0 0 0 5px rgba(73,109,168,.12); }
.hero h1 em,
.section h2 em { color: #5577b0; }
.hero h1 em::after { background: linear-gradient(90deg, #4069aa, transparent); }
.lede,
.section-heading > p:last-child,
.cap-main span,
.process li p,
.contact-copy > p:nth-of-type(2) { color: #7e8ba1; }
.primary-button { background: #17386e; color: #e1e9f8; box-shadow: 0 14px 35px rgba(6,19,42,.42); }
.secondary-button { border-color: #29405f; color: #aab8ce; }
.primary-button:hover,
.secondary-button:hover,
.light-button:hover { box-shadow: 0 16px 36px rgba(3,11,25,.5); }
.brand-row { border-color: #263650; color: #68778f; }
.compute-stage { border-color: #1c2940; background: radial-gradient(circle at 50% 47%, rgba(35,71,139,.52), transparent 24%), radial-gradient(circle at 50% 50%, #13264b, #080e1d 58%, #04060a 100%); }
.marquee { background: #102b58; color: #b8c7df; border-color: #1d3458; }
.marquee b { color: #4d70aa; }
.signal-strip,
.section,
.capability-list,
.capability-list article,
.source-pitch,
.contact-copy,
.contact-rule,
.process ol,
.process li,
.about-copy,
.admin-sidebar,
.admin-main > header,
.record-list,
.record-list > button,
.detail-heading,
.detail-grid,
.record-detail article { border-color: #1c2940; }
.signal-strip div { border-color: #1c2940; }
.signal-strip div:hover { background: #0e192b; color: #dce5f5; }
.signal-strip strong { color: #4e73b4; }
.signal-strip div:hover strong { color: #7494cb; }
.signal-strip span,
.signal-strip div:hover span { color: #75839a; }
.capability-list article::before { background: #112c58; }
.cap-no { color: #5274ad; }
.capability-list article:hover .cap-main p { color: #8ba3ce; }
.capability-list article:hover .cap-main span,
.capability-list article:hover li { color: #a8b7ce; }
.capability-list ul,
.cap-glyph { border-color: #263a58; }
.capability-list li { color: #6f7c91; }
.cap-glyph { color: #5779b3; }
.sourcing { background: #0b1b36; color: #dce5f5; }
.sourcing .section-label,
.sourcing h2 em,
.brief-card i,
.source-matrix b,
.source-matrix i { color: #7894c7; }
.source-pitch > p:nth-of-type(2) { color: #899bb7; }
.light-button { background: #d7e0ef; color: #10274e; }
.brief-card { background: #0d264f; border-color: #2a4774; }
.brief-card small,
.brief-card span,
.source-matrix > p,
.source-matrix span { color: #7187ad; }
.brief-card i b { background: #5f82bd; box-shadow: 0 0 12px #5f82bd; }
.source-matrix article { border-color: #263f67; }
.source-matrix article:hover { background: rgba(79,112,170,.1); }
.process li:hover { background: #0e1b31; }
.process li::after { border-color: #345d9d; }
.step-glyph,
.process li:hover .step-glyph { color: #557bbd; }
.about { background: #05070c; color: #dce5f5; }
.about .section-label,
.about h2 em,
.about-note b { color: #6d8dc4; }
.about-copy > p:last-child,
.about-note p { color: #7d899d; }
.about-grid article { border-color: #1a2740; }
.about-grid article:hover { background: #0b1424; }
.about-grid strong { color: #5d7fba; }
.about-grid span { color: #6f7b8f; }
.contact-rule small { color: #6283bd; }
.contact-promises { color: #748197; }
.company-info { background: #0b1423; color: #dce5f5; border: 1px solid #223754; }
.company-info::after { background: #17386e; box-shadow: 0 0 60px rgba(20,55,109,.8); }
.company-info small,
.company-info a { color: #7894c6; }
.company-info a:hover { color: #a9bbd8; }
.rfq-form { background: #0d121d; }
.rfq-form::before { background: radial-gradient(circle at 100% 0, rgba(26,60,115,.22), transparent 34%); }
.rfq-form label,
.rfq-form legend { color: #77859b; }
.rfq-form input,
.rfq-form textarea { background: #0a101a; color: #dce5f5; border-color: #2a3a54; }
.rfq-form input:focus,
.rfq-form textarea:focus { border-color: #466ba7; box-shadow: inset 3px 0 0 #31558f, 0 8px 24px rgba(8,22,48,.5); }
.category-grid span { border-color: #2a3a54; color: #8693a8; }
.category-grid input:checked + span { background: #17386e; border-color: #315a9a; color: #dce5f5; }
.file-drop { border-color: #33445f; }
.file-drop:hover { background: rgba(30,64,122,.12); border-color: #42659e; }
.file-drop strong { color: #c5d0e2; }
.file-drop span,
.privacy-note { color: #6d7a8f; }
.submit-button,
.save-button { background: #17386e; color: #dce5f5; }
.submit-button:hover,
.save-button:hover { box-shadow: 0 14px 28px rgba(6,21,47,.55); }
footer { color: #6f7d93; }
footer nav a:hover,
.footer-contact a:hover { color: #6d8fc8; }
.footer-contact { border-color: #1c2940; }
.copyright { color: #536176; }

/* Client desk in the same dark system */
.access-denied,
.admin-shell,
.admin-sidebar,
.admin-main > header,
.record-list { background: #080b12; color: #dce5f5; }
.access-denied p,
.admin-main header p,
.detail-heading p { color: #6485bf; }
.access-denied a { color: #7795c8; }
.admin-sidebar nav a { color: #748197; }
.admin-sidebar nav a.active { background: #17386e; color: #e0e8f7; }
.admin-sidebar nav b { background: #0d1829; color: #7896ca; }
.admin-main header input,
.notes textarea { background: #0d1420; border-color: #2b3b55; color: #dce5f5; }
.record-list > button { color: #dce5f5; }
.record-list > button:hover { background: #0c1421; }
.record-list > button.selected { background: #101c2f; box-shadow: inset 4px 0 0 #315b9d; }
.record-list button span,
.record-list time,
.detail-grid a,
.detail-grid span,
.detail-grid small,
.record-detail article small,
.notes,
.empty-state { color: #718097; }
.status-dot.new { background: #5279b8; box-shadow: 0 0 0 4px rgba(65,104,165,.15); }
.status-dot.reviewing { background: #355d9d; }
.status-dot.quoted { background: #244579; }
.detail-heading select { background: #17386e; color: #dce5f5; }
.attachment { border-color: #315b9b; color: #7796ca; }
.attachment small { color: #6c7d96; }

/* Cursor system */
.cursor-ring,
.cursor-dot { position: fixed; top: 0; left: 0; z-index: 200; pointer-events: none; opacity: 0; will-change: transform; }
.cursor-ring { width: 38px; height: 38px; margin: -19px 0 0 -19px; border: 1px solid rgba(120,151,203,.7); border-radius: 50%; box-shadow: 0 0 28px rgba(35,73,139,.25), inset 0 0 18px rgba(48,91,163,.1); transition: width .22s, height .22s, margin .22s, border-color .22s, background .22s, opacity .2s; }
.cursor-dot { width: 5px; height: 5px; margin: -2.5px 0 0 -2.5px; border-radius: 50%; background: #8ca7d5; box-shadow: 0 0 12px #5c7fb9; transition: opacity .2s, width .18s, height .18s, margin .18s; }
.cursor-ring.is-active,
.cursor-dot.is-active { opacity: 1; }
.cursor-ring.is-hovering { width: 58px; height: 58px; margin: -29px 0 0 -29px; border-color: #537bbd; background: rgba(31,67,126,.16); }
.cursor-ring.is-pressed { width: 28px; height: 28px; margin: -14px 0 0 -14px; background: rgba(61,101,166,.28); }

/* Hostinger client desk */
.admin-body { min-height: 100vh; background: #080b12; }
.admin-login { align-content: center; justify-items: center; }
.login-brand { margin-bottom: 42px; }
.login-form { width: min(430px, calc(100vw - 40px)); margin-top: 24px; padding: 28px; border: 1px solid #223754; background: #0d121d; text-align: left; }
.login-form label { display: flex; flex-direction: column; gap: 8px; margin-bottom: 18px; color: #77859b; font-size: 9px; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.login-form input { width: 100%; padding: 15px; border: 1px solid #2a3a54; border-radius: 0; outline: none; background: #0a101a; color: #dce5f5; }
.login-form input:focus { border-color: #466ba7; box-shadow: inset 3px 0 0 #31558f; }
.login-form .submit-button { width: 100%; display: flex; justify-content: space-between; }
.login-form .form-error { text-align: center; margin: 18px 0 0; }
.access-denied .back-link { margin-top: 24px; }
.logout-form { margin-top: auto; position: absolute; left: 22px; bottom: 24px; }
.logout-form button { border: 0; padding: 0; background: transparent; color: #718097; font: 700 9px var(--font-geist-mono); letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.admin-sidebar { position: relative; min-height: 100vh; }
.admin-search { margin: 0; }
.record-list > .record-link { width: 100%; min-height: 76px; border-bottom: 1px solid #1c2940; background: transparent; color: #dce5f5; padding: 20px; display: grid; grid-template-columns: 12px 1fr auto; text-align: left; gap: 10px; transition: background .2s; }
.record-list > .record-link:hover { background: #0c1421; }
.record-list > .record-link.selected { background: #101c2f; box-shadow: inset 4px 0 0 #315b9d; }
.record-link div { display: flex; flex-direction: column; gap: 5px; }
.record-link strong { font-size: 12px; }
.record-link span, .record-link time { color: #718097; font-size: 8px; }
.status-dot { display: block; font-style: normal; }
.status-dot.closed { background: #536176; }
.status-control { display: flex; align-items: center; gap: 10px; color: #718097; font: 700 8px var(--font-geist-mono); letter-spacing: .08em; text-transform: uppercase; }
.save-notice { position: fixed; z-index: 100; top: 22px; left: 50%; transform: translateX(-50%); padding: 12px 18px; border: 1px solid #315b9d; background: #101c2f; color: #c9d6ea; font-size: 10px; box-shadow: 0 12px 36px rgba(0,0,0,.35); }
.submit-button:disabled, .save-button:disabled { opacity: .62; cursor: wait; transform: none; }
.form-feedback:empty { display: none; }
.form-feedback { margin-top: 18px; }

@media (max-width: 700px) {
  .logout-form { display: none; }
  .detail-heading { gap: 18px; }
}

@media (pointer: fine) {
  body.custom-cursor-active,
  body.custom-cursor-active a,
  body.custom-cursor-active button,
  body.custom-cursor-active input,
  body.custom-cursor-active textarea,
  body.custom-cursor-active select,
  body.custom-cursor-active label { cursor: none; }
}

@media (pointer: coarse), (prefers-reduced-motion: reduce) {
  .cursor-ring,
  .cursor-dot { display: none; }
}
