/* ═══════════════════════════════════
   FLOATING BUBBLES – GLOBAL BG
═══════════════════════════════════ */
.bubbles-wrap {
  position:fixed; inset:0;
  pointer-events:none; z-index:0;
  overflow:hidden;
}

.bubble {
  position:absolute; bottom:-120px;
  border-radius:50%;
  opacity:0;
  animation: bubbleRise linear infinite;
}

/* Individual bubble sizes, positions, delays */
.bubble:nth-child(1)  { width:18px; height:18px; left:5%;   background:rgba(245,166,35,0.18); animation-duration:12s; animation-delay:0s;   }
.bubble:nth-child(2)  { width:10px; height:10px; left:12%;  background:rgba(255,255,255,0.10); animation-duration:15s; animation-delay:2s;   }
.bubble:nth-child(3)  { width:24px; height:24px; left:20%;  background:rgba(245,166,35,0.12); animation-duration:10s; animation-delay:4s;   }
.bubble:nth-child(4)  { width:8px;  height:8px;  left:30%;  background:rgba(255,255,255,0.08); animation-duration:18s; animation-delay:1s;   }
.bubble:nth-child(5)  { width:14px; height:14px; left:38%;  background:rgba(245,166,35,0.15); animation-duration:13s; animation-delay:6s;   }
.bubble:nth-child(6)  { width:30px; height:30px; left:48%;  background:rgba(255,255,255,0.06); animation-duration:20s; animation-delay:3s;   }
.bubble:nth-child(7)  { width:10px; height:10px; left:55%;  background:rgba(245,166,35,0.20); animation-duration:11s; animation-delay:7s;   }
.bubble:nth-child(8)  { width:20px; height:20px; left:63%;  background:rgba(255,255,255,0.09); animation-duration:16s; animation-delay:0.5s; }
.bubble:nth-child(9)  { width:12px; height:12px; left:72%;  background:rgba(245,166,35,0.14); animation-duration:14s; animation-delay:5s;   }
.bubble:nth-child(10) { width:28px; height:28px; left:80%;  background:rgba(255,255,255,0.07); animation-duration:19s; animation-delay:2.5s; }
.bubble:nth-child(11) { width:8px;  height:8px;  left:88%;  background:rgba(245,166,35,0.18); animation-duration:9s;  animation-delay:8s;   }
.bubble:nth-child(12) { width:16px; height:16px; left:93%;  background:rgba(255,255,255,0.10); animation-duration:17s; animation-delay:1.5s; }

@keyframes bubbleRise {
  0%   { transform:translateY(0)   translateX(0)    scale(1);   opacity:0;    }
  10%  { opacity:1; }
  50%  { transform:translateY(-45vh) translateX(20px)  scale(1.05); }
  90%  { opacity:0.6; }
  100% { transform:translateY(-105vh) translateX(-10px) scale(0.9); opacity:0; }
}
