@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-moz-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-o-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

* {
    margin: 0;
    padding: 0;
    text-decoration: none;
    font-family: "montserrat";
}

body {
    background: #2c3e50;
}

.fadeIn {
    -webkit-animation: fadeIn 1s ease-in-out;
    -moz-animation: fadeIn 1s ease-in-out;
    -o-animation: fadeIn 1s ease-in-out;
    animation: fadeIn 1s ease-in-out;
}

a {
    color: #2c3e50;
}

a:hover {
    color: #65809C;
}

.middle {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.card {
    cursor: default;
    width: 340px;
    height: 480px;
}

.name {
    font-size: 35px;
}

.front,
.back {
    width: 100%;
    height: 100%;
    overflow: hidden;
    backface-visibility: hidden;
    position: absolute;
    transition: transform .6s linear;
}

.front {
    border: 4px solid white;
    height: 100%;
}

.front {
    transform: perspective(600px) rotateY(0deg);
}

.front img {
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-13%, 0%);
}

.back {
    border: 4px solid #2c3e50;
    background: #f1f1f1;
    transform: perspective(600px) rotateY(180deg);
}

.back-content {
    color: #2c3e50;
    text-align: center;
    width: 100%;
}

.sm {
    margin: 20px 0;
}

.sm a {
    display: inline-flex;
    width: 40px;
    height: 40px;
    justify-content: center;
    align-items: center;
    color: #2c3e50;
    font-size: 18px;
    transition: 0.4s;
    border-radius: 50%;
}

.sm a:hover {
    background: #2c3e50;
    color: white;
}

.card:hover>.front {
    transform: perspective(600px) rotateY(-180deg)
}

.card:hover>.back {
    transform: perspective(600px) rotateY(0deg)
}

.btn {
    text-align: center;
    border: 1px solid #2c3e50;
    background: none;
    padding: 10px 20px;
    font-size: 20px;
    cursor: pointer;
    margin: 10px;
    transition: 0.8s;
    position: relative;
    overflow: hidden;
}

.btn1 {
    color: #2c3e50;
}

.btn1:hover {
    color: #fff;
}

.btn::before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 0%;
    background: #2c3e50;
    z-index: -1;
    transition: 0.8s;
}

.btn1::before {
    bottom: 0;
    border-radius: 50% 50% 0 0;
}

.btn1:hover::before {
    height: 180%;
}

.music {
    position: absolute;
    font-size: 8px;
    top: 120%;
    left: 50%;
    transform: translate(-50%, 100%);
}