* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}
@font-face {
    font-family: mothnna;
    src: url(./font/Mothanna.ttf);
}
body[data-dir="rtl"] {
    font-family: 'mothnna', sans-serif !important;
}
body[data-dir="ltr"] {
    font-family: 'Open Sans', sans-serif !important;
}
#preloader {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 9999;
    overflow: hidden;
    background: #FFF;
}
#preloader:before {
    content: "";
    position: fixed;
    width: 60px;
    height: 60px;
    top: calc(50% - 30px);
    right: calc(50% - 30px);
    border: 6px solid #54b3e5;
    border-top-color: #e2eefd;
    border-radius: 50%;
    -webkit-animation: animate-preloader 1s linear infinite;
    animation: animate-preloader 1s linear infinite;
}
@-webkit-keyframes animate-preloader {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(-360deg);
    }
}
@keyframes animate-preloader {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(-360deg);
    }
}
@-webkit-keyframes animate-img {
    0% {
        transform: translateY(0px);
    }

    100% {
        transform: translateY(30px);
    }
}
@keyframes animate-img {
    0% {
        transform: translateY(0px);
    }

    100% {
        transform: translateY(30px);
    }
}
.animated-img {
    animation: animate-img 1.5s ease-in-out infinite alternate;
}
/* ===***=== */
.navbar {
    position: fixed;
    top: 0;
    box-shadow: 0px 2px 15px rgb(0 0 0 / 10%);
    z-index: 999;
}
.navbar .nav-item {
    font-weight: 600;
    padding: 0px 8px;
} 
.list-group-item {
    border: 0;
    padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
}
.list-group-item::before {
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
    width: 0;
    height: 2px;
    background-color: #54b3e5;
    transition: 0.3s;
}
.list-group-item:hover,
.list-group-item.active,
.navbar-nav .nav-link.active {
    background: transparent;
    color: #54b3e5;
}
.list-group-item:focus,
.nav-link {
    background: transparent;
    color: #212529;
}
.list-group-item:hover:before,
.list-group-item.active::before {
    width: 100%;
}
.navbar-brand img {
    max-height: 40px;
}
/* ===***=== */
header {
    background: linear-gradient(to right, #011c30e3, #011c30e3), url(/assets/img/home/section1-bg-5.jpg);
    background-size: cover;
}
header h1 {
    font-size: 3em;
}
header .banner-title span {
    border-bottom: 3px solid #31a9e1;
}
/* ===***=== */
.about {
    background: linear-gradient(to top, #ffffffb6, #ffffffce), url(/assets/img/home/section2-bg.png);
    background-size: contain;
}
.about p.lead {
    font-size: 22px;
    color: #213045;
}
h2.title::after,
h3.title::after {
    content: '';
    left: 0;
    width: 120px;
    height: 3px;
    display: inline-block;
    background: #54b3e5;
    margin: 0px 8px;
}
.cta {
    background-color: #54b3e5;
}
.btn-light {
    --bs-btn-hover-color: #FFF;
    --bs-btn-hover-bg: #213045;
    --bs-btn-hover-border-color: #213045;
}
.cta h4 span {
    border-bottom: 2px solid #213045;
}
/* ===***=== */
.programs {
    background: linear-gradient(45deg, #001b42a8, #000000a8), url(/assets/img/home/section3-bg.jpg);
    background-position: center;
    background-attachment: fixed;
    background-size: cover;
}
.programs .card {
    height: 400px;
    z-index: 1;
}
.services .card {
    height: 275px;
    box-shadow: 0px 5px 25px #2221;
    z-index: 1;
}
.programs .card::before,
.services .card::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 0%;
    left: 0;
    bottom: 0;
    background-color: #54b3e5;
    z-index: -1;
    transition: 0.2s;
}
.programs .icon-box {
    width: 60%;
    max-width: 130px;
}
.programs .prog-name {
    color: #124265;
}
.programs .description,
.services .description {
    display: -webkit-box !important;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
body[data-dir="ltr"] .programs .description,
body[data-dir="ltr"] .services .description {
    font-size: 14px;
}
.services .description {
    -webkit-line-clamp: 2;
}
.programs .card:hover .icon-box,
.services .card:hover .icon-box {
    display: none;
}
.programs .card:hover .description,
.services .card:hover .description {
    display: block !important;
    color: #FFF;
}
.services .card:hover h5 {
    color: #FFF;
}
.programs .card:hover:before,
.services .card:hover:before {
    height: 100%;
}
/* ===***=== */
.icon-box i {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    font-size: 36px;
    color: var(--color);
}
/* ===***=== */
.contact .icon {
    width: 50px;
    height: 50px;
    font-size: 20px;
    background-color: #EEE;
}
.contact h4 {
    color: #213045;
}
/* ===***=== */
footer {
    background-color: #213045;
}
.social-links a {
    font-size: 24px;
    width: 40px;
    height: 40px;
    line-height: 45px;
    transition: 0.2s;
}
.social-links a:hover {
    background-color: #54b3e5;
}
.copyright {
    border-top: 2px solid #FFF;
    background-color: #142946;
}
.back-to-top {
    position: fixed;
    right: 15px;
    bottom: 15px;
    height: 40px;
    width: 40px;
    font-size: 28px;
    background: #54b3e5;
    visibility: hidden;
    opacity: 0;
    z-index: 999;
    transition: all 0.4s;
}
body[data-dir="ltr"] .back-to-top {
    left: auto;
    right: 15px;
}
.back-to-top.active {
    visibility: visible;
    opacity: 1;
}
.back-to-top:hover {
    background: #3284f1;
}
/* ========fixed classes======= */
.btn-outline-my-primary {
    border-radius: 50px;
    color: #47b2e4;
    font-size: 14px;
    border: 2px solid #47b2e4;
}
.btn-outline-my-primary:hover {
    color: #fff;
    background: #31a9e1;
}
.btn-my-primary {
    font-size: 18px;
    color: #fff;
    background: #31a9e1;
}
.btn-my-primary:hover {
    color: #fff;
    background: #213045;
}
.text-my-primary {
    color: #54b3e5 !important;
}
.text-my-dark {
    color: #444 !important;
}