|
668 | 668 | .hero-title { font-size: clamp(4.2rem, 17vw, 7rem); letter-spacing: 3px; } |
669 | 669 | } |
670 | 670 | /* ── 3D GRAPH ── */ |
| 671 | +.hero-overlay { |
| 672 | + position: absolute; |
| 673 | + top: 0; |
| 674 | + left: 0; |
| 675 | + width: 100%; |
| 676 | + height: 100%; |
| 677 | + background: rgba(0, 0, 0, 0.10); |
| 678 | + z-index: 0; |
| 679 | + pointer-events: none; |
| 680 | +} |
671 | 681 | #vendor-graph { |
672 | 682 | position: absolute; |
673 | 683 | top: 0; |
|
709 | 719 |
|
710 | 720 | <header class="hero"> |
711 | 721 | <canvas id="vendor-graph"></canvas> |
| 722 | + <div class="hero-overlay"></div> |
712 | 723 | <div class="container"> |
713 | 724 | <h1 class="hero-title"> |
714 | 725 | <span class="lava-text"><span class="lava-letter" style="--i:0" data-letter="N">N</span><span class="lava-letter" style="--i:1" data-letter="t">t</span><span class="lava-letter" style="--i:2" data-letter="h">h</span><span class="lava-letter" style="--i:3" data-letter=" "> </span><span class="lava-letter" style="--i:4" data-letter="P">P</span><span class="lava-letter" style="--i:5" data-letter="a">a</span><span class="lava-letter" style="--i:6" data-letter="r">r</span><span class="lava-letter" style="--i:7" data-letter="t">t</span><span class="lava-letter" style="--i:8" data-letter="y">y</span></span><br> |
@@ -1081,17 +1092,6 @@ <h2 class="section-title">Ready to Find Your Nth Party?</h2> |
1081 | 1092 | instancedMeshes.push(mesh); |
1082 | 1093 | } |
1083 | 1094 |
|
1084 | | -// Outer glow spheres for primary node |
1085 | | -const glowGeo = new THREE.SphereGeometry(1, 16, 16); |
1086 | | -const glowMat = new THREE.MeshBasicMaterial({ |
1087 | | - color: COLORS[0], |
1088 | | - transparent: true, |
1089 | | - opacity: 0.08, |
1090 | | -}); |
1091 | | -const glowSphere = new THREE.Mesh(glowGeo, glowMat); |
1092 | | -glowSphere.scale.setScalar(0.35); |
1093 | | -scene.add(glowSphere); |
1094 | | - |
1095 | 1095 | // ── EDGES ── |
1096 | 1096 | const edgePositions = []; |
1097 | 1097 | const edgeColors = []; |
@@ -1215,11 +1215,6 @@ <h2 class="section-title">Ready to Find Your Nth Party?</h2> |
1215 | 1215 | const lookZ = Math.cos(t3 * 0.6) * 1.2; |
1216 | 1216 | camera.lookAt(lookX, lookY, lookZ); |
1217 | 1217 |
|
1218 | | - // Pulse primary glow |
1219 | | - const glowScale = 0.35 + 0.08 * Math.sin(elapsed * 1.5); |
1220 | | - glowSphere.scale.setScalar(glowScale); |
1221 | | - glowSphere.material.opacity = 0.06 + 0.03 * Math.sin(elapsed * 2); |
1222 | | - |
1223 | 1218 | // Animate pulse particles |
1224 | 1219 | for (const pe of pulseEdges) { |
1225 | 1220 | const t = ((elapsed * pe.speed + pe.phase) % 1); |
|
0 commit comments