body{
    margin:0;
    font-family:Arial,sans-serif;
    color:#333;
}

.bg{
    position:fixed;
    inset:0;
    background:url(images/background.png) center/cover;
    filter:blur(0px) brightness(.7);
}

.card{
    position:relative;
    z-index:1;
    max-width:430px;
    margin:3vh auto;
    padding:24px;
    background:rgba(255,255,255,.9);
    backdrop-filter:blur(14px);
    border-radius:22px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.hero{
    width:100%;
    border-radius:16px;
}

.logo{
    max-width:140px;
}

.btn{
    display:inline-block;
    margin-top:18px;
    padding:16px 30px;
    background:#F5275b;
    color:#fff;
    text-decoration:none;
    border-radius:999px;
    box-shadow:0 6px 18px rgba(246,168,184,.35);
}

#overlay{
    position:fixed;
    inset:0;
    background:rgba(255,255,255,.75);
    z-index:9999;
}

#coach{
    position:absolute;
    top:18px;
    right:18px;
    max-width:300px;
    background:#fff7f9;
    color:#333;
    padding:18px;
    border-radius:18px;
    box-shadow:0 10px 30px rgba(0,0,0,.12);
    border:1px solid #f6d8df;
}

.badge{
    width:46px;
    height:46px;
    border-radius:50%;
    background:#f6a8b8;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:28px;
    animation:bounce 1.2s infinite;
    color:white;
}

button{
    padding:10px 18px;
    border-radius:999px;
    border:none;
}

@keyframes pulse{
    50%{
        transform:scale(1.15);
        opacity:.5;
    }
}

@keyframes bounce{
    50%{
        transform:translateY(-6px);
    }
}

#continueButton{

    position:relative;

    overflow:hidden;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:180px;

    height:42px;

    border-radius:40px;

    background:#f6a8b8;

    color:white;

    text-decoration:none;

    font-size:22px;

    font-weight:600;

    user-select:none;

    -webkit-user-select:none;

    touch-action:none;

    cursor:pointer;

    box-shadow:0 0 30px rgba(246,168,184,.35);

    transition:.25s;
}

#continueButton:hover{

    transform:translateY(-2px);

}

.progress{

    position:absolute;

    left:0;

    top:0;

    width:0%;

    height:100%;

    background:linear-gradient(90deg,#ffdbe3,#f6a8b8);

    transition:none;

    z-index:1;

}

.buttonText{

    position:relative;

    z-index:2;

}