* {
    font-family: "Poppins", sans-serif;
}


@media (min-width: 768px) {
    html {
        font-size: 16px;
        font-family: pop
    }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

body, html {
    height: 100%;
    margin: 0;
    font-size: 14px;
}


.hero {
    position: relative;
    background: url(/images/hero.jpg) no-repeat center center;
    background-size: cover;
    height: 87vh;
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4); /* Adjust the opacity as needed */
}

.hero-content {
    position: relative;
    z-index: 1;
}


.button {
    border-radius: 4px;
    border: none;
    color: #FFFFFF;
    text-align: center;
    width: 100px;
    transition: all 0.5s;
    cursor: pointer;
    margin: 5px;
}

    .button span {
        cursor: pointer;
        display: inline-block;
        position: relative;
        transition: 0.5s;
    }

        .button span:after {
            content: '\00bb';
            position: absolute;
            opacity: 0;
            /*top: 0;*/
            right: -20px;
            transition: 0.5s;
        }

    .button:hover span {
        padding-right: 25px;
    }

        .button:hover span:after {
            opacity: 1;
            right: 0;
        }

.timeline {
    border-left: 3px solid #727cf5;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
    background: rgba(114, 124, 245, 0.09);
    margin: 0 auto;
    letter-spacing: 0.2px;
    position: relative;
    line-height: 1.4em;
    font-size: 1.03em;
    padding: 10px;
    list-style: none;
    text-align: left;
    max-width: 100%;
}


    .timeline h1 {
        font-weight: 300;
        font-size: 1.4em;
    }

    .timeline h2,
    .timeline h3 {
        font-weight: 600;
        font-size: 1rem;
        margin-bottom: 5px;
    }

    .timeline .event {
        border-bottom: 1px dashed #e8ebf1;
        /* padding-bottom: 25px; */
        margin-bottom: 10px;
        position: relative;
    }

        .timeline .event:last-of-type {
            padding-bottom: 0;
            margin-bottom: 0;
            border: none;
        }

        .timeline .event:before,
        .timeline .event:after {
            position: absolute;
            display: block;
            top: 0;
        }

        .timeline .event:before {
            left: -207px;
            content: attr(data-date);
            text-align: right;
            font-weight: 100;
            font-size: 0.9em;
            min-width: 120px;
        }


        .timeline .event:after {
            -webkit-box-shadow: 0 0 0 3px #727cf5;
            box-shadow: 0 0 0 3px #727cf5;
            left: -16px;
            background: #fff;
            border-radius: 50%;
            height: 9px;
            width: 9px;
            content: "";
            top: 5px;
        }


.rtl .timeline {
    border-left: 0;
    text-align: right;
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 4px;
    border-top-left-radius: 4px;
    border-right: 3px solid #727cf5;
}

    .rtl .timeline .event::before {
        left: 0;
        right: -170px;
    }

    .rtl .timeline .event::after {
        left: 0;
        right: -55.8px;
    }

@font-face {
    font-family: 'Kamran';
    src: url('/fonts/KAMRB_SF.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

.carousel-caption h5 {
    font-size: 15px; /* Base size for mobile */
    font-family: Cairo, sans-serif;
}

.carousel-caption p {
    font-size: 11px; /* Base size for mobile */
    font-family: 'Cairo', sans-serif;
}


/* Responsive adjustments */
@media (min-width: 768px) {
    .carousel-caption h5 {
        font-size: 12px; /* Adjust for tablets */
    }
    .carousel-caption p {
        font-size: 10px; /* Adjust for tablets */
    }
}

@media (min-width: 992px) {
    .carousel-caption h5 {
        font-size: 15px; /* Adjust for desktops */
    }
    .carousel-caption p {
        font-size: 12px; /* Adjust for desktops */
    }
}

@media (min-width: 1200px) {
    .carousel-caption h5 {
        font-size: 18px; /* Adjust for larger desktops */
    }

    .carousel-caption p {
        font-size: 12px; /* Adjust for larger desktops */
    }
}

.btn {
    font-size: 12px !important;
}

.btn-danger {
    background-color: #dc3545;
    border-color: #dc3545;
}

.btn-primary {
    background-color: #007bff;
    border-color: #007bff;
}

.btn-secondary {
    background-color: #6c757d;
    border-color: #6c757d;
}

.btn-info {
    background-color: #17a2b8;
    border-color: #17a2b8;
}

.btn-warning {
    background-color: #ffc107;
    border-color: #ffc107;
}

.btn-label {
    position: relative;
    left: -11.2px;
    display: inline-block;
    padding: 4px 10px;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 4px 0 0 4px;
}

.btn:active {
    transform: scale(0.90); /* Slight shrink when pressed */
    background-color: #f0f0f0; /* Change background color when pressed */
}

.container {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

/*Only cards that have tables in them*/
.card-body:has(table) {
    padding: 0.5rem !important;
}

/* Default card style */
.card-clickable {
    position: relative;
    overflow: hidden;
    --card-color: #17a2b8; /* Default color if not set inline */
}

    /* The colored fill effect (initially off-screen) */
    .card-clickable::after {
        content: '';
        position: absolute;
        top: 0;
        left: -100%; /* Initially off-screen to the left */
        height: 100%;
        width: 100%;
        background-color: var(--card-color); /* Using the custom color variable */
        transition: left 0.5s ease-in-out; /* Animation duration and easing */
    }

    /* Trigger the animation when the card is clicked (active state) */
    .card-clickable:active::after {
        left: 0; /* Move the pseudo-element into view when clicked */
    }

    /* Optional: Adding a slight hover effect (for desktop) */
    .card-clickable:hover {
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    }

    /* Optional: Slight scale effect for mobile tap */
    .card-clickable:active {
        transform: scale(0.98); /* Slight scale effect when clicked */
    }
