body {
    min-height: 100vh;
    position: relative;
    margin: 0;
    padding-bottom: 50px; //height of the footer
    box-sizing: border-box;
    background-image: url('../img/bg1.jpg');
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 1640px 1269px;
    background-color: #4e4e4e;
}
:root {
    --primary: #4761FF;
    --secondary: #555555;
    --light: #F1F3FA;
    --dark: #1C2035;
}
.back-to-top {
    position: fixed;
    display: none;
    right: 30px;
    bottom: 30px;
    z-index: 99;
}
.fw-medium {
    font-weight: 500;
} 

/*** Button ***/
.btn {
    transition: .5s;
    font-weight: 500;
}
.btn-primary, 
.btn-outline-primary: hover {
    color: var(--light);
}
.btn-secondary, 
.btn-outline-secondary: hover {
    color: var(--dark);
}
.btn-square {
    width: 38px;
    height: 38px;
}
.btn-sm-square {
    width: 32px;
    height: 32px;
}
.btn-lg-square {
    width: 48px;
    height: 48px;
}
.btn-square, 
.btn-sm-square, 
.btn-lg-square {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
} 

/*** Navbar ***/
.sticky-top {
    top: 0px;
    transition: .5s;
}
.navbar-header {
    margin-left: 15px;
    margin-right: 45px;
    color: var(--light);
    display: flex;
    justify-content: left;
    text-align: left; 
	/* You need to define an explicit height! */ 
	height: 55px;
    align-items: center;
    justify-content: center;
}
.navbar .navbar-nav .nav-link {
    margin-right: 35px;
    padding: 25px 0;
    color: var(--light);
    font-size: 18px;
    font-weight: 500;
    outline: none;
}
.navbar .navbar-nav .nav-link: hover,
.navbar .navbar-nav .nav-link.active {
    color: var(--primary);
}
.navbar .dropdown-toggle::after {
    border: none;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    vertical-align: middle;
    margin-left: 8px;
}
@media(max-width: 991.98px) {
    .navbar .navbar-nav.nav-link {
        margin-right: 0;
        padding: 10px 0;
    }
    .navbar .navbar-nav {
        margin-top: 15px;
        border-top: 1px solid #EEEEEE;
    }
}
@media(min-width: 992px) {
    .navbar .nav-item .dropdown-menu {
        display: block;
        border: none;
        margin-top: 0;
        top: 150%;
        opacity: 0;
        visibility: hidden;
        transition: .5s;
    }
    .navbar .nav-item: hover.dropdown-menu {
        top: 100%;
        visibility: visible;
        transition: .5s;
        opacity: 1;
    }
} 

/*** Header ***/
.page-header .breadcrumb-item+.breadcrumb-item::before {
    color: var(--light);
}
.page-header .breadcrumb-item, 
.page-header .breadcrumb-item a {
    font-size: 18px;
    color: var(--light);
}
.btn-play {
    position: relative;
    display: block;
    box-sizing: content-box;
    width: 36px;
    height: 46px;
    border-radius: 100%;
    border: none;
    outline: none!important;
    padding: 18px 20px 20px 28px;
    background: var(--primary);
}
.btn-play: before {
    content: "";
    position: absolute;
    z-index: 0;
    left: 50% ;
    top: 50% ;
    transform: translateX(-50%)translateY(-50%);
    display: block;
    width: 90px;
    height: 90px;
    background: var(--primary);
    border-radius: 100%;
    animation: pulse-border 1500ms ease-out infinite;
}
.btn-play: after {
    content: "";
    position: absolute;
    z-index: 1;
    left: 50%;
    top: 50%;
    transform: translateX(-50%)translateY(-50%);
    display: block;
    width: 90px;
    height: 90px;
    background: var(--primary);
    border-radius: 100%;
    transition: all 200ms;
}
.btn-play span {
    display: block;
    position: relative;
    z-index: 3;
    width: 0;
    height: 0;
    left: 3px;
    border-left: 30px solid#FFFFFF;
    border-top: 18px solid transparent;
    border-bottom: 18px solid transparent;
}
@keyframes pulse-border {
    0%{
        transform: translateX(-50%)translateY(-50%)translateZ(0)scale(1);
        opacity: 1;
    }
    100%{
        transform: translateX(-50%)translateY(-50%)translateZ(0)scale(2);
        opacity: 0;
    }
} 

/*** Footer ***/
.footer {
    color: #B0B9AE;
    position: absolute;
    bottom: 0;
    background: #111111;
    height: 50px;
}
