*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{
    min-height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;
    overflow:hidden;
    position:relative;

    background:
    linear-gradient(
    135deg,
    #0f172a,
    #1e1b4b,
    #312e81,
    #4c1d95
    );
}

/* Stars */

.star{
    position:absolute;
    background:white;
    border-radius:50%;
    animation:twinkle 4s infinite;
}

.s1{
    width:12px;
    height:12px;
    top:15%;
    left:15%;
}

.s2{
    width:18px;
    height:18px;
    top:25%;
    right:20%;
}

.s3{
    width:10px;
    height:10px;
    bottom:20%;
    left:25%;
}

.s4{
    width:15px;
    height:15px;
    bottom:15%;
    right:15%;
}

.s5{
    width:20px;
    height:20px;
    top:55%;
    left:8%;
}

@keyframes twinkle{

    0%,100%{
        opacity:.3;
        transform:scale(1);
    }

    50%{
        opacity:1;
        transform:scale(1.7);
    }
}

/* Rings */

.ring{
    position:absolute;
    border-radius:50%;
    border:3px solid rgba(255,255,255,.1);
}

.r1{
    width:280px;
    height:280px;
    top:-100px;
    right:-100px;

    animation:spin 18s linear infinite;
}

.r2{
    width:220px;
    height:220px;
    bottom:-80px;
    left:-80px;

    animation:spin 12s linear infinite reverse;
}

@keyframes spin{

    from{
        transform:rotate(0deg);
    }

    to{
        transform:rotate(360deg);
    }
}

/* Main Container */

.container{
    width:90%;
    max-width:750px;
    text-align:center;
    z-index:10;
}

h1{
    color:white;
    font-size:3rem;
    margin-bottom:10px;
}

.tagline{
    color:#cbd5e1;
    margin-bottom:35px;
}

/* Card */

.card{

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.15);

    backdrop-filter:blur(15px);

    -webkit-backdrop-filter:blur(15px);

    border-radius:30px;

    padding:45px;

    box-shadow:
    0 20px 50px rgba(0,0,0,.3);
}

#quote{

    color:white;

    font-size:1.6rem;

    line-height:1.8;

    min-height:120px;

    font-weight:300;
}

#author{

    margin-top:20px;

    color:#cbd5e1;

    font-style:italic;
}

/* Buttons */

.buttons{

    margin-top:30px;

    display:flex;

    justify-content:center;

    gap:15px;

    flex-wrap:wrap;
}

button{

    border:none;

    padding:14px 30px;

    border-radius:50px;

    background:linear-gradient(
    135deg,
    #8b5cf6,
    #6366f1
    );

    color:white;

    font-size:15px;

    cursor:pointer;

    transition:.3s;
}

button:hover{

    transform:translateY(-4px);

    box-shadow:
    0 12px 30px rgba(99,102,241,.5);
}

@media(max-width:768px){

    h1{
        font-size:2.2rem;
    }

    #quote{
        font-size:1.2rem;
    }

    .card{
        padding:30px;
    }

    button{
        width:100%;
    }
}