|
124 | 124 | position: relative; |
125 | 125 | overflow: hidden; |
126 | 126 | } |
127 | | -.hero::before { |
128 | | - content: ''; |
| 127 | +.haze { |
129 | 128 | position: absolute; |
130 | | - inset: 0; |
131 | | - background: |
132 | | - radial-gradient(ellipse 600px 400px at 20% 50%, rgba(255,168,79,.12) 0%, transparent 70%), |
133 | | - radial-gradient(ellipse 500px 350px at 80% 30%, rgba(27,149,193,.1) 0%, transparent 70%), |
134 | | - radial-gradient(ellipse 400px 400px at 50% 80%, rgba(179,136,255,.08) 0%, transparent 60%); |
| 129 | + border-radius: 50%; |
135 | 130 | pointer-events: none; |
| 131 | + filter: blur(80px); |
| 132 | + will-change: transform, opacity; |
| 133 | +} |
| 134 | +.haze-orange { |
| 135 | + width: 600px; |
| 136 | + height: 400px; |
| 137 | + background: rgba(255, 168, 79, 0.12); |
| 138 | + top: 20%; |
| 139 | + left: -5%; |
| 140 | + animation: haze-drift-1 20s ease-in-out infinite, haze-pulse 8s ease-in-out infinite; |
| 141 | +} |
| 142 | +.haze-blue { |
| 143 | + width: 500px; |
| 144 | + height: 350px; |
| 145 | + background: rgba(27, 149, 193, 0.10); |
| 146 | + top: 5%; |
| 147 | + right: -5%; |
| 148 | + animation: haze-drift-2 24s ease-in-out infinite, haze-pulse 10s ease-in-out 2s infinite; |
| 149 | +} |
| 150 | +.haze-purple { |
| 151 | + width: 400px; |
| 152 | + height: 400px; |
| 153 | + background: rgba(179, 136, 255, 0.08); |
| 154 | + bottom: -5%; |
| 155 | + left: 30%; |
| 156 | + animation: haze-drift-3 22s ease-in-out infinite, haze-pulse 12s ease-in-out 4s infinite; |
| 157 | +} |
| 158 | +@keyframes haze-drift-1 { |
| 159 | + 0% { transform: translate(0, 0); } |
| 160 | + 25% { transform: translate(40px, -30px); } |
| 161 | + 50% { transform: translate(20px, 40px); } |
| 162 | + 75% { transform: translate(-30px, 20px); } |
| 163 | + 100% { transform: translate(0, 0); } |
| 164 | +} |
| 165 | +@keyframes haze-drift-2 { |
| 166 | + 0% { transform: translate(0, 0); } |
| 167 | + 25% { transform: translate(-50px, 30px); } |
| 168 | + 50% { transform: translate(-20px, -40px); } |
| 169 | + 75% { transform: translate(30px, -20px); } |
| 170 | + 100% { transform: translate(0, 0); } |
| 171 | +} |
| 172 | +@keyframes haze-drift-3 { |
| 173 | + 0% { transform: translate(0, 0); } |
| 174 | + 25% { transform: translate(30px, 30px); } |
| 175 | + 50% { transform: translate(-40px, 10px); } |
| 176 | + 75% { transform: translate(10px, -30px); } |
| 177 | + 100% { transform: translate(0, 0); } |
| 178 | +} |
| 179 | +@keyframes haze-pulse { |
| 180 | + 0%, 100% { opacity: 1; } |
| 181 | + 50% { opacity: 1.5; } |
136 | 182 | } |
137 | 183 |
|
138 | 184 | .hero-eyebrow { |
|
643 | 689 |
|
644 | 690 | <!-- HERO --> |
645 | 691 | <header class="hero"> |
646 | | - <!-- Confetti pieces --> |
| 692 | + <div class="haze haze-orange"></div> |
| 693 | + <div class="haze haze-blue"></div> |
| 694 | + <div class="haze haze-purple"></div> |
647 | 695 |
|
648 | 696 | <div class="container"> |
649 | 697 | <div class="hero-eyebrow"><span class="dot"></span> GRC Engineering Open Source</div> |
|
0 commit comments