body {
    font-family: "Poppins" !important;
    color: #000000 !important;
    background-color: #ffffff;
    overflow-x: hidden;
}

.w-fit {
    width: fit-content;
}

.fw-medium {
    font-weight: 500 !important;
}

.fw-semibold {
    font-weight: 600 !important;
}

.fw-extrabold {
    font-weight: 700 !important;
}

.fs-7 {
    font-size: 0.4375rem;
}

.fs-8 {
    font-size: 0.5rem;
}

.fs-10 {
    font-size: 0.625rem !important;
}

.fs-11 {
    font-size: 0.6875rem !important;
}

.fs-12 {
    font-size: 0.75rem !important;
}

.fs-14 {
    font-size: 0.875rem !important;
}

.fs-15 {
    font-size: 0.9375rem !important;
}

.fs-17 {
    font-size: 1.0625rem !important;
}

.fs-18 {
    font-size: 1.125rem !important;
}

.fs-19 {
    font-size: 1.1875rem !important;
}

.fs-22 {
    font-size: 1.375rem !important;
}

.fs-26 {
    font-size: 1.625rem !important;
}

.fs-36 {
    font-size: 2.25rem !important;
}

.fs-48 {
    font-size: 3rem !important;
}

.fs-96 {
    font-size: 6rem !important;
}

.bg-primary,
.btn-primary,
.hover-primary:hover {
    background-color: #08307b !important;
    border-color: #08307b;
}

.bg-danger,
.btn-danger {
    background-color: #e20000 !important;
    border-color: #e20000;
}

.btn-outline-secondary:hover {
    background-color: rgba(8, 48, 123, 0.26) !important;
}

.btn-primary,
.btn-check:checked + .btn {
    color: #ffffff;
}

.bg-dark {
    background-color: #353535 !important;
}

.btn-gray {
    background-color: #888888 !important;
    border-color: #888888;
    color: #ffffff;
}

.form-select,
.form-control,
.page-item:first-child,
.page-item:last-child,
.btn:not(.btn-group .btn) {
    border-radius: 0.125rem;
}

.form-control,
.form-select,
.btn-outline-secondary {
    border-color: rgba(0, 0, 0, 0.75) !important;
}

.card,
.card-header,
.border-secondary {
    border-color: rgba(128, 128, 128, 0.75);
}

.border-primary,
.btn-outline-primary,
.btn-check:focus + .btn,
.btn-outline-secondary:focus,
.btn-outline-secondary:hover {
    border-color: #08307b !important;
}

.border-white {
    border-color: #ffffff !important;
}

.rounded-2px {
    border-radius: 0.125rem !important;
}

.rounded-8px {
    border-radius: 0.5rem !important;
}

.text-dark,
.dropdown-item:hover,
.btn-gray:hover,
.btn-outline-secondary,
.btn-outline-dark {
    color: #000000 !important;
}

.text-danger,
.invalid-feedback {
    color: #e20000 !important;
}

.text-white,
.hover-primary:hover,
.hover-primary:hover .text-muted,
.hover-primary:hover a {
    color: #ffffff !important;
}

.btn-outline-primary,
.text-primary,
.btn-gray:hover,
.btn-outline-secondary:hover {
    color: #08307b !important;
}

.text-primary-2 {
    color: #189dbb !important;
}

.text-primary-3 {
    color: #02405b !important;
}

.text-link {
    color: #001894 !important;
}

.text-muted {
    color: #727272 !important;
}

.text-stroke {
    -webkit-text-stroke: 0.0625rem;
}

.navbar-light .navbar-nav .nav-link {
    color: rgb(0, 0, 0);
    border-radius: 0.125rem;
}

.navbar-light .navbar-nav .nav-link.active {
    color: rgb(255, 255, 255);
    background-color: #08307b;
    border-color: #08307b;
    font-weight: 600;
}

.notify {
    top: -1px;
    right: 11%;
    padding: 0.15rem;
}

.form-select:focus,
.form-control:focus {
    color: #000000;
    background-color: #ffffff;
    border-color: #08307b !important;
    outline: 0;
}

.btn:focus,
.page-link:focus,
.form-select:focus,
.form-control:focus,
.btn-check:focus + .btn,
.btn-outline-secondary:focus {
    box-shadow: 0 0 0 0.25rem rgb(8, 48, 123, 0.625);
}

.bg-primary .btn:focus,
.bg-primary .page-link:focus,
.bg-primary .form-select:focus,
.bg-primary .form-control:focus,
.bg-primary .btn-check:focus,
.bg-dark .btn:focus,
.bg-dark .page-link:focus,
.bg-dark .form-select:focus,
.bg-dark .form-control:focus,
.bg-dark .btn-check:focus {
    border: 4px solid #ef00d7 !important;
    filter: drop-shadow(0 0 0 0.25rem #ef00d7) !important;
}

.form-select.is-invalid:focus,
.form-control.is-invalid:focus {
    border-color: #e20000 !important;
    box-shadow: 0px 0px 5px 4px rgba(255, 0, 0, 0.5);
}

.bg-primary .form-select.is-invalid:focus,
.bg-dark .form-control.is-invalid:focus {
    border-color: #ff0000 !important;
    box-shadow: 0px 0px 5px 4px rgb(255, 0, 0, 0.5);
}

.material-symbols-outlined {
    font-weight: inherit;
    font-style: inherit;
    font-size: inherit;
}

.profile-pic {
    max-width: 2.9375rem;
}

.event-date div {
    margin-top: -0.4rem;
}

.topMenuBoxCenter div {
    border: 0.5px;
    border-radius: 5px;
}

.topMenuBoxCenter label {
    font-size: 12pt;
    text-align: left;
    font-weight: 600;
}

.topMenuBoxCenter input {
    width: 153px;
    height: 35px;
}

.pop-notification .popover-body {
    padding: 0px;
}

.h-fit {
    height: fit-content;
}

.material-fill {
    font-variation-settings: "FILL" 1;
}

.shadow-3 {
    border: 1px solid #b2b2b2;
    box-shadow: 0px 0px 12px 2px rgba(0, 0, 0, 0.18);
}

.shadow-4 {
    border: 1px solid #b2b2b2;
    box-shadow: 0px 4px 12px 2px rgba(0, 0, 0, 0.18);
}

.shadow-5 {
    box-shadow: 0px 2px 8px 2px rgba(0, 0, 0, 0.12);
}

.shadow-6 {
    border: 1px solid #c5c5c5;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.object-cover {
    object-fit: cover;
}

.group-border {
    border: 1px solid rgba(0, 0, 0, 0.75);
    border-radius: 0.125rem;
}

.mvh-75 {
    min-height: 75vh;
}

.dropdown-menu-center {
    right: auto !important;
    left: 50% !important;
    transform: translate(-50%, 52px) !important;
}

.dropdown .popover-arrow::before,
.popover-arrow::after {
    position: absolute;
    display: block;
    content: "";
    border-color: transparent;
    border-style: solid;
}

.dropdown .popover-arrow::before {
    top: 0;
    border-width: 0 0.5rem 0.5rem 0.5rem;
    border-bottom-color: rgba(0, 0, 0, 0.25);
}

.dropdown .popover-arrow {
    position: absolute;
    top: -10px;
    left: 50%;
    display: block;
    width: 1rem;
    height: 0.5rem;
}

.dropdown-menu-end .popover-arrow {
    left: unset;
    right: 25%;
}

.arrow-right {
    right: 15% !important;
}

.dropdown .popover-arrow::after {
    top: 1px;
    border-width: 0 0.5rem 0.5rem 0.5rem;
    border-bottom-color: #fff;
}

.dropdown-item:hover {
    background-color: #e8f0fe;
}

input[type="checkbox"] {
    position: relative;
    cursor: pointer;
    border-radius: 1px;
}

input[type="checkbox"]:focus {
    outline-offset: 7px;
    outline: 2px solid #08307b;
    box-shadow: 0 0 0.25rem 0.25rem rgb(8, 48, 123, 0.625);
}

input[type="checkbox"]:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    background-color: #ffffff;
    outline: 3px rgb(0, 0, 0) solid;
    border-radius: 1px;
    transform: translate(-50%, -50%);
}

input[type="checkbox"]:checked:after {
    content: "";
    display: block;
    width: 40%;
    height: 70%;
    border: solid;
    border-width: 0 3px 3px 0;
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
}

.modal-header,
.modal-footer {
    border-color: #767676;
}

#navbrand {
    max-width: 7.875rem;
}

#userprofileMenu {
    min-width: 11.8125rem;
}

@media only screen and (min-width: 576px) {
    .fs-sm-6 {
        font-size: 1rem !important;
    }

    .fs-sm-5 {
        font-size: 1.25rem !important;
    }

    .fs-sm-4 {
        font-size: 1.5rem !important;
    }

    .fs-sm-2 {
        font-size: 2rem !important;
    }

    .fs-sm-10 {
        font-size: 0.625rem !important;
    }

    .fs-sm-14 {
        font-size: 0.875rem !important;
    }

    .fs-sm-18 {
        font-size: 1.125rem !important;
    }

    .fs-sm-36 {
        font-size: 2.25rem !important;
    }

    .fs-sm-48 {
        font-size: 3rem !important;
    }

    .fw-sm-semibold {
        font-weight: 600 !important;
    }

    .text-sm-primary {
        color: #08307b !important;
    }

    .card-border-sm {
        border: 1px solid rgba(128, 128, 128, 0.75) !important;
    }
    .card-border-sm .card-header {
        border-bottom: 1px solid rgba(128, 128, 128, 0.75) !important;
    }

    .border-sm-end {
        border-right: 1px solid !important;
    }

    .form-control-sm-lg {
        min-height: 3rem;
        padding: 0.5rem 1rem;
        font-size: 1.25rem;
    }

    .rounded-sm-8px {
        border-radius: 0.5rem !important;
    }

    #navbrand {
        max-width: none;
    }
}

@media only screen and (min-width: 768px) {
    .d-md-table-header-group {
        display: table-header-group !important;
    }

    main {
        min-height: 89vh;
        overflow-x: hidden;
    }

    .fs-md-14 {
        font-size: 0.875rem !important;
    }

    .fs-md-4 {
        font-size: 1.5rem !important;
    }
}

@media only screen and (min-width: 1200px) {
    .w-lg-100 {
        width: 100%;
    }

    #searchBar {
        max-height: 2rem;
        min-width: 16.5625rem;
    }

    #searchBar input {
        min-height: auto;
    }

    #nl_form input {
        height: calc(2.5rem + 2px);
    }

    #subscribeEmail input {
        min-height: 3.125rem;
    }
}

@media only screen and (min-width: 1366px) {
    .container {
        max-width: 1246px !important;
    }

    #mainContent,
    .mainContent {
        max-width: 56.4375rem;
    }

    #sideContent,
    .sideContent {
        min-width: 20.5625rem;
    }

    #postForm input[type="text"],
    #postForm .form-select {
        height: 2.75rem;
    }
}

/* end treatments for the footer and its sub elements */
