:root {
  color-scheme: dark;
  --bg:#05080c;
  --bg-soft:#091019;
  --surface:#0b141e;
  --line:rgba(157,225,255,.16);
  --line-strong:rgba(157,225,255,.34);
  --text:#f2f8fb;
  --muted:#8395a3;
  --cyan:#72e4ff;
  --blue:#188dff;
  --max:1480px;
}

* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--bg); }
body { margin:0; overflow-x:hidden; background:var(--bg); color:var(--text); font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; line-height:1.6; }
a { color:inherit; }
button,input { font:inherit; }
:where(a,button,input):focus-visible { outline:2px solid var(--cyan); outline-offset:4px; }
.skip-link { position:fixed; top:10px; left:10px; z-index:100; padding:9px 13px; color:#031017; background:var(--cyan); transform:translateY(-160%); }
.skip-link:focus { transform:none; }
.section-shell { width:min(var(--max),calc(100% - 96px)); margin-inline:auto; }

.site-header { position:absolute; inset:0 0 auto; z-index:20; min-height:82px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:0 4.2vw; border-bottom:1px solid var(--line); background:linear-gradient(180deg,rgba(3,7,11,.9),rgba(3,7,11,.15)); }
.brand { display:inline-flex; align-items:center; gap:14px; width:max-content; color:#fff; text-decoration:none; }
.brand-name { font-size:18px; font-weight:700; letter-spacing:.36em; }
.brand-mark { position:relative; width:28px; height:34px; display:grid; place-items:center; color:var(--cyan); font-weight:800; line-height:1; }
.brand-mark i { position:absolute; left:4px; width:20px; height:2px; background:currentColor; box-shadow:0 0 10px rgba(114,228,255,.55); transform:rotate(-31deg); }
.brand-mark i:nth-child(1) { top:8px; }.brand-mark i:nth-child(2) { top:16px; transform:rotate(31deg); }.brand-mark i:nth-child(3) { top:24px; }
.nav-links { display:flex; align-items:center; gap:42px; }
.nav-links a,.language-link { color:#cad7de; font-size:11px; font-weight:650; letter-spacing:.14em; text-decoration:none; text-transform:uppercase; }
.nav-links a { position:relative; }
.nav-links a::after { content:""; position:absolute; inset:auto 100% -10px 0; height:1px; background:var(--cyan); transition:inset .25s ease; }
.nav-links a:hover::after { inset-right:0; }
.header-actions { justify-self:end; display:flex; align-items:center; gap:26px; }
.language-link { color:var(--cyan); }
.nav-toggle { display:none; border:0; background:none; color:#fff; }

.hero { position:relative; min-height:970px; height:100svh; max-height:1120px; overflow:hidden; border-bottom:1px solid var(--line); background:radial-gradient(circle at 69% 42%,rgba(9,68,101,.2),transparent 35%),#04070a; }
.neural-canvas { position:absolute; inset:82px 0 145px 0; z-index:2; width:100%; height:calc(100% - 227px); opacity:0; filter:saturate(1.08); transition:opacity 1.2s ease; }
.webgl-ready .neural-canvas { opacity:1; }
.webgl-unavailable .hero-glow { opacity:.5; }
.hero-grid { position:absolute; inset:0; z-index:1; opacity:.3; background-image:linear-gradient(rgba(102,196,235,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(102,196,235,.09) 1px,transparent 1px); background-size:clamp(74px,8vw,145px) clamp(74px,8vw,145px); mask-image:linear-gradient(to bottom,black,transparent 82%); }
.hero-grid::before,.hero-grid::after { content:""; position:absolute; background:rgba(137,225,255,.4); box-shadow:0 0 12px rgba(114,228,255,.35); }
.hero-grid::before { top:82px; left:66%; width:1px; height:65%; }.hero-grid::after { top:47%; left:0; width:100%; height:1px; }
.hero-glow { position:absolute; z-index:1; width:52vw; height:52vw; left:49%; top:45%; border-radius:50%; background:radial-gradient(circle,rgba(48,177,255,.13),rgba(11,98,144,.05) 34%,transparent 70%); transform:translate(-50%,-50%); filter:blur(18px); }
.hero::after { content:""; position:absolute; z-index:3; inset:82px auto 145px 0; width:54%; background:linear-gradient(90deg,rgba(4,7,10,.98) 0%,rgba(4,7,10,.8) 48%,transparent 100%); pointer-events:none; }
.hero-copy { position:absolute; z-index:5; top:50%; left:4.2vw; width:min(650px,43vw); transform:translateY(-52%); }
.eyebrow { margin:0 0 22px; color:var(--cyan); font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:10px; font-weight:650; letter-spacing:.22em; text-transform:uppercase; }
.eyebrow span { margin-right:25px; padding-bottom:7px; border-bottom:1px solid var(--cyan); }
h1,h2,h3,p { margin-top:0; }
.hero h1 { margin:0 0 25px; font-family:"Arial Narrow",Impact,Inter,sans-serif; font-size:clamp(70px,8.1vw,143px); font-weight:800; line-height:1.06; letter-spacing:-.055em; text-transform:uppercase; }
.lang-en .hero h1 { font-size:clamp(68px,7.5vw,132px); }
.hero h1 em { display:inline-block; white-space:nowrap; color:transparent; font-style:normal; -webkit-text-stroke:1px #e7faff; text-shadow:0 0 38px rgba(80,210,255,.17); }
.hero-lead { max-width:580px; margin-bottom:31px; color:#a9b9c3; font-size:17px; line-height:1.8; }
.hero-specialty { margin:-8px 0 12px; color:#86a9b8; font:10px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.16em; text-transform:uppercase; }
.lang-en .hero-lead { max-width:540px; }
.hero-actions { display:flex; flex-wrap:wrap; gap:13px; }
.button { min-height:47px; display:inline-flex; align-items:center; justify-content:space-between; gap:36px; min-width:192px; padding:0 18px; border:1px solid rgba(216,240,250,.36); color:#f2f8fb; background:rgba(3,10,15,.46); font-size:11px; font-weight:700; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; backdrop-filter:blur(10px); transition:background .2s,color .2s,border-color .2s; }
.button:hover { border-color:var(--cyan); }
.button-primary { color:#031017; background:linear-gradient(100deg,#e7fbff,#83e8ff); border-color:#c9f7ff; box-shadow:0 0 24px rgba(87,216,255,.12); }
.button-primary:hover { background:#fff; }
.hero-readouts { position:absolute; inset:0; z-index:5; pointer-events:none; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.readout { position:absolute; width:175px; padding-left:18px; }
.readout::before { content:""; position:absolute; left:0; top:3px; width:7px; height:7px; border:1px solid var(--cyan); box-shadow:0 0 8px var(--cyan); }
.readout::after { content:""; position:absolute; left:7px; top:7px; width:60px; height:1px; background:linear-gradient(90deg,var(--cyan),transparent); transform:translateX(-100%); }
.readout b,.readout span { display:block; }
.readout b { color:#e9faff; font-size:10px; letter-spacing:.09em; }
.readout span { margin-top:7px; color:#6f9daf; font-size:8px; line-height:1.6; letter-spacing:.11em; }
.readout-a { top:19%; left:55%; }.readout-b { top:29%; right:3.2%; }.readout-c { top:62%; right:2.3%; }
.hero-coordinates { position:absolute; right:3.2%; bottom:179px; z-index:5; display:flex; flex-direction:column; gap:4px; padding:14px 0 0; border-top:1px solid var(--line-strong); color:#6792a3; font:8px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.14em; }
.scroll-cue { position:absolute; z-index:6; left:4.2vw; bottom:174px; display:flex; align-items:end; gap:13px; color:#87a1ad; font:8px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.16em; text-decoration:none; text-transform:uppercase; }
.scroll-cue i { position:relative; width:22px; height:38px; border-left:1px solid #c8f6ff; }
.scroll-cue i::before { content:""; position:absolute; left:-3px; top:0; width:6px; height:6px; border-radius:50%; background:#fff; box-shadow:0 0 12px var(--cyan); animation:scrollPulse 2.2s ease-in-out infinite; }
@keyframes scrollPulse { 50% { transform:translateY(31px); opacity:.35; } }
.system-preview { position:absolute; z-index:7; inset:auto 0 0; min-height:145px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line-strong); background:rgba(3,8,12,.86); backdrop-filter:blur(18px); }
.system-preview > * { min-width:0; border-right:1px solid var(--line); }
.system-preview a { position:relative; display:grid; align-content:center; padding:24px 4.2vw; text-decoration:none; transition:background .25s; }
.system-preview a:hover { background:rgba(77,199,255,.07); }
.system-preview strong { font-size:17px; letter-spacing:.01em; }
.system-preview a span { color:#5f8291; font:8px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.14em; }
.system-preview a::after { content:"↗"; position:absolute; right:22px; bottom:19px; color:var(--cyan); }

.statement-section { min-height:590px; display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:70px; align-items:center; border-bottom:1px solid var(--line); }
.statement-copy h2,.section-heading h2,.fde-heading h2,.contact-section h2 { margin:0; font-size:clamp(52px,6.7vw,108px); font-weight:630; line-height:.94; letter-spacing:-.066em; }
.statement-copy h2 span { color:var(--cyan); }
.trust-phrase { white-space:nowrap; }
.statement-aside { align-self:end; margin-bottom:86px; padding-top:18px; border-top:1px solid var(--line-strong); color:var(--muted); }
.statement-aside p { font-size:15px; line-height:1.8; }
.statement-aside span { color:#587887; font:8px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.15em; }

.systems-section { padding-top:110px; padding-bottom:120px; }
.section-heading { display:grid; grid-template-columns:1fr 2fr; align-items:end; margin-bottom:90px; }
.section-heading .eyebrow { align-self:start; }
.section-heading h2 { grid-column:2; font-size:clamp(50px,5.5vw,89px); }
.system-row { position:relative; min-height:500px; display:grid; grid-template-columns:1fr; gap:24px; align-content:center; padding:54px 0; border-top:1px solid var(--line); overflow:hidden; text-align:center; }
.system-row:last-child { border-bottom:1px solid var(--line); }
.system-title span { color:#6f94a4; font:10px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.15em; }
.system-title h3 { margin:12px 0 0; font-size:clamp(42px,4.2vw,68px); font-weight:580; line-height:1; letter-spacing:-.045em; }
.system-row > p { max-width:850px; margin:0 auto; color:var(--muted); font-size:16px; line-height:1.85; }
.system-graphic { position:relative; width:100%; height:230px; opacity:.8; }
.model-core { width:min(100%,820px); height:320px; display:grid; place-items:center; margin-inline:auto; }
.cube-scene { position:relative; width:160px; height:160px; display:grid; place-items:center; perspective:720px; }
.cube-scene::after { content:""; position:absolute; left:50%; bottom:-38px; width:148px; height:38px; border-radius:50%; background:radial-gradient(ellipse,rgba(76,204,255,.16),transparent 70%); filter:blur(8px); transform:translateX(-50%); }
.solid-cube { position:relative; z-index:1; width:132px; height:132px; transform-style:preserve-3d; animation:solidCubeTurn 18s linear infinite; }
.cube-face { position:absolute; inset:0; display:block; border:1px solid rgba(205,247,255,.62); background:rgba(76,190,235,.025); box-shadow:inset 0 0 24px rgba(71,194,241,.025); backface-visibility:visible; }
.cube-front { transform:translateZ(66px); }.cube-back { transform:rotateY(180deg) translateZ(66px); }
.cube-right { transform:rotateY(90deg) translateZ(66px); }.cube-left { transform:rotateY(-90deg) translateZ(66px); }
.cube-top { transform:rotateX(90deg) translateZ(66px); }.cube-bottom { transform:rotateX(-90deg) translateZ(66px); }
@keyframes solidCubeTurn { from { transform:rotateX(-18deg) rotateY(32deg); } to { transform:rotateX(-18deg) rotateY(392deg); } }
.membrane i { position:absolute; top:50%; left:50%; border:1px solid rgba(114,228,255,.32); border-radius:50%; transform:translate(-50%,-50%); }
.membrane i:nth-child(1) { width:128px;height:128px;box-shadow:inset 0 0 35px rgba(46,182,255,.12),0 0 25px rgba(46,182,255,.08); }.membrane i:nth-child(2) { width:83px;height:83px;border-style:dashed; }.membrane i:nth-child(3) { width:10px;height:10px;background:#d9f9ff;box-shadow:0 0 25px var(--cyan); }
.orbit-star { position:absolute; z-index:2; top:50%; left:50%; width:var(--orbit); height:var(--orbit); border-radius:50%; animation:orbitSpin var(--duration) linear var(--delay) infinite; }
.orbit-star::after { content:""; position:absolute; top:0; left:50%; width:var(--star-size); height:var(--star-size); border-radius:50%; background:#e8fcff; box-shadow:0 0 5px #fff,0 0 13px var(--cyan),0 0 26px rgba(64,177,255,.7); transform:translate(-50%,-50%); animation:orbitTwinkle 1.9s ease-in-out var(--twinkle-delay) infinite; }
@keyframes orbitSpin { from { transform:translate(-50%,-50%) rotate(0); } to { transform:translate(-50%,-50%) rotate(1turn); } }
@keyframes orbitTwinkle { 0%,100% { opacity:.35; scale:.7; } 50% { opacity:1; scale:1.35; } }
.topology { overflow:hidden; background-color:rgba(13,40,53,.08); background-image:linear-gradient(rgba(114,228,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(114,228,255,.09) 1px,transparent 1px); background-size:var(--grid-cell-size,72px) var(--grid-cell-size,72px); }
.topology i { position:absolute; width:7px; height:7px; border:1px solid var(--cyan); background:#07121a; box-shadow:0 0 12px rgba(114,228,255,.5); }
.topology i:nth-child(1){left:12%;top:31%}.topology i:nth-child(2){left:36%;top:68%}.topology i:nth-child(3){left:57%;top:25%}.topology i:nth-child(4){left:78%;top:60%}.topology i:nth-child(5){left:90%;top:19%}
.grid-cell { position:absolute; width:var(--grid-cell-size,72px); height:var(--grid-cell-size,72px); background:rgba(70,203,255,var(--flash-level)); box-shadow:inset 0 0 18px rgba(110,226,255,.16),0 0 16px rgba(54,189,255,.08); opacity:.04; animation:gridFlash var(--flash-duration) ease-in-out var(--flash-delay) infinite; }
@keyframes gridFlash { 0%,38%,100% { opacity:.025; } 58% { opacity:.12; } 76% { opacity:.68; } 88% { opacity:.18; } }

.fde-section { min-height:820px; display:grid; grid-template-columns:.86fr 1.14fr; gap:8vw; padding-top:120px; padding-bottom:120px; border-top:1px solid var(--line); }
.fde-heading { position:sticky; top:110px; align-self:start; }
.fde-heading h2 { font-size:clamp(55px,6vw,96px); }
.fde-heading h2 em,.contact-section h2 em { color:var(--cyan); font-style:normal; }
.fde-heading > p { max-width:600px; margin-top:34px; color:var(--muted); font-size:15px; line-height:1.9; }
.fde-deliverables { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }
.fde-deliverables span { padding:7px 10px; border:1px solid var(--line); color:#83a7b6; font:9px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.1em; text-transform:uppercase; }
.fde-path { position:relative; padding-left:55px; }
.fde-path::before { content:""; position:absolute; left:8px; top:30px; bottom:110px; width:1px; background:linear-gradient(var(--cyan),rgba(114,228,255,.08)); box-shadow:0 0 12px rgba(114,228,255,.28); }
.fde-path article { position:relative; min-height:205px; padding:30px 0 28px 10px; border-top:1px solid var(--line); }
.fde-path article::before { content:""; position:absolute; left:-51px; top:29px; width:9px; height:9px; border:1px solid var(--cyan); background:var(--bg); box-shadow:0 0 12px var(--cyan); }
.fde-path article span { color:var(--cyan); font:9px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.16em; }
.fde-path article h3 { margin:35px 0 10px; font-size:clamp(28px,3vw,45px); font-weight:570; letter-spacing:-.04em; }
.fde-path article p { max-width:480px; color:var(--muted); font-size:14px; }

.fde-knowledge { padding-top:110px; padding-bottom:120px; border-top:1px solid var(--line); }
.fde-knowledge > header { display:grid; grid-template-columns:.7fr 1fr; column-gap:8vw; align-items:end; margin-bottom:70px; }
.fde-knowledge > header .eyebrow { grid-column:1 / -1; }
.fde-knowledge > header h2 { margin:0; font-size:clamp(54px,6vw,96px); font-weight:620; line-height:.95; letter-spacing:-.06em; }
.fde-knowledge > header > p:last-child { margin:0; color:var(--muted); font-size:15px; line-height:1.9; }
.fde-knowledge-grid { display:grid; grid-template-columns:repeat(2,1fr); border:1px solid var(--line); }
.fde-knowledge-grid article { min-height:270px; padding:34px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.fde-knowledge-grid article:nth-child(2n) { border-right:0; }
.fde-knowledge-grid article:nth-last-child(-n+2) { border-bottom:0; }
.fde-knowledge-grid span { color:var(--cyan); font:9px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.15em; }
.fde-knowledge-grid h3 { margin:62px 0 12px; font-size:clamp(25px,2.4vw,37px); font-weight:570; letter-spacing:-.035em; }
.fde-knowledge-grid p { max-width:580px; margin:0; color:var(--muted); font-size:14px; line-height:1.85; }

.principles-section { padding-top:110px; padding-bottom:120px; }
.principles-intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.65fr); column-gap:8vw; align-items:end; margin-bottom:76px; }
.principles-intro .eyebrow { grid-column:1 / -1; }
.principles-intro h2 { max-width:850px; margin:0; font-size:clamp(48px,5.4vw,86px); font-weight:620; line-height:.98; letter-spacing:-.06em; }
.principles-intro > p:last-child { margin:0; color:var(--muted); font-size:15px; line-height:1.9; }
.principle-line { min-height:190px; display:grid; grid-template-columns:.72fr 1fr auto; gap:5vw; align-items:center; border-top:1px solid var(--line); }
.principle-line:last-child { border-bottom:1px solid var(--line); }
.principle-line h3 { margin:0; font-size:clamp(38px,4.3vw,68px); font-weight:570; letter-spacing:-.055em; }
.principle-line .principle-copy { margin:0; color:var(--muted); font-size:14px; line-height:1.85; }
.principle-line > span { color:#638697; font:9px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.14em; white-space:nowrap; }

.contact-section { min-height:620px; display:grid; grid-template-columns:1.5fr .5fr; align-items:center; gap:8vw; }
.contact-section h2 { font-size:clamp(58px,7vw,112px); }
.contact-side { align-self:end; margin-bottom:88px; }
.contact-side p { margin-bottom:28px; color:var(--muted); font-size:15px; line-height:1.9; }

.site-footer { padding:72px 4.2vw 28px; border-top:1px solid var(--line); background:#030609; }
.footer-main { min-height:170px; display:grid; grid-template-columns:1fr 1.4fr 1fr; gap:40px; align-items:start; }
.footer-main p { color:#afbdc5; font-size:13px; line-height:1.9; }
.footer-main p span { color:#577787; font:8px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.13em; }
.footer-main nav { justify-self:end; display:grid; grid-template-columns:1fr 1fr; gap:11px 50px; }
.footer-main nav a { color:#9aabb4; font-size:12px; text-decoration:none; }
.footer-legal { min-height:62px; display:flex; justify-content:space-between; align-items:end; gap:30px; padding-top:24px; border-top:1px solid var(--line); color:#4f6d7b; font:8px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; }
.footer-legal div { display:flex; gap:22px; flex-wrap:wrap; }
.footer-legal a { text-decoration:none; }

/* Enterprise contact */
.contact-page { min-height:100vh; background:radial-gradient(circle at 78% 28%,rgba(34,151,207,.11),transparent 28%),var(--bg); }
.contact-header { position:relative; }
.contact-nav { justify-self:end; display:flex; align-items:center; gap:30px; }
.contact-nav a { color:#b9cad3; font-size:11px; font-weight:650; letter-spacing:.12em; text-decoration:none; text-transform:uppercase; }
.contact-main { overflow:hidden; }
.contact-hero { min-height:760px; display:grid; grid-template-columns:minmax(0,1fr) minmax(390px,.68fr); gap:8vw; align-items:center; padding-block:105px; }
.contact-copy h1 { max-width:850px; margin:0; font-size:clamp(70px,7.7vw,125px); font-weight:650; line-height:.91; letter-spacing:-.07em; }
.contact-lead { max-width:720px; margin:34px 0 28px; color:var(--muted); font-size:17px; line-height:1.9; }
.contact-topics { display:flex; flex-wrap:wrap; gap:8px; }
.contact-topics span { padding:7px 10px; border:1px solid var(--line); color:#86a9b8; font:9px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.1em; text-transform:uppercase; }
.wechat-card { display:grid; grid-template-columns:minmax(150px,235px) 1fr; gap:28px; align-items:center; padding:28px; border:1px solid var(--line-strong); background:linear-gradient(145deg,rgba(17,37,49,.72),rgba(5,10,15,.78)); box-shadow:0 24px 90px rgba(0,0,0,.28); }
.qr-frame { padding:10px; background:transparent; }
.qr-frame img { display:block; width:100%; height:auto; }
.wechat-card h2 { margin:0 0 18px; font-size:clamp(28px,2.6vw,40px); line-height:1; letter-spacing:-.045em; }
.contact-page:not(.lang-en) .wechat-card h2 { white-space:nowrap; }
.wechat-card > div:last-child > p:not(.eyebrow):not(.wechat-id) { color:var(--muted); font-size:13px; line-height:1.75; }
.wechat-id { margin:0 0 18px; padding:13px 0; border-block:1px solid var(--line); }
.wechat-id span,.wechat-id strong { display:block; }
.wechat-id span { color:#6b8e9d; font:9px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.14em; text-transform:uppercase; }
.wechat-id strong { margin-top:4px; font-size:20px; letter-spacing:.02em; }
.text-link { font-size:12px; text-underline-offset:5px; }
.contact-brief { padding-block:110px 125px; border-top:1px solid var(--line); }
.contact-brief > div:first-child { display:grid; grid-template-columns:.6fr 1.4fr; align-items:end; margin-bottom:62px; }
.contact-brief h2 { max-width:800px; margin:0; font-size:clamp(48px,5vw,78px); line-height:.98; letter-spacing:-.055em; }
.brief-grid { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid var(--line); }
.brief-grid article { min-height:230px; padding:28px; border-right:1px solid var(--line); }
.brief-grid article:last-child { border-right:0; }
.brief-grid span { color:var(--cyan); font:9px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.15em; }
.brief-grid h3 { margin:52px 0 12px; font-size:25px; }
.brief-grid p { max-width:320px; color:var(--muted); font-size:14px; line-height:1.8; }
.contact-note { margin:24px 0 0; color:#668897; font-size:12px; }

[data-reveal] { opacity:0; transform:translateY(35px); transition:opacity .85s ease,transform .85s cubic-bezier(.2,.8,.2,1); }
[data-reveal].is-visible { opacity:1; transform:none; }

/* Existing SwipeLeft product and legal pages */
.wrap { width:min(1120px,calc(100% - 48px)); margin:0 auto; }
.site-header > .wrap { grid-column:1 / -1; width:100%; }
.nav { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.nav .brand-sub { display:block; color:var(--muted); font-size:10px; font-weight:500; letter-spacing:.08em; }
.nav .nav-links { position:static; display:flex; padding:0; border:0; background:none; }
.app-hero { padding:150px 0 100px; background:radial-gradient(circle at 76% 20%,rgba(56,176,255,.13),transparent 30%); }
.app-hero h1 { max-width:850px; margin:0 0 30px; font-size:clamp(58px,8vw,105px); line-height:.94; letter-spacing:-.07em; }.app-hero h1 em { color:var(--cyan); font-style:normal; }
.app-lead { max-width:650px; color:var(--muted); font-size:20px; }
.section { padding:110px 0; border-top:1px solid var(--line); }
.section-dark { background:#081018; }
.kicker { margin:0 0 18px; color:var(--cyan); font-size:11px; font-weight:750; letter-spacing:.16em; }
.section-intro h2 { max-width:650px; margin-bottom:0; font-size:clamp(38px,5vw,68px); line-height:1.02; letter-spacing:-.06em; }
.app-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.app-card { padding:26px; min-height:220px; border:1px solid var(--line); background:rgba(255,255,255,.025); }.app-card h3 { margin:28px 0 8px; font-size:23px; }.app-card p { color:var(--muted); }
.platform-pill { display:inline-flex; padding:6px 10px; color:var(--cyan); border:1px solid rgba(114,228,255,.3); font-size:11px; letter-spacing:.08em; }
.legal-panel { max-width:800px; padding:30px; border:1px solid var(--line); background:rgba(255,255,255,.025); }.legal-panel h2 { margin-bottom:15px; font-size:32px; }.legal-panel p,.legal-panel li { color:#d6dce6; }.legal-panel h3 { margin-top:27px; font-size:20px; }.legal-panel a,.text-link { color:var(--cyan); }
.muted { color:var(--muted); }

@media (max-width:1050px) {
  .site-header { grid-template-columns:1fr auto auto; }
  .nav-links { gap:24px; }
  .readout-a { left:62%; }.readout-b,.readout-c { right:2%; }
  .system-preview { grid-template-columns:repeat(3,1fr); }
}

@media (max-width:780px) {
  .section-shell { width:min(100% - 34px,660px); }
  .site-header { position:absolute; min-height:70px; grid-template-columns:1fr auto auto; padding:0 17px; }
  .brand-name { font-size:15px; }.brand-mark { width:23px; transform:scale(.85); }
  .header-actions { gap:14px; }
  .nav-toggle { width:36px; height:36px; display:grid; align-content:center; gap:6px; margin-left:2px; padding:7px; order:3; }
  .nav-toggle span { display:block; width:100%; height:1px; background:#e9faff; transition:transform .2s; }
  .nav-toggle[aria-expanded="true"] span:first-child { transform:translateY(3.5px) rotate(45deg); }.nav-toggle[aria-expanded="true"] span:last-child { transform:translateY(-3.5px) rotate(-45deg); }
  .nav-links { position:absolute; top:70px; left:0; right:0; display:none; flex-direction:column; align-items:flex-start; gap:0; padding:12px 17px 25px; border-bottom:1px solid var(--line); background:rgba(3,8,12,.97); backdrop-filter:blur(16px); }
  .nav-links.is-open { display:flex; }.nav-links a { width:100%; padding:14px 0; border-bottom:1px solid var(--line); }
  .hero { height:auto; min-height:1100px; max-height:none; }
  .neural-canvas { inset:270px 0 260px; height:570px; }
  .hero::after { inset:70px 0 auto; width:100%; height:430px; background:linear-gradient(180deg,rgba(4,7,10,.98),rgba(4,7,10,.76) 55%,transparent); }
  .hero-grid::before { top:70px; left:50%; }
  .hero-copy { top:130px; left:17px; width:calc(100% - 34px); transform:none; }
  .hero h1,.lang-en .hero h1 { font-size:clamp(55px,17vw,78px); line-height:1.04; }
  .hero-lead { max-width:500px; font-size:14px; line-height:1.7; }
  .hero-actions { gap:8px; }.button { min-width:0; padding:0 13px; gap:18px; }
  .hero-readouts { display:none; }
  .hero-coordinates { right:17px; bottom:281px; }
  .scroll-cue { left:17px; bottom:285px; }
  .system-preview { min-height:176px; grid-template-columns:1fr 1fr; }
  .system-preview a { min-height:88px; padding:15px 17px; border-top:1px solid var(--line); }
  .system-preview a:last-child { grid-column:1 / -1; }
  .statement-section { min-height:560px; grid-template-columns:1fr; gap:12px; padding-block:82px; }
  .statement-copy h2 { font-size:clamp(45px,13vw,67px); }
  .statement-aside { grid-column:1; align-self:auto; margin:20px 0 0; }
  .systems-section { padding-block:80px; }.section-heading { display:block; margin-bottom:54px; }.section-heading h2 { font-size:47px; }
  .system-row { min-height:420px; grid-template-columns:1fr; align-content:center; gap:20px; padding:48px 0; }
  .system-title h3 { font-size:38px; }.system-row > p { grid-column:1; }.system-graphic { grid-column:1; height:115px; }.model-core { width:min(100%,620px); height:330px; }
  .fde-section { min-height:0; display:block; padding-block:84px; }
  .fde-heading { position:static; }.fde-heading h2 { font-size:50px; }.fde-path { margin-top:75px; padding-left:35px; }.fde-path article::before { left:-31px; }
  .fde-knowledge { padding-block:84px; }.fde-knowledge > header { display:block; margin-bottom:50px; }.fde-knowledge > header h2 { font-size:50px; }.fde-knowledge > header > p:last-child { margin-top:26px; }.fde-knowledge-grid { grid-template-columns:1fr; }.fde-knowledge-grid article { min-height:220px; border-right:0; }.fde-knowledge-grid article:nth-last-child(2) { border-bottom:1px solid var(--line); }.fde-knowledge-grid h3 { margin-top:46px; }
  .principles-section { padding-block:84px; }.principles-intro { display:block; margin-bottom:56px; }.principles-intro h2 { font-size:46px; }.principles-intro > p:last-child { margin-top:28px; }.principle-line { min-height:0; grid-template-columns:1fr; gap:18px; padding:38px 0; }.principle-line h3 { font-size:38px; }.principle-line > span { white-space:normal; }
  .contact-section { min-height:590px; display:block; padding-block:84px; }.contact-section h2 { font-size:51px; }.contact-side { margin:58px 0 0; max-width:500px; }
  .contact-hero { min-height:0; grid-template-columns:1fr; gap:60px; padding-block:92px 76px; }.contact-copy h1 { font-size:clamp(56px,15vw,78px); }.contact-lead { font-size:15px; }.wechat-card { grid-template-columns:minmax(130px,190px) 1fr; }
  .contact-brief { padding-block:82px; }.contact-brief > div:first-child { display:block; margin-bottom:48px; }.contact-brief h2 { font-size:44px; }.brief-grid { grid-template-columns:1fr; }.brief-grid article { min-height:190px; border-right:0; border-bottom:1px solid var(--line); }.brief-grid article:last-child { border-bottom:0; }
  .site-footer { padding:55px 17px 25px; }.footer-main { grid-template-columns:1fr; min-height:0; }.footer-main nav { justify-self:start; }.footer-legal { margin-top:55px; align-items:flex-start; flex-direction:column; }
  .wrap { width:min(100% - 30px,650px); }.nav .nav-links { display:flex; flex-direction:row; width:auto; }.app-hero { padding-top:130px; }.app-grid { grid-template-columns:1fr; }.section { padding:76px 0; }
}

@media (max-width:560px) {
  .trust-phrase { white-space:normal; }
  .hero-specialty { max-width:320px; font-size:9px; }
  .contact-nav { gap:16px; }.contact-nav a { font-size:9px; }
  .contact-hero { padding-top:76px; }.contact-copy h1 { font-size:54px; }
  .wechat-card { grid-template-columns:1fr; padding:20px; }.qr-frame { width:min(100%,290px); margin-inline:auto; }
  .brief-grid article { padding:24px 4px; }
}

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

/* Lorenz art direction: solid/outlined heading and balanced luminous lobes. */
body[data-hero="lorenz"] .hero { min-height:780px; max-height:1120px; background:#040608; }
body[data-hero="lorenz"] .hero-grid,
body[data-hero="lorenz"] .hero-readouts { display:none; }
body[data-hero="lorenz"] .hero-glow { opacity:.16; }
body[data-hero="lorenz"] .hero::after { width:43%; background:linear-gradient(90deg,#040608,rgba(4,6,8,.7) 65%,transparent); }
body[data-hero="lorenz"] .neural-canvas { inset:70px 0 84px; height:calc(100% - 154px); filter:saturate(.65); }
body[data-hero="lorenz"] .hero-copy { top:47%; width:44vw; }
body[data-hero="lorenz"] .hero-copy > .eyebrow { display:none; }
body[data-hero="lorenz"] .hero h1 { font-family:"Arial Narrow",Impact,Inter,sans-serif; font-size:clamp(76px,7.35vw,134px); font-weight:800; line-height:1.12; letter-spacing:-.045em; }
body[data-hero="lorenz"] .hero h1 em { color:transparent; -webkit-text-stroke:1px #e7faff; text-shadow:0 0 38px rgba(80,210,255,.17); font-weight:800; }
body.lang-en[data-hero="lorenz"] .hero h1 { font-size:clamp(48px,5.3vw,96px); }
body[data-hero="lorenz"] .hero-specialty { font-size:11px; letter-spacing:.2em; margin:22px 0; }
body[data-hero="lorenz"] .hero-lead { font-size:16px; max-width:550px; color:#93a6af; }
body[data-hero="lorenz"] .hero-actions .button { background:transparent; box-shadow:none; border:1px solid #86a7b2; color:#dcecf2; font-weight:400; }
body[data-hero="lorenz"] .hero-actions .button:hover { background:rgba(125,210,235,.1); }
body[data-hero="lorenz"] .hero-coordinates { bottom:115px; border:0; font-size:10px; letter-spacing:.2em; }
body[data-hero="lorenz"] .hero-coordinates span { display:none; }
body[data-hero="lorenz"] .hero-coordinates::before { content:"HEFEI · 31.8206° N · 117.2272° E"; color:#7d9da9; }
body[data-hero="lorenz"] .hero-coordinates::after { content:"E / LORENZ FLOW"; }
body[data-hero="lorenz"] .system-preview { min-height:84px; background:transparent; backdrop-filter:none; }
body[data-hero="lorenz"] .system-preview a { text-align:center; padding:18px; }
body[data-hero="lorenz"] .system-preview strong { font-size:13px; font-weight:400; letter-spacing:.12em; }
body[data-hero="lorenz"] .system-preview a span { margin-top:8px; }
body[data-hero="lorenz"] .system-preview a::after { display:none; }
body[data-hero="lorenz"] .scroll-cue { bottom:125px; }
.lorenz-placeholder { display:none; }
body[data-hero="lorenz"] .lorenz-placeholder { position:absolute; z-index:2; top:14%; right:4%; width:53%; height:70%; display:block; opacity:.42; transition:opacity .5s ease; }
body[data-hero="lorenz"] .lorenz-placeholder i { position:absolute; top:50%; width:43%; height:78%; border:1px solid rgba(180,224,238,.42); border-radius:50% 45% 52% 48%; box-shadow:0 0 18px rgba(82,188,222,.08); }
body[data-hero="lorenz"] .lorenz-placeholder i:nth-child(odd) { left:5%; transform:translateY(-50%) rotate(-22deg) scale(var(--ring,1)); }
body[data-hero="lorenz"] .lorenz-placeholder i:nth-child(even) { right:5%; transform:translateY(-50%) rotate(22deg) scale(var(--ring,1)); }
body[data-hero="lorenz"] .lorenz-placeholder i:nth-child(1),body[data-hero="lorenz"] .lorenz-placeholder i:nth-child(2) { --ring:1; }
body[data-hero="lorenz"] .lorenz-placeholder i:nth-child(3),body[data-hero="lorenz"] .lorenz-placeholder i:nth-child(4) { --ring:.82; }
body[data-hero="lorenz"] .lorenz-placeholder i:nth-child(5),body[data-hero="lorenz"] .lorenz-placeholder i:nth-child(6) { --ring:.64; }
body[data-hero="lorenz"] .lorenz-placeholder i:nth-child(7),body[data-hero="lorenz"] .lorenz-placeholder i:nth-child(8) { --ring:.46; }
body.webgl-ready[data-hero="lorenz"] .lorenz-placeholder { opacity:0; pointer-events:none; }
/* Stack before either the heading or the attractor becomes cramped. */
@media(max-width:1100px) {
 body[data-hero="lorenz"] .hero { display:flex; flex-direction:column; height:auto; min-height:0; max-height:none; padding-top:120px; }
 body[data-hero="lorenz"] .hero-copy { position:relative; inset:auto; transform:none; order:1; width:calc(100% - 8.4vw); margin:0 auto; }
 body[data-hero="lorenz"] .hero-lead { max-width:640px; }
 body[data-hero="lorenz"] .neural-canvas { position:relative; inset:auto; order:2; flex:none; width:100%; height:clamp(360px,65vw,660px); margin-top:28px; }
 body[data-hero="lorenz"] .lorenz-placeholder { position:relative; inset:auto; order:2; flex:none; width:min(760px,94%); height:clamp(360px,65vw,660px); margin:28px auto 0; }
 body[data-hero="lorenz"] .neural-canvas + .lorenz-placeholder { margin-top:calc(-1 * clamp(360px,65vw,660px) - 28px); }
 body[data-hero="lorenz"] .hero::after { display:none; }
 body[data-hero="lorenz"] .hero-coordinates { position:relative; inset:auto; order:3; align-self:center; margin:0 0 32px; padding:0; }
 body[data-hero="lorenz"] .system-preview { position:relative; inset:auto; order:4; min-height:84px; }
 body[data-hero="lorenz"] .scroll-cue { display:none; }
}
@media(max-width:760px) {
 body[data-hero="lorenz"] .hero-copy { width:calc(100% - 34px); }
 body[data-hero="lorenz"] .hero h1 { font-size:clamp(52px,16vw,78px); }
 body.lang-en[data-hero="lorenz"] .hero h1 { font-size:clamp(30px,9.4vw,68px); }
 body[data-hero="lorenz"] .system-preview { min-height:160px; }
}

/* SwipeLeft platform privacy and support pages */
.swipeleft-page .site-header { position:relative; }
.swipeleft-page .app-hero { padding:72px 0 62px; }
.swipeleft-page .app-hero h1 { font-size:clamp(48px,7vw,86px); }
.swipeleft-page .section { padding:60px 0 100px; }
.swipeleft-page .legal-panel { max-width:900px; padding:clamp(24px,4vw,48px); }
.swipeleft-page .legal-panel section + section { margin-top:30px; padding-top:28px; border-top:1px solid var(--line); }
.swipeleft-page .legal-panel h2 { margin:0 0 12px; font-size:clamp(22px,3vw,29px); }
.swipeleft-page .legal-panel p,.swipeleft-page .legal-panel li { line-height:1.9; }
.swipeleft-page .policy-date { color:var(--muted); }
.platform-nav { display:flex; flex-wrap:wrap; gap:10px; margin-top:30px; }
.platform-nav a { padding:9px 15px; border:1px solid var(--line-strong); text-decoration:none; font-size:13px; }
.platform-nav a[aria-current="page"] { color:#031017; background:var(--cyan); border-color:var(--cyan); }
.faq-list { margin:20px 0 38px; border-top:1px solid var(--line); }
.faq-list details { padding:17px 0; border-bottom:1px solid var(--line); }
.faq-list summary { cursor:pointer; font-weight:650; }
.faq-list p { margin-top:12px; }
.swipeleft-page .footer-row,.swipeleft-page .filing-row { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.swipeleft-page .footer-row a,.swipeleft-page .filing-row a { margin-right:16px; }
@media (max-width:780px) {
  .swipeleft-page .nav .nav-links { gap:12px; }
  .swipeleft-page .nav .nav-links a { width:auto; border:0; font-size:11px; }
  .swipeleft-page .app-hero { padding-top:60px; }
  .swipeleft-page .section { padding:36px 0 70px; }
}
