CSS Live Preview Available

Photorealistic Bloom Effect

Advanced bloom/glow effect with multiple blur layers and color grading

CSS3BloomGlowBlurAdvanced Filter

Code

.bloom-container {
  width: 300px;
  height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
}
.bloom-element {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: radial-gradient(circle, #ffd700 0%, #ff8c00 70%, #ff4500 100%);
  position: relative;
  z-index: 2;
}
.bloom-layer-1 {
  position: absolute;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: radial-gradient(circle, #ffd700 0%, #ff8c00 70%, #ff4500 100%);
  filter: blur(15px);
  opacity: 0.8;
  z-index: 1;
}
.bloom-layer-2 {
  position: absolute;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: radial-gradient(circle, #ff8c00 0%, #ff4500 100%);
  filter: blur(30px);
  opacity: 0.5;
  z-index: 0;
}
.bloom-layer-3 {
  position: absolute;
  width: 250px;
  height: 250px;
  border-radius: 50%;
  background: radial-gradient(circle, #ff4500 0%, #dc143c 100%);
  filter: blur(45px);
  opacity: 0.3;
  z-index: 0;
}
.bloom-container::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(45deg, rgba(255,0,0,0.2), rgba(255,255,0,0.2));
  mix-blend-mode: screen;
  pointer-events: none;
}

HTML

<"attr-name"</span>>class</span>="tag"</span>>div</span> "attr-name"</span>>class</span>="bloom-container"</span>>
  <"attr-name"</span>>class</span>="tag"</span>>div</span> "attr-name"</span>>class</span>="bloom-element"</span>></"attr-name"</span>>class</span>="tag"</span>>div</span>>
  <"attr-name"</span>>class</span>="tag"</span>>div</span> "attr-name"</span>>class</span>="bloom-layer-1"</span>></"attr-name"</span>>class</span>="tag"</span>>div</span>>
  <"attr-name"</span>>class</span>="tag"</span>>div</span> "attr-name"</span>>class</span>="bloom-layer-2"</span>></"attr-name"</span>>class</span>="tag"</span>>div</span>>
  <"attr-name"</span>>class</span>="tag"</span>>div</span> "attr-name"</span>>class</span>="bloom-layer-3"</span>></"attr-name"</span>>class</span>="tag"</span>>div</span>>
</"attr-name"</span>>class</span>="tag"</span>>div</span>>

Live Preview