/* FlashMIDs V4 visual system
   Pure CSS enhancement layer. No external runtime dependency. */
:root{
  --bg:#050611;
  --bgdeep:#02030a;
  --panel:#0a0d1b;
  --panel2:#11172a;
  --panel3:#0d1222;
  --stroke:rgba(151,163,255,.16);
  --stroke2:rgba(131,220,255,.24);
  --text:#f5f7ff;
  --muted:#a8b0c4;
  --dim:#737d98;
  --accent:#9b7cff;
  --accent2:#45d7ff;
  --accent3:#63f5ba;
  --warm:#f0cf86;
  --danger:#ff7f9b;
  --shadow:0 30px 90px rgba(0,0,0,.38);
  --shadow-soft:0 18px 55px rgba(0,0,0,.24);
  --radius:18px;
}
html{background:var(--bgdeep)}
body{
  position:relative;
  overflow-x:hidden;
  background:
    radial-gradient(1100px 720px at 76% -8%,rgba(116,83,255,.13),transparent 62%),
    radial-gradient(850px 650px at 3% 26%,rgba(33,194,255,.075),transparent 64%),
    radial-gradient(700px 560px at 82% 74%,rgba(77,244,185,.045),transparent 65%),
    linear-gradient(180deg,#050611 0%,#04050d 38%,#050711 100%);
  color:var(--text);
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  opacity:.34;
  background-image:
    linear-gradient(rgba(143,166,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(143,166,255,.035) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.25) 68%,transparent);
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.25) 68%,transparent);
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(115deg,transparent 0 44%,rgba(115,92,255,.025) 44.2% 44.45%,transparent 44.7% 100%),
    linear-gradient(62deg,transparent 0 69%,rgba(51,206,255,.021) 69.2% 69.45%,transparent 69.7% 100%);
}
::selection{background:rgba(155,124,255,.88)!important;color:#fff!important}
em{color:var(--accent2)}
p{color:var(--muted)}
.container{width:min(var(--max),calc(100% - 88px))}
.section{position:relative;padding:124px 0}
.section::before{
  content:"";
  position:absolute;
  left:50%;top:0;
  width:min(1220px,calc(100% - 88px));height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(154,124,255,.15) 26%,rgba(69,215,255,.1) 72%,transparent);
}
.section-alternate{
  background:
    radial-gradient(720px 360px at 8% 12%,rgba(140,104,255,.055),transparent 70%),
    radial-gradient(680px 360px at 92% 88%,rgba(55,212,255,.04),transparent 72%),
    linear-gradient(180deg,rgba(8,10,23,.92),rgba(6,8,18,.84));
}
.eyebrow{color:#b5a2ff;letter-spacing:.17em}
.eyebrow::before{background:linear-gradient(90deg,var(--accent),var(--accent2));box-shadow:0 0 16px rgba(107,125,255,.4)}
.signal{background:var(--accent3);box-shadow:0 0 0 4px rgba(99,245,186,.07),0 0 18px rgba(99,245,186,.42)}
.dot,.dot.teal{background:var(--accent3)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:var(--accent2)}
#scroll-progress{background:linear-gradient(90deg,var(--accent),var(--accent2),var(--accent3));box-shadow:0 0 12px rgba(69,215,255,.55)}

/* Header */
.site-header{
  height:80px;
  border-bottom:1px solid rgba(145,162,255,.12);
  background:linear-gradient(180deg,rgba(5,6,17,.86),rgba(5,6,17,.72));
  backdrop-filter:blur(18px) saturate(130%);
  -webkit-backdrop-filter:blur(18px) saturate(130%);
}
.site-header::after{
  content:"";
  position:absolute;left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(154,124,255,.22) 28%,rgba(69,215,255,.16) 70%,transparent);
  opacity:.72;
}
.site-header.scrolled{background:rgba(4,5,14,.96);box-shadow:0 16px 50px rgba(0,0,0,.24)}
.wordmark{letter-spacing:-.065em}
.wordmark span:not(.wordmark-symbol):not(.logo-dot){background:linear-gradient(100deg,#a58aff,#55dcff);-webkit-background-clip:text;background-clip:text;color:transparent}
.wordmark-symbol i{background:linear-gradient(180deg,var(--accent),#7355f2);box-shadow:0 0 16px rgba(150,111,255,.28)}
.wordmark-symbol i:last-child{background:linear-gradient(180deg,var(--accent2),#5c86ff)}
.logo-dot{background:var(--accent3);box-shadow:0 0 10px rgba(99,245,186,.58)}
.desktop-nav a,.header-actions .login{color:#9ca6bf}
.desktop-nav a:hover,.desktop-nav a.active,.header-actions .login:hover{color:#f5f7ff}
.desktop-nav a{position:relative}
.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-11px;height:1px;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:right .24s ease}
.desktop-nav a:hover::after,.desktop-nav a.active::after{right:0}
.btn{border-radius:9px;position:relative;overflow:hidden;isolation:isolate;transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}
.btn::before{content:"";position:absolute;inset:-1px;z-index:-1;opacity:0;background:linear-gradient(115deg,rgba(255,255,255,.14),transparent 28% 72%,rgba(255,255,255,.08));transition:opacity .22s ease}
.btn:hover::before{opacity:1}
.btn-primary{background:linear-gradient(115deg,#a98cff 0%,#8268ff 45%,#52c7ff 100%);color:#090b17;box-shadow:0 10px 35px rgba(123,99,255,.21),inset 0 1px 0 rgba(255,255,255,.28)}
.btn-primary:hover{background:linear-gradient(115deg,#b79fff,#947cff 45%,#6ed4ff 100%);box-shadow:0 16px 42px rgba(123,99,255,.28)}
.btn-secondary{background:rgba(11,14,29,.62);border-color:rgba(132,157,255,.24);color:var(--text);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.btn-secondary:hover{border-color:rgba(74,215,255,.52);background:rgba(16,20,39,.92)}
.mobile-menu{background:rgba(5,7,18,.98);border-color:rgba(143,158,255,.16);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}

/* Ambient interaction */
.fm-cursor-glow{position:fixed;z-index:0;width:420px;height:420px;border-radius:50%;pointer-events:none;opacity:0;transform:translate3d(-50%,-50%,0);background:radial-gradient(circle,rgba(123,94,255,.075),rgba(57,204,255,.035) 42%,transparent 72%);transition:opacity .2s ease;will-change:transform}
body.fm-pointer-active .fm-cursor-glow{opacity:1}
.fm-ambient-rail{position:fixed;right:18px;top:50%;z-index:20;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none;opacity:.6}
.fm-ambient-rail::before,.fm-ambient-rail::after{content:"";width:1px;height:42px;background:linear-gradient(transparent,rgba(105,195,255,.35),transparent)}
.fm-ambient-rail i{width:4px;height:4px;border-radius:50%;background:rgba(164,141,255,.65);box-shadow:0 0 12px rgba(155,124,255,.65)}

/* Hero */
.hero{
  background:
    radial-gradient(980px 620px at 86% 18%,rgba(128,84,255,.155),transparent 66%),
    radial-gradient(850px 580px at 13% 68%,rgba(33,199,255,.065),transparent 70%),
    linear-gradient(180deg,#050611 0%,#060713 100%);
  border-bottom:1px solid rgba(142,159,255,.15);
}
.hero::before{
  width:900px;height:900px;right:-370px;top:-360px;
  border-color:rgba(132,103,255,.14);
  box-shadow:0 0 0 110px rgba(117,90,255,.025),0 0 0 220px rgba(68,198,255,.018),0 0 0 330px rgba(104,93,255,.012);
}
.hero::after{
  content:"";position:absolute;inset:80px 0 0;pointer-events:none;opacity:.42;
  background:
    linear-gradient(90deg,transparent 49.92%,rgba(128,146,255,.09) 50%,transparent 50.08%),
    linear-gradient(transparent 49.92%,rgba(128,146,255,.055) 50%,transparent 50.08%);
  background-size:220px 220px;
  mask-image:radial-gradient(circle at 72% 36%,black,transparent 64%);
  -webkit-mask-image:radial-gradient(circle at 72% 36%,black,transparent 64%);
}
.hero-grid{z-index:1;grid-template-columns:1.04fr .96fr;gap:68px;padding-top:58px;padding-bottom:112px}
.hero-copy{z-index:3}
.hero h1{font-size:clamp(3.7rem,5.7vw,6.25rem);letter-spacing:-.073em;line-height:1.025;text-wrap:balance}
.hero h1 span{background:linear-gradient(100deg,#a88cff 6%,#7f8cff 45%,#4ddcff 88%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 36px rgba(105,118,255,.08)}
.hero-desc{color:#b4bdd1;max-width:590px}
.hero-proof{border-color:rgba(143,159,255,.15);color:#95a0bb}
.hero-proof .dot{background:var(--accent3);box-shadow:0 0 10px rgba(99,245,186,.42)}
.hero-bottom{border-color:rgba(143,159,255,.14)}
.hero-bottom>span{color:#737e9b}.hero-bottom>div{color:#9ca7c0}

/* Architecture cockpit */
.architecture-demo{
  border-radius:20px;
  padding:24px;
  overflow:hidden;
  isolation:isolate;
  background:
    linear-gradient(160deg,rgba(21,26,52,.96),rgba(10,14,29,.98) 54%,rgba(8,12,24,.98)),
    #0c1020;
  border:1px solid rgba(129,153,255,.34);
  box-shadow:0 38px 110px rgba(0,0,0,.43),0 0 90px rgba(111,86,255,.07),inset 0 1px 0 rgba(255,255,255,.035);
  transform:translateZ(0);
}
.architecture-demo::before{
  background:
    radial-gradient(420px 240px at 12% 0%,rgba(148,104,255,.1),transparent 70%),
    radial-gradient(420px 280px at 100% 100%,rgba(69,215,255,.07),transparent 72%),
    linear-gradient(130deg,rgba(255,255,255,.03),transparent 28% 76%,rgba(76,218,255,.025));
}
.architecture-demo::after{
  content:"";position:absolute;z-index:4;top:0;left:-35%;width:35%;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--accent),var(--accent2),transparent);
  animation:fm-scanline 5.8s linear infinite;
  box-shadow:0 0 12px rgba(87,176,255,.55);
}
.demo-mini-brand .tiny{color:#dce2ff}.demo-sub{color:#7482a7}
.pill.outline{border-color:rgba(100,220,255,.25);color:#a9b8d5;background:rgba(8,12,25,.52)}
.pill-neutral{color:#a9b5cf;background:rgba(21,27,51,.72);border-color:rgba(132,150,255,.18)}
.demo-tabs{background:rgba(4,7,17,.72);border-color:rgba(126,152,255,.18);padding:5px}
.demo-tab{color:#8793af}.demo-tab:hover{color:#f2f5ff}.demo-tab.active{background:linear-gradient(135deg,rgba(134,102,255,.18),rgba(61,196,255,.1));color:#c8bbff;box-shadow:inset 0 0 0 1px rgba(142,128,255,.28)}
.diagram{position:relative}
.diagram::before{content:"";position:absolute;inset:4% 7%;border:1px solid rgba(114,144,255,.07);border-radius:16px;pointer-events:none}
.diagram-node{position:relative;background:linear-gradient(145deg,rgba(18,24,47,.92),rgba(11,16,32,.95));border-color:rgba(132,160,255,.23);box-shadow:inset 0 1px 0 rgba(255,255,255,.025);transition:transform .25s ease,border-color .25s ease,background .25s ease}
.diagram-node:hover{transform:translateY(-2px);border-color:rgba(80,216,255,.36);background:linear-gradient(145deg,rgba(25,31,59,.96),rgba(12,18,36,.98))}
.diagram-node strong{color:#f5f7ff}.diagram-node small{color:#8f9bb5}
.node-ico{border-color:rgba(118,155,255,.26);background:linear-gradient(145deg,rgba(143,104,255,.12),rgba(52,203,255,.08));color:#8fdfff;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.node-status{background:var(--accent3);box-shadow:0 0 14px rgba(99,245,186,.48)}
.connector-line{position:relative}
.connector-line span{background:linear-gradient(180deg,rgba(143,119,255,.2),rgba(68,218,255,.55),rgba(100,245,187,.24))}
.connector-line span::after{content:"";position:absolute;left:50%;top:-1px;width:5px;height:5px;border-radius:50%;background:#a1fbd8;box-shadow:0 0 12px rgba(98,245,186,.76);transform:translate(-50%,-8px);animation:fm-flow-v 2.2s ease-in-out infinite}
.demo-bottom{color:#7f8da9}.demo-bottom a{color:#b9adff}.demo-bottom a:hover{color:#67ddff}
.fm-demo-telemetry{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:15px;padding-top:15px;border-top:1px solid rgba(133,151,255,.12)}
.fm-demo-telemetry span{display:flex;align-items:center;justify-content:center;min-height:31px;border:1px solid rgba(130,153,255,.13);border-radius:7px;background:rgba(6,10,22,.58);color:#7785a4;font:500 8px/1 'Roboto Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.fm-demo-telemetry span::before{content:"";width:4px;height:4px;border-radius:50%;margin-right:7px;background:var(--accent2);box-shadow:0 0 8px rgba(69,215,255,.6)}
.fm-demo-telemetry span:nth-child(2)::before{background:var(--accent3);box-shadow:0 0 8px rgba(99,245,186,.55)}
.fm-demo-telemetry span:nth-child(3)::before{background:var(--accent);box-shadow:0 0 8px rgba(155,124,255,.58)}
.fm-demo-telemetry span:nth-child(4)::before{background:var(--warm);box-shadow:0 0 8px rgba(240,207,134,.45)}
.fm-routing-orbit{position:absolute;z-index:0;right:-82px;bottom:-82px;width:260px;height:260px;border-radius:50%;border:1px solid rgba(126,128,255,.12);pointer-events:none}
.fm-routing-orbit::before,.fm-routing-orbit::after{content:"";position:absolute;border-radius:50%;inset:32px;border:1px solid rgba(72,216,255,.10)}
.fm-routing-orbit::after{inset:72px;border-color:rgba(100,245,186,.09)}

/* Section headings */
.section-head h2,.split-heading h2,.proof-grid h2,.faq-layout h2,.closing-box h2,.page-hero h1{color:#f7f8ff;text-wrap:balance}
.section-head h2 em,.split-heading h2 em,.proof-grid h2 em,.faq-layout h2 em,.page-hero h1 em{background:linear-gradient(100deg,#b098ff,#6fd0ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.text-link,.section-inline-cta a{color:#b8abff}.text-link:hover,.section-inline-cta a:hover{color:#64dcff}

/* Feature surfaces */
.feature-grid{gap:14px;background:transparent}
.feature-card{
  position:relative;overflow:hidden;isolation:isolate;
  min-height:284px;padding:34px;
  border:1px solid rgba(132,151,255,.16)!important;border-radius:15px!important;
  background:linear-gradient(155deg,rgba(15,20,39,.93),rgba(8,12,25,.95))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.022);
  transform:perspective(850px) rotateX(var(--fm-tilt-y,0deg)) rotateY(var(--fm-tilt-x,0deg)) translateZ(0);
  transition:transform .22s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease!important;
}
.feature-card::before{content:"";position:absolute;z-index:-1;right:-90px;top:-100px;width:230px;height:230px;border-radius:50%;border:1px solid rgba(151,124,255,.085);box-shadow:0 0 0 34px rgba(151,124,255,.024),0 0 0 68px rgba(69,215,255,.014)}
.feature-card::after{content:"";position:absolute;z-index:0;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(158,129,255,.5),rgba(69,215,255,.34),transparent);opacity:.5;transform:scaleX(.55);transform-origin:left;transition:transform .32s ease,opacity .32s ease}
.feature-card:hover{border-color:rgba(111,154,255,.31)!important;box-shadow:0 24px 64px rgba(0,0,0,.22),0 0 40px rgba(115,89,255,.035);transform:perspective(850px) rotateX(var(--fm-tilt-y,0deg)) rotateY(var(--fm-tilt-x,0deg)) translateY(-4px)!important}
.feature-card:hover::after{transform:scaleX(1);opacity:.9}
.feature-card h3{position:relative;z-index:2;font-size:24px}.feature-card p,.feature-card>a,.feature-card .card-top{position:relative;z-index:2}
.feature-card>a{color:#b9aeff}.feature-card>a:hover{color:#63dbff;text-decoration:none}
.fm-card-visual{position:relative;z-index:2;height:22px;display:flex;align-items:center;gap:5px;margin-top:24px;opacity:.78}
.fm-card-visual i{display:block;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px rgba(155,124,255,.6)}
.fm-card-visual b{display:block;height:1px;flex:1;max-width:58px;background:linear-gradient(90deg,rgba(155,124,255,.7),rgba(69,215,255,.22));position:relative;overflow:visible}
.fm-card-visual b::after{content:"";position:absolute;right:0;top:-2px;width:5px;height:5px;border-radius:50%;background:var(--accent2);box-shadow:0 0 9px rgba(69,215,255,.64)}
.fm-card-visual i:last-child{background:var(--accent3);box-shadow:0 0 10px rgba(99,245,186,.55)}
.feature-card:nth-child(2n) .fm-card-visual i:first-child{background:var(--accent2)}
.feature-card:nth-child(3n) .fm-card-visual i:first-child{background:var(--warm)}
.section-inline-cta{border-color:rgba(131,150,255,.16);background:linear-gradient(90deg,rgba(13,17,33,.62),rgba(9,13,27,.35));border-radius:12px;padding:18px 20px}

/* Engineering cards */
.three-grid{gap:15px}
.step-box{position:relative;overflow:hidden;border-radius:15px!important;border:1px solid rgba(131,151,255,.16)!important;background:linear-gradient(155deg,rgba(13,17,34,.92),rgba(8,12,24,.93))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.02);transition:transform .24s ease,border-color .24s ease}
.step-box:hover{transform:translateY(-4px);border-color:rgba(72,210,255,.28)!important}
.step-box::after{content:"";position:absolute;right:-40px;bottom:-70px;width:170px;height:170px;border-radius:50%;border:1px dashed rgba(145,119,255,.12);animation:fm-rotate 24s linear infinite}
.step-index{color:#9f8cff}.line-art{color:#68d9ff;text-shadow:0 0 22px rgba(69,215,255,.25)}

/* Operator panels */
.market-grid{gap:14px}
.market-panel{border-radius:16px;border-color:rgba(134,151,255,.16);background:linear-gradient(155deg,rgba(14,18,36,.95),rgba(8,12,24,.95));box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.market-panel::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(151,120,255,.08),transparent 38% 70%,rgba(61,213,255,.05));opacity:.9;pointer-events:none}
.market-panel::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-125px;top:-125px;border:1px solid rgba(129,151,255,.10);box-shadow:0 0 0 34px rgba(76,207,255,.015),0 0 0 68px rgba(151,116,255,.012);pointer-events:none}
.market-panel h3{color:#f5f7ff}.market-num{color:#a38eff!important}
.fm-market-route{position:absolute;z-index:0;left:30px;right:30px;top:28px;height:34px;display:flex;align-items:center;gap:7px;opacity:.56}
.fm-market-route i{width:5px;height:5px;border-radius:50%;background:#8f79ff;box-shadow:0 0 9px rgba(143,121,255,.55)}
.fm-market-route b{height:1px;flex:1;background:linear-gradient(90deg,rgba(143,121,255,.45),rgba(61,211,255,.32),rgba(99,245,186,.32))}
.fm-market-route i:last-child{background:#64f0bb}

/* Trust */
.proof-list{position:relative;border:1px solid rgba(134,154,255,.14);border-radius:16px;overflow:hidden;background:rgba(8,12,24,.52)}
.proof-list::before{content:"";position:absolute;left:27px;top:20px;bottom:20px;width:1px;background:linear-gradient(transparent,rgba(151,124,255,.35),rgba(69,215,255,.25),transparent)}
.checkline{position:relative;border-color:rgba(133,153,255,.12)!important;background:linear-gradient(90deg,rgba(11,15,30,.68),rgba(8,11,23,.3));padding-left:58px!important}
.checkline::before{content:"";position:absolute;left:24px;top:50%;width:8px;height:8px;border-radius:50%;transform:translateY(-50%);background:var(--accent3);box-shadow:0 0 0 4px rgba(99,245,186,.045),0 0 15px rgba(99,245,186,.36)}
.proof-icon{background:linear-gradient(145deg,rgba(155,124,255,.13),rgba(69,215,255,.07))!important;border-color:rgba(129,151,255,.2)!important;color:#81deff!important}

/* Timeline */
.timeline{border-top-color:rgba(136,155,255,.24);position:relative}
.timeline::before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:linear-gradient(90deg,var(--accent),var(--accent2),var(--accent3));opacity:.35;transform-origin:left;animation:fm-timeline 6.8s ease-in-out infinite}
.timeline-step::before{background:#9f83ff;box-shadow:0 0 0 6px rgba(155,124,255,.055),0 0 13px rgba(151,124,255,.45)}
.timeline-step:nth-child(2)::before{background:#6fb9ff}.timeline-step:nth-child(3)::before{background:#55dded}.timeline-step:nth-child(4)::before{background:#63f5ba}
.timeline-num{color:#ad9aff}

/* FAQ */
.faq-items{border-top-color:rgba(137,155,255,.18)!important}
.faq-items details{border-bottom-color:rgba(137,155,255,.13)!important}
.faq-items summary{color:#e9edfa}.faq-items summary::after{color:#8fdcff!important}
.faq-items details[open]{background:linear-gradient(90deg,rgba(140,104,255,.045),transparent)}

/* Closing vault */
.closing{position:relative;overflow:hidden}
.closing-box{position:relative;overflow:hidden;isolation:isolate;border-radius:20px;border-color:rgba(128,155,255,.25);background:linear-gradient(120deg,rgba(20,25,51,.96),rgba(9,14,29,.96) 58%,rgba(8,15,29,.97));box-shadow:0 34px 100px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.03)}
.closing-box::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(500px 300px at 100% 0%,rgba(140,98,255,.13),transparent 70%),radial-gradient(480px 320px at 2% 100%,rgba(51,210,255,.06),transparent 72%)}
.closing-box::after{content:"";position:absolute;z-index:-1;right:-76px;top:50%;width:300px;height:300px;border-radius:50%;transform:translateY(-50%);border:1px solid rgba(136,117,255,.12);box-shadow:0 0 0 42px rgba(89,111,255,.018),0 0 0 84px rgba(57,212,255,.012)}
.fm-vault-mark{position:absolute;right:58px;top:50%;width:126px;height:126px;transform:translateY(-50%);border:1px solid rgba(151,128,255,.23);border-radius:50%;pointer-events:none;opacity:.72}
.fm-vault-mark::before{content:"";position:absolute;inset:25px;border-radius:50%;border:1px solid rgba(76,212,255,.23)}
.fm-vault-mark::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;border-radius:50%;transform:translate(-50%,-50%);background:#5eecc1;box-shadow:0 0 0 8px rgba(94,236,193,.035),0 0 24px rgba(94,236,193,.35)}

/* Footer */
.footer{position:relative;background:linear-gradient(180deg,#03040b,#020309);border-color:rgba(131,151,255,.13)}
.footer::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent),var(--accent2),transparent);opacity:.24}
.footer-links a{color:#8f99b3}.footer-links a:hover{color:#69dbff}.footer-bottom{border-color:rgba(132,151,255,.11);color:#69758f}

/* Inner page heroes */
.page-hero{
  min-height:590px;display:flex;align-items:center;
  background:
    radial-gradient(780px 480px at 86% 15%,rgba(124,84,255,.13),transparent 68%),
    radial-gradient(650px 420px at 10% 82%,rgba(48,205,255,.045),transparent 72%),
    linear-gradient(180deg,#050611,#060713);
  border-bottom:1px solid rgba(132,151,255,.12);
}
.page-hero::after{width:690px;height:690px;border-color:rgba(128,111,255,.10);right:-260px;top:-260px;box-shadow:0 0 0 75px rgba(133,102,255,.015),0 0 0 150px rgba(52,203,255,.012)}
.page-hero .container{position:relative;z-index:2}
.page-hero h1{font-size:clamp(3.3rem,6.35vw,6.4rem);letter-spacing:-.069em;line-height:1.02;max-width:1060px}
.page-lead{color:#b1bad0;max-width:690px!important}
.fm-page-orbit{position:absolute;z-index:1;right:max(4vw,38px);top:50%;width:330px;height:330px;transform:translateY(-42%);border:1px solid rgba(142,124,255,.10);border-radius:50%;pointer-events:none;opacity:.72}
.fm-page-orbit::before{content:"";position:absolute;inset:48px;border-radius:50%;border:1px solid rgba(65,211,255,.11);box-shadow:0 0 0 42px rgba(142,111,255,.012)}
.fm-page-orbit::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;border-radius:50%;transform:translate(-50%,-50%);background:#63f5ba;box-shadow:0 0 22px rgba(99,245,186,.48)}
.fm-orbit-node{position:absolute;width:7px;height:7px;border-radius:50%;background:#9e85ff;box-shadow:0 0 12px rgba(158,133,255,.55)}
.fm-orbit-node.n1{left:15%;top:28%}.fm-orbit-node.n2{right:14%;top:39%;background:#5cdcff}.fm-orbit-node.n3{left:46%;bottom:2%;background:#63f5ba}
.fm-orbit-caption{position:absolute;right:5px;bottom:55px;color:#6f7b9a;font:500 8px 'Roboto Mono',monospace;letter-spacing:.13em;transform:rotate(-90deg);transform-origin:right bottom}

/* Tables / architecture / process */
.architecture-wide,.integrations-table,.form-shell,.form-aside-box,.legal-content,.thanks-card,.note-card,.link-panel{
  border-color:rgba(132,153,255,.17)!important;
  background:linear-gradient(155deg,rgba(14,18,36,.93),rgba(8,12,24,.95))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02),var(--shadow-soft);
}
.architecture-wide{border-radius:18px;position:relative;overflow:hidden}
.architecture-wide::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(420px 240px at 92% 0%,rgba(139,102,255,.08),transparent 72%)}
.flow-card{border-color:rgba(129,151,255,.16)!important;background:rgba(11,16,33,.78)!important}
.flow-card strong{color:#f0f3ff}.flow-arrow{color:#7edcff!important;text-shadow:0 0 18px rgba(69,215,255,.27)}
.integrations-row{border-color:rgba(132,153,255,.12);background:rgba(11,16,32,.78)}
.integrations-row:nth-child(even){background:rgba(13,18,36,.7)}
.integrations-row.header{background:linear-gradient(90deg,rgba(124,93,255,.14),rgba(48,190,255,.08));color:#b7c0d7}
.integrations-row strong{color:#f2f4fb}
.phase{border-color:rgba(131,153,255,.16)}.phase-n{color:#a88fff}.phase h3{color:#f2f5ff}
.note-card,.link-panel{border-radius:15px!important}

/* Form */
.form-aside-box{border-radius:18px!important;position:relative;overflow:hidden}
.form-aside-box::after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-120px;bottom:-120px;border:1px solid rgba(140,117,255,.1);box-shadow:0 0 0 38px rgba(69,215,255,.015)}
.form-shell{border-radius:18px!important}
.wizard-bar{background:rgba(131,151,255,.14)!important}.wizard-bar.current{background:linear-gradient(90deg,var(--accent),var(--accent2))!important}.wizard-bar.complete{background:var(--accent3)!important}
.field input,.field select,.field textarea{background:rgba(5,8,18,.74)!important;border-color:rgba(132,153,255,.18)!important;color:#eef2ff!important;border-radius:9px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.018)}
.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(77,211,255,.55)!important;box-shadow:0 0 0 3px rgba(69,215,255,.06)!important}
.form-error{border-color:rgba(255,127,155,.26)!important;background:rgba(255,72,112,.06)!important}

/* Reveal enhancements */
.js .reveal{transform:translateY(22px) scale(.992);filter:blur(2px);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.75,.25,1),filter .72s ease}
.js .reveal.is-visible{transform:none;filter:none}

/* Decorative helper visuals */
.fm-section-code{position:absolute;right:max(28px,calc((100vw - var(--max))/2));top:30px;color:#5d6883;font:500 8px 'Roboto Mono',monospace;letter-spacing:.16em;pointer-events:none;opacity:.52}
.fm-section-code::before{content:"";display:inline-block;width:36px;height:1px;margin-right:9px;vertical-align:middle;background:linear-gradient(90deg,transparent,rgba(91,216,255,.36))}

@keyframes fm-scanline{0%{transform:translateX(0)}100%{transform:translateX(390%)}}
@keyframes fm-flow-v{0%{transform:translate(-50%,-8px);opacity:0}22%{opacity:1}78%{opacity:1}100%{transform:translate(-50%,29px);opacity:0}}
@keyframes fm-rotate{to{transform:rotate(360deg)}}
@keyframes fm-timeline{0%,100%{transform:scaleX(.1);opacity:.15}50%{transform:scaleX(1);opacity:.52}}

@media (max-width:1100px){
  .container{width:min(var(--max),calc(100% - 56px))}
  .section::before{width:calc(100% - 56px)}
  .hero-grid{grid-template-columns:1fr;gap:52px}
  .architecture-demo{max-width:760px}
  .fm-page-orbit{opacity:.35;right:-90px}
  .fm-vault-mark{opacity:.28;right:10px}
}
@media (max-width:900px){
  .fm-ambient-rail{display:none}
  .page-hero{min-height:520px}
  .fm-page-orbit{width:280px;height:280px;right:-110px;opacity:.24}
  .feature-card{transform:none!important}
}
@media (max-width:700px){
  body::before{background-size:52px 52px;opacity:.23}
  .container{width:calc(100% - 38px)}
  .section{padding:82px 0}
  .section::before{width:calc(100% - 38px)}
  .site-header{height:70px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
  .hero-grid{padding-top:30px;padding-bottom:74px;gap:42px}
  .hero h1{font-size:clamp(3rem,12vw,4.55rem)}
  .hero::after{background-size:150px 150px;opacity:.25}
  .architecture-demo{padding:15px;border-radius:16px;box-shadow:0 24px 65px rgba(0,0,0,.34)}
  .fm-demo-telemetry{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fm-routing-orbit{display:none}
  .feature-card{padding:26px;min-height:228px}
  .step-box,.market-panel{border-radius:14px!important}
  .page-hero{min-height:500px;padding-bottom:55px}
  .page-hero h1{font-size:clamp(2.9rem,11.2vw,4.65rem)}
  .fm-page-orbit{right:-145px;top:46%;opacity:.18}
  .closing-box{padding:34px 24px}
  .fm-vault-mark{display:none}
  .fm-section-code{display:none}
  .section-inline-cta{padding:17px 18px}
}
@media (max-width:420px){
  .fm-demo-telemetry span{font-size:7px;letter-spacing:.04em}
  .architecture-demo::after{animation-duration:7.5s}
  .page-hero{min-height:480px}
}
@media (hover:none),(pointer:coarse){.fm-cursor-glow{display:none}.feature-card:hover{transform:none!important}}
@media (prefers-reduced-motion:reduce){
  .architecture-demo::after,.connector-line span::after,.step-box::after,.timeline::before{animation:none!important}
  .fm-cursor-glow{display:none!important}
  .js .reveal{filter:none!important}
}


/* V4.1 corporate icon system: zero emoji / zero Unicode pictogram dependency */
.ui-arrow-ne,.ui-arrow-left{display:inline-block;position:relative;flex:none;width:10px;height:10px;vertical-align:-.5px;color:currentColor}
.ui-arrow-ne::before{content:"";position:absolute;left:.8px;bottom:1.2px;width:8.3px;height:1.15px;border-radius:999px;background:currentColor;transform:rotate(-45deg);transform-origin:left center}
.ui-arrow-ne::after{content:"";position:absolute;right:.45px;top:.45px;width:4.4px;height:4.4px;border-top:1.15px solid currentColor;border-right:1.15px solid currentColor;border-radius:.25px}
.ui-arrow-left::before{content:"";position:absolute;left:1px;top:6px;width:11px;height:2px;border-radius:2px;background:currentColor}
.ui-arrow-left::after{content:"";position:absolute;left:1px;top:3px;width:6px;height:6px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);border-radius:1px}
.btn>.ui-arrow-ne,.btn>.ui-arrow-left{font-size:0}
.mobile-menu .ui-arrow-ne,.mail-link .ui-arrow-ne,.footer-links .ui-arrow-ne,.text-link .ui-arrow-ne,.feature-card>a .ui-arrow-ne,.section-inline-cta .ui-arrow-ne,.demo-bottom .ui-arrow-ne{margin-left:7px}

.ui-flow-arrow{height:18px;position:relative}
.ui-flow-arrow::before{content:"";position:absolute;left:2px;right:4px;top:50%;height:1px;background:linear-gradient(90deg,rgba(143,119,255,.45),rgba(68,218,255,.85));transform:translateY(-50%)}
.ui-flow-arrow::after{content:"";position:absolute;right:3px;top:50%;width:6px;height:6px;border-top:1.5px solid #68d9ff;border-right:1.5px solid #68d9ff;transform:translateY(-50%) rotate(45deg)}

.node-ico,.line-art{position:relative}
.node-ico-source::before{content:"";width:15px;height:15px;border:2px solid currentColor;transform:rotate(45deg);border-radius:3px;box-shadow:0 0 18px rgba(104,217,255,.16)}
.node-ico-source::after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:currentColor}
.node-ico-ops::before{content:"";width:17px;height:17px;border:2px solid currentColor;border-radius:3px;box-shadow:inset 0 0 0 4px rgba(104,217,255,.08)}
.node-ico-ops::after{content:"";position:absolute;width:7px;height:2px;background:currentColor;box-shadow:0 5px 0 currentColor}

.line-art{width:48px}
.line-art-stack::before,.line-art-stack::after{content:"";position:absolute;width:19px;height:19px;border:2px solid currentColor;transform:rotate(45deg);border-radius:3px}
.line-art-stack::before{left:4px;top:8px}.line-art-stack::after{left:17px;top:8px;opacity:.58}
.line-art-route::before{content:"";position:absolute;left:3px;top:20px;width:39px;height:2px;background:linear-gradient(90deg,currentColor,rgba(104,217,255,.25));border-radius:3px}
.line-art-route::after{content:"";position:absolute;left:4px;top:15px;width:10px;height:10px;border:2px solid currentColor;border-radius:50%;box-shadow:26px 0 0 -2px #0d1c29,26px 0 0 0 currentColor}
.line-art-verify::before{content:"";position:absolute;left:6px;top:7px;width:31px;height:31px;border:2px solid currentColor;border-radius:50%;box-shadow:inset 0 0 0 7px rgba(104,217,255,.06)}
.line-art-verify::after{content:"";position:absolute;left:17px;top:18px;width:9px;height:5px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg)}
.ui-status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor;margin-right:5px;vertical-align:1px}

.proof-icon::before,.thanks-icon::before{content:"";width:10px;height:5px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg) translateY(-1px)}
.thanks-icon::before{width:16px;height:8px;border-left-width:3px;border-bottom-width:3px}
