/* ============================
   COLORFUL GRAPHIC FOOTER
============================ */
.colorful-footer {
    position: relative;
    overflow: hidden;
    padding: 80px 20px 40px;
    background: linear-gradient(135deg, #6a11cb, #2575fc);
    color: #fff;
}

/* Floating Gradient Blobs */
.blob {
    position: absolute;
    width: 320px;
    height: 320px;
    background: radial-gradient(circle, rgba(255,255,255,0.35), transparent);
    border-radius: 50%;
    filter: blur(60px);
    animation: float 12s infinite ease-in-out;
    opacity: 0.6;
}

.blob1 { top: -80px; left: -60px; background:#ff4ded; animation-duration: 14s; }
.blob2 { top: 20%; right: -100px; background:#00f5ff; animation-duration: 17s; }
.blob3 { bottom: -120px; left: 30%; background:#ffbe0b; animation-duration: 20s; }

@keyframes float {
    0%,100% { transform: translateY(0px) scale(1); }
    50% { transform: translateY(-60px) scale(1.15); }
}

/* Particle overlay */
.particles {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url("https://i.postimg.cc/Gph7VPgX/particles.png");
    opacity: .12;
    mix-blend-mode: screen;
    pointer-events: none;
}

/* Layout */
.footer-container {
    position: relative;
    z-index: 10;
    max-width: 1200px;
    margin: auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 40px;
}

.footer-col h3,
.footer-col h4 {
    margin-bottom: 20px;
    font-weight: 600;
}

.footer-about {
    color: #f5f5f5;
    line-height: 1.6;
}

/* Links */
.footer-col ul {
    list-style: none;
    padding: 0;
}

.footer-col ul li {
    margin: 10px 0;
}

.footer-col ul li a {
    color: #e3e6ff;
    text-decoration: none;
    transition: .3s ease;
    font-weight: 300;
}

.footer-col ul li a:hover {
    color: #ffffff;
    padding-left: 6px;
}

/* Contact */
.footer-col p {
    margin: 8px 0;
    color: #f3f3f3;
}

/* Social */
.footer-social a {
    display: inline-block;
    font-size: 22px;
    margin-right: 14px;
    color: #f3f3f3;
    transition: .3s ease;
}

.footer-social a:hover {
    color: #fff700;
    transform: translateY(-5px) scale(1.2);
}

/* Bottom */
.footer-bottom {
    position: relative;
    z-index: 10;
    text-align: center;
    padding-top: 20px;
    margin-top: 40px;
    font-size: 14px;
    color: #f8f9ff;
    border-top: 1px solid rgba(255,255,255,0.25);
}

/* Responsive */
@media(max-width: 768px){
    .footer-container {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width: 480px){
    .footer-container {
        grid-template-columns: 1fr;
    }
}
