/*==========================================================
  ABOUT SECTION
==========================================================*/

.about-section{
    position:relative;
    overflow:hidden;
}

.about-section::before{

    content:"";

    position:absolute;

    width:700px;
    height:700px;

    left:-180px;
    top:150px;

    background:
        radial-gradient(circle,
            rgba(170,60,255,.22),
            transparent 70%);

    filter:blur(80px);

    pointer-events:none;
}

.about-section::after{

    content:"";

    position:absolute;

    width:600px;
    height:600px;

    left:180px;
    bottom:-180px;

    background:
        radial-gradient(circle,
            rgba(45,215,255,.16),
            transparent 70%);

    filter:blur(90px);

    pointer-events:none;
}

.about-grid{
    display:grid;
    grid-template-columns:520px 1fr;
    align-items:center;
    gap:90px;
    overflow: visible;
}

/* Left Side */

.about-left{
    display:flex;
    justify-content:center;
    align-items:center;
    overflow:visible;
}

/* Album Card */

.album-card{

    position:relative;
    overflow:visible;

    border-radius:28px;

    border:1px solid rgba(177,60,255,.45);

    box-shadow:
        0 0 18px rgba(177,60,255,.25),
        0 0 35px rgba(49,215,255,.15);

    transition:.45s ease;
}


.album-card:hover{

    transform:translateY(-10px);

    box-shadow:
        0 0 35px rgba(177,60,255,.55),
        0 0 70px rgba(49,215,255,.40),
        0 0 120px rgba(177,60,255,.20);
}

.album-card img{

    border-radius:28px;

    filter:
        brightness(1.2)
        contrast(1.15)
        saturate(1.35);

    transition:.6s;
}

.album-card:hover img{

    filter:
        brightness(1.35)
        contrast(1.25)
        saturate(1.6);

    transform:scale(1.03);
}


.album-card::before{
    content:"";
    position:absolute;
    inset:-120px;
    z-index:-2;

    background:
        radial-gradient(circle at center,
            rgba(177,60,255,.95) 0%,
            rgba(140,70,255,.75) 35%,
            rgba(49,215,255,.45) 65%,
            transparent 100%);

    filter:blur(90px);

    opacity:.95;

    transition:.5s;
    animation:albumGlow 5s ease-in-out infinite;
}

.album-card::after{
    content:"";
    position:absolute;
    inset:-60px;

    border-radius:40px;

    box-shadow:
        0 0 120px rgba(180,60,255,.7),
        0 0 180px rgba(45,215,255,.45);

    z-index:-1;

    opacity:.8;

    transition:.5s;
}

.album-card:hover::before{
    transform:scale(1.12);
    filter:blur(120px);
}

.album-card:hover::after{
    transform:scale(1.08);
    opacity:1;
}

/* Right Side */

.about-right h3{
    font-size:3rem;
    color:#fff;
    margin-bottom:25px;
    margin-bottom:35px;
    line-height:1.15;
}

.about-intro{
    color:#bdbdbd;
    font-size:1.15rem;
    line-height:1.9;
    margin-bottom:40px;
}

/* Features */

.feature-list{
    display:flex;
    flex-direction:column;
    gap:25px;
}

.feature-item{
    display:flex;
    align-items:flex-start;
    gap:20px;
}

.feature-item i{
    font-size:2rem;
    color:var(--secondary);
    min-width:40px;
}

.feature-item h4{
    color:#fff;
    margin-bottom:8px;
    font-size:1.2rem;
}

.feature-item p{
    color:#a9a9a9;
    margin:0;
    line-height:1.7;
}

/* Button */

.about-btn{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-top:45px;
    padding:18px 36px;
    border-radius:50px;
    text-decoration:none;
    color:#fff;
    font-weight:700;
    background:linear-gradient(90deg,#8d3fff,#32c8ff);
    transition:.35s;
    box-shadow:

        0 0 25px rgba(177,60,255,.35),

        0 0 50px rgba(49,215,255,.18);
}

.about-btn:hover{
    transform:translateY(-4px);
    box-shadow:

        0 0 40px rgba(177,60,255,.5),

        0 0 80px rgba(49,215,255,.3)
}

/* Responsive */

@media(max-width:991px){

.about-grid{
    grid-template-columns:1fr;
    text-align:center;
}

.feature-item{
    justify-content:center;
    text-align:left;
}

.about-btn{
    margin:auto;
    margin-top:40px;
}


}

.feature-item i{

    transition:.35s;

}

.feature-item:hover i{

    transform:scale(1.2);

    color:#31d7ff;

}

.about-btn{

    position:relative;

    overflow:hidden;

}

.about-btn::before{

    content:"";

    position:absolute;

    top:0;

    left:-100%;

    width:100%;

    height:100%;

    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.3),
        transparent
    );

}

.about-btn:hover::before{

    left:120%;

    transition:.7s;

}

.about-intro{

    max-width:700px;

}

.about-right{

    background:rgba(18,18,18,.55);

    border:1px solid rgba(177,60,255,.18);

    border-radius:30px;

    padding:45px;

    backdrop-filter:blur(18px);

    box-shadow:0 20px 50px rgba(0,0,0,.35);

    height:fit-content;

    align-self:center;
}

.about-right:hover{

    border-color:#31d7ff;

    box-shadow:

        0 0 30px rgba(177,60,255,.18),

        0 0 70px rgba(49,215,255,.12);
}

.about-right::before{

    content:"";

    position:absolute;

    width:350px;
    height:350px;

    top:-120px;
    right:-120px;

    border-radius:50%;

    background:#8d3dff;

    filter:blur(120px);

    opacity:.12;

    pointer-events:none;
}

@keyframes albumGlow{

    0%,100%{
        transform:scale(.95);
        filter:blur(90px);
        opacity:.6;
    }

    50%{
        transform:scale(1.08);
        filter:blur(120px);
        opacity:1;
    }

}

@keyframes albumFloat{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-6px);
    }

}

.album-card{

    animation:albumFloat 6s ease-in-out infinite;
}

@keyframes iconFloat{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-4px);
    }

}

.feature-item i{

    animation:iconFloat 3s ease-in-out infinite;
}

.footer-links{

    display:flex;

    flex-direction:column;

    gap:16px;

}

.footer-links a{

    position:relative;

    display:inline-flex;

    align-items:center;

    width:fit-content;

    color:#d1d5db;

    padding:8px 0;

    text-decoration:none;

    transition:.35s ease;

}

.footer-links a::after{

    content:"➜";

    opacity:0;

    color:#31d7ff;

    transform:translateX(-10px);

    transition:.35s ease;

}

.footer-links a:hover{

    color:#31d7ff;

    transform:translateX(8px);

    text-shadow:0 0 12px rgba(49,215,255,.5);

}

.footer-links a:hover::after{

    opacity:1;

    transform:translateX(0);

}

.footer-card{

    height:100%;

    min-height:410px;

    padding:35px;

    border-radius:24px;

    position:relative;

    display:flex;

    flex-direction:column;

    backdrop-filter:blur(18px);

    background:linear-gradient(
        135deg,
        rgba(255,255,255,.05),
        rgba(255,255,255,.02)
    );

    border:1px solid rgba(255,255,255,.08);

    transition:.35s ease;

}

.footer-logo{
    position:relative;
    display:inline-block;
    margin-bottom:30px;
    transition:.5s ease;
}

.footer-logo img{
    width:100%;
    max-width:240px;
    display:block;
    transition:.5s;
}

.footer-logo::before{
    content:"";
    position:absolute;
    inset:-35px;
    background:radial-gradient(circle,
        rgba(177,60,255,.4),
        rgba(49,215,255,.25),
        transparent 80%);
    filter:blur(45px);
    z-index:-1;
}

.footer-logo:hover img{

    transform:scale(1.06);

}


.footer .row{

    align-items:stretch;

}

.footer .row > div{

    display:flex;

}

.footer-logo:hover{

    transform:scale(1.03);

    filter:drop-shadow(0 0 20px rgba(177,60,255,.4));

}

.footer-small{

    color:#a7a7b8;

    line-height:1.8;

    margin:18px 0 25px;

    font-size:.95rem;

}

.footer-social{

    display:flex;

    align-items:center;

    gap:22px;

}

.footer-social a{

    color:#38bdf8;

    font-size:1.45rem;

    transition:.35s ease;

}

.footer-social a:hover{

    color:#9b5cff;

    transform:translateY(-4px) scale(1.15);

    filter:drop-shadow(0 0 12px rgba(155,92,255,.7));

}

.footer-card h5{

    position:relative;

    margin-bottom:35px;

}

.footer-card h5::after{

    content:"";

    position:absolute;

    left:0;
    bottom:-12px;

    width:45px;
    height:2px;

    background:linear-gradient(
        90deg,
        #b13cff,
        #38bdf8
    );

    border-radius:10px;

}

