* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Oxygen', sans-serif;
}
body {
    background: #1c0231;
}
.text-white {
    color: #fff;
    text-align: center;
}
.text-lg {
    font-size: 55px;
}
.sm-text {
    font-size: 18px;
}
.md-text {
    font-size: 20px;
}
.primary {
    color: red;
}
.secondary {
    color: rgb(64, 240, 172);
    font-size: 38px;
    text-transform: capitalize;
}
.supplement {
    color: #1c0231;
    padding-top: 20px;
    text-align: center;
}
/* margins starts here */
.mt {
    margin-top: 1%;
}
.mt-2 {
    margin-top: 3%;
}
.mt-3 {
    margin-top: 5%;
}
.mt-4 {
    margin-top: 13%;
}
.mt-5 {
    margin-top: 16%;
}
.mt-6 {
    margin-top: 24%;
}
.mb {
    margin-bottom: 1%;
}
.mb-2 {
    margin-bottom: 3%;
}
.mb-3 {
    margin-bottom: 5%;
}
.mb-4 {
    margin-bottom: 7%;
}
.ml {
    margin-left: 5%;
}
.ml-2 {
    margin-left: 13%;
}
.ml-3 {
    margin-left: 18%;
}
.ml-4 {
    margin-left: 23%;
}
/* margin ends here */

/* padding-top starts here */
.pt {
    padding-top: 1%;
}
.pt-2 {
    padding-top: 2%;
}
.pt-3 {
    padding-top: 3%;
}
.pt-4 {
    padding-top: 4%;
}
/* padding-top ends here */

/* Header starts here */
.flex {
    display: flex;
    justify-content: center;
}
flex-container {
    display: flex;
    justify-content: center;
    height: 50vh;
}
/* header ends here */

/* main content starts here */
.title {
    background-color: rgb(201, 16, 87);
    height: 45px;
    width: 150px;
    padding-top: 7%;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
}
.countdown-block {
    background-color: teal;
    height: 92px;
    width: 150px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}
/* main content ends here */

.time-grid-1 {
    animation: popslideIn 3s forwards;
    animation-delay: 2s;
    opacity: 0;
}

.time-grid-2 {
    animation: popslideIn 3s forwards;
    animation-delay: 3s;
    opacity: 0;
}

.time-grid-3 {
    animation: popslideIn 3s forwards;
    animation-delay: 4s;
    opacity: 0;
}
.time-grid-4 {
    animation: popslideIn 3s forwards;
    animation-delay: 5s;
    opacity: 0;
}
#xmas {
    text-align: center;
    font-size: 45px;  
    color: #e91264;
}

/* loader starts here */
#loader {
    height: 60px;
    width: 60px;
    border-radius: 50%;
    background: rgb(64, 240, 172);
    margin: 0 auto;
    margin-top: 15%;
    animation: pump 1s linear infinite;
}

@keyframes pump {
    0% {
        transform: scale(1.08)
    } 25% {
        transform: scale(.9);
    } 38% {
        transform: scale(.08);
        border: 10px solid rgb(201, 16, 87);
    } 50% {
        border: 10px solid rgb(201, 16, 87);
        transform: scale(.99);
    } 75% {
        transform: scale(.09);
    } 100% {
        transform: scale(1.03);
    }
}
/* loader ends here */

@keyframes popslideIn {
    0% {
        opacity: 0;
        transform: translateX(18px);
    } 25% {
        opacity: .4;
        transform: translateY(20px);
    } 50% {
        opacity: .6;
        transform: translateX(-18px);
    } 75% {
        opacity: .8;
        transform: translateY(-20px);
        transform: scale(1.2);
    } 100% {
        opacity: 1;
        transform: scale(1)
    }
}

/* footer starts here */
footer p {
    text-transform: capitalize;
    color: rgb(64, 240, 172);;
}
footer a {
    color: rgb(64, 240, 172);
    text-decoration: none;
}
/* footer ends here */

/* scroll bar */
::-webkit-scrollbar {
    width: 5px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: #000;
}
::-webkit-scrollbar-thumb {
    background: teal;
    border-radius: 8px;
}
::-webkit-scrollbar-thumb:hover {
    background: #e91264;
    transition: 2s ease-in-out;
}
/* scroll bar */
@media screen and (max-width: 768px) {
    #xmas {
     font-size: 30px;
     padding: 12px 5px;
     margin-top: 30%;   
    }
    .lg-text {
        font-size: 30px;
        text-transform: capitalize;
    }
    .text-lg {
        font-size: 70px;
    }
    .md-text {
        font-size: 23px;
    }
    .app {
        display: flex;
        width: 100%;
        margin-left: -2.5%;
        flex-wrap: wrap;
    }
    .time-grid-2,
    .time-grid-3, 
    .time-grid-4 {
        margin-top: 8%;
    }
    .time-grid {
        margin-top: 8%;
        margin-left: 5%;
    }
    .title {
        padding-top: 8px;
        width: 190px;
    }
    .countdown-block {
        margin-top: 2%;
        width: 190px;
        height: 125px;
    }
    footer p {
        font-size: 20px;
        margin-top: 40%;
    }
}
