:root {
    --medium-green: #1b784a;
    --white: #ffffff;
    --black-01: #161616;
    --light-green: #4ab87f;
    --header-height: clamp(2.5rem, 3vw, 3.5rem);
    --nav-height: clamp(3.5rem, 4vw, 5rem);
    --font-size-base: clamp(0.875rem, 0.9vw, 1rem);
    --font-size-sm: clamp(0.75rem, 0.8vw, 0.875rem);
    --spacing: clamp(0.5rem, 2vw, 2.5rem);
    --ibmregular: "IBM Plex Regular";
    --ibmsemibold: "IBM Plex SemiBold";
    --ibmbold: "IBM Plex Bold";
}

@font-face {
    font-family: "IBM Plex Regular";
    src: url("/themes/uoj_theme/fonts/IBMPlexSansArabic-Regular.ttf") format("truetype");
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: "IBM Plex SemiBold";
    src: url("/themes/uoj_theme/fonts/IBMPlexSansArabic-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: "IBM Plex Bold";
    src: url("/themes/uoj_theme/fonts/IBMPlexSansArabic-Bold.ttf") format("truetype");
    font-weight: 700;
    font-display: swap;
}

@keyframes dropdown-menu-anim {
    0% {
        transform: translateY(-3rem);
        opacity: 0;
    }

    100% {
        transform: translateY(0px);
        opacity: 1;
    }
}

html {
    width: 100%;
    overflow-x: hidden;
}

body {
    font-family: var(--ibmregular);
    position: relative;
    width: 100%;
    font-size: 16px;
    padding: 0px;
    margin: 0px;
    text-align: right;
}
.lang-menu a.active::before{
    content:"";
    position:absolute;
    left:0.5rem;
    background-image:url("/themes/uoj_theme/media/tick.png");
    height:.7rem;
    width:.7rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:left center;
    top: 50%;
    transform: translateY(-50%);
}

html:has(.dropdown-open),
body.dropdown-open {
    overflow: hidden !important;
}

.navbar-brand {
    margin: 0px;
}

.navbar-brand img:first-child {
    border-left: 1px solid rgba(59, 59, 57, 0.28);
    padding-left: 1rem;
    height: 3.5rem;
}

.closeMenu {
    margin-inline-start: auto;
    margin-inline-end: 0;
    display: flex;
    height: 40px;
    min-height: 40px;
    max-height: 40px;
    width: 40px;
    justify-content: center;
    align-items: center;
    padding: 0;
    border-radius: 4px;
    background: #f3f4f6!important;
}
.closeMenu svg rect{
    fill:#f3f4f6!important;
}
.navbar-brand img:last-child {
    padding-right: 1rem;
    width: 9rem;
    height: 3.6rem;
}

.main-nav .navbar {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 1rem 0;
    gap: 1.7rem;
    width: 100%;
}

button.navbar-toggler {
    color: white;
    display: flex;
    flex-direction: column;
    position: absolute;
    left: 0rem;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    margin-inline-start: auto;
    margin-inline-end: 0;
    position: absolute;
    right: 30px;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.2);
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
}

button.navbar-toggler span {
    color: black;
    background-color: black;
    height: 12px;
    line-height: 1;
}

body.dropdown-open::before {
    content: "";
    position: fixed;
    left: 0px;
    right: 0px;
    top: var(--overlay-top, 0);
    bottom: 0px;
    background: rgba(0, 0, 0, 0.7);
    pointer-events: none;
    z-index: 0;
    transition: opacity 0.2s;
}

.top-header {
    background-color: rgb(248, 249, 250);
    border-bottom: 0.0625rem solid rgb(222, 226, 230);
    padding: clamp(0.5rem, 0.7vw, 0.75rem) 0px;
}

.top-header-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
    width: 100%;
    max-width: 120rem;
    margin: 0px auto;
    padding: 0 var(--spacing);
}

.top-links {
    display: flex;
    flex-flow: column wrap;
    gap: 1rem;
    width: 100%;
    padding: 0 1rem;
}

.top-links li.nav-item {
    list-style-type: none;
}
.site-info {
    font-size: var(--font-size-sm);
    color: rgb(102, 102, 102);
}

.site-info span {
    color: var(--light-green);
    margin-right: 0.5rem;
    cursor: pointer;
}

.site-info img {
    filter: invert(32%) sepia(69%) saturate(631%) hue-rotate(110deg) brightness(92%) contrast(94%);
    cursor: pointer;
}

header {
    position: relative;
    width: 100%;
    z-index: 3;
    top: 0px;
}

.main-nav {
    background-color: var(--medium-green);
}

.nav-content {
    width: 100%;
}

.navbar .d-flex {
    justify-content: space-between;
    width: 100%;
}
.contact-btn {
    font-family: "IBM Plex Regular";
    background-color: rgb(27, 120, 74);
    color: var(--white);
    border: none;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 1rem;
    cursor: pointer;
    padding: 0;
}

.contact-btn span {
    display: none;
}

.contact-btn img {
    height: 1.1rem;
}

.secondary-nav {
    background-color: var(--white);
    padding: 0px;
}

.secondary-nav-content {
    width: 100%;
    margin: 0px auto;
    gap: 0.75rem;
    justify-content: flex-start;
    background-color: white;
    overflow: visible;
    flex-direction: column;
}

.secondary-nav-content .leftSection {
    display: flex;
    align-items: center;
    gap: 1rem;
    justify-content: center;
    overflow: visible;
}

.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    justify-content: space-around;
    width: 2rem;
    height: 2rem;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0px;
    z-index: 1;
    position: relative;
}

.mobile-menu-toggle span {
    width: 100%;
    height: 0.25rem;
    background-color: var(--black-01);
    border-radius: 0.125rem;
    transition: 0.3s;
    transform-origin: center center;
}

.secondary-nav-content.menu-open .mobile-menu-toggle span:nth-child(1) {
    transform: rotate(45deg) translate(0.375rem, 0.375rem);
}

.secondary-nav-content.menu-open .mobile-menu-toggle span:nth-child(2) {
    opacity: 0;
}

.secondary-nav-content.menu-open .mobile-menu-toggle span:nth-child(3) {
    transform: rotate(-45deg) translate(0.375rem, -0.375rem);
}

.nav-menu {
    display: flex;
    gap: 0.5rem;
    list-style: none;
    margin: 0px;
    overflow-x: auto;
    width: 100%;
    scrollbar-width: thin;
    position: fixed;
    left: 0px;
    right: 0px;
    top: 0;
    background-color: white;
    z-index: 5;
    flex-direction: column;
    align-items: flex-start;
    padding: 1rem 1rem;
    height: calc(1dvh* 100);
    overflow: auto;
}

.nav-menu .vision,
.nav-menu .logo-uj {
    display: block;
    height: clamp(2.25rem, 2.8vw, 3rem);
    width: auto;
    object-fit: contain;
    margin: 0px clamp(0.75rem, 1vw, 1.25rem);
}

.nav-menu .logo-uj {
    height: clamp(2.5rem, 3.2vw, 3.5rem);
}

.navbar-nav {
    padding: 0px;
    width: 100%;
}

.nav-item {
    position: static;
    width: 100%;
    border-bottom: 1px solid rgb(206 207 210 / 40%);
}

.nav-menu .nav-item:last-child {
    position: relative;
}

header .nav-link,
header .secondary-nav-content .top-links .nav-item .nav-link {
    color: var(--medium-green);
    text-decoration: none;
    font-size: 1rem;
    align-items: center;
    gap: 0.5rem;
    transition: 0.3s;
    white-space: nowrap;
    position: relative;
    border-radius: 0.3rem;
    font-family: var(--ibmbold);
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 1rem 0;
}
header li.nav-item a.nav-link{
    color:var(--medium-green)!important;
    padding:1rem 1rem;
    
}
header li.nav-item a.nav-link.active{
    background-color: #e5e7eb;
}
header li.nav-item a.nav-link.active::before{
    content:"";
    position:absolute;
    height:60%;
    width:.3rem;
    border-radius:1rem;
    right: 0rem;
    top:50%;
    transform:translateY(-50%);
    background-color:var(--medium-green);
}
.nav-link i {
    font-size: 0.7em;
}

.navbar .container.mega-dropdown {
    position: relative;
    left: 0px;
    right: 0px;
    background: var(--white);
    display: none;
    z-index: 1;
    width: 100%;
    top: 0;
}

.nav-item.open .mega-dropdown {
    display: block;
}





.mega-dropdown-grid-spaced {
    margin-top: clamp(2rem, 3vw, 4rem);
}

.mega-section-title {
    color: var(--medium-green);
    font-size: 1.125rem;
    line-height: 1.75rem;
    border: none;
    font-family: var(--ibmbold);
    position: relative;
    padding-right: 2.5rem;
    text-align: right;
    background-color: transparent !important;
    margin: 1.7rem 0;
}
.mega-section-title[aria-expanded="true"]::after{
    transform:rotate(180deg);
}
.mega-section-title::after{
    content:"";
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    left: 1rem;
    background:url("/themes/uoj_theme/media/blackchevron.png");
    height:.7rem;
    width:.7rem;
    background-repeat:no-repeat;
    background-size:contain;
    transition:all .3s ease-in-out;
}
.mega-section-title::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-image: url("/themes/uoj_theme/media/icon.png");
    background-size: contain;
    background-repeat: no-repeat;
    height: 1.6rem;
    width: 1.7rem;
    right: 0px;
}

.mega-section-title i {
    color: var(--medium-green);
    font-size: 1.1em;
}

.mega-links {
    list-style: none;
    padding: 0 2.6rem 1rem;
    margin: 0px;
    border-bottom: 1px solid rgb(0 0 0 / 10%);
}

.mega-links li {
    margin-bottom: clamp(0.2rem, 0.5vw, 1rem);
    display: flex;
    justify-content: flex-start;
}

.mega-links a {
    font-size: 1rem;
    color: rgba(39, 39, 39, 0.85);
    color: var(--medium-green);
    padding: 0.4rem 0rem;
    border: none;
    width: 100%;
    display: block;
    position: relative;
    text-align: right;
    transition: 0.3s ease-in-out;
    background-color: transparent !important;
}

.mega-links a:hover {
    color: var(--medium-green);
}

.utility-links {
    display: flex;
    gap: 1.7rem;
    align-items: center;
    flex-flow: wrap;
    justify-content: flex-start;
    width: fit-content;
}

.main-nav .utility-links button img {
    filter: brightness(0) saturate(100%) invert(92%) sepia(93%) saturate(0%) hue-rotate(202deg) brightness(106%) contrast(106%);
}

.utility-links button span {
    display: none;
}

.utility-btn {
    font-family: var(--ibmregular);
    background: none;
    border: none;
    color: var(--black-01);
    font-size: 1rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0px;
}
.myUJ{
    background-color:var(--medium-green);
    text-align:center;
    display:flex;
    align-items:center;
    justify-content:center;
    color:white;
    padding: 0.7rem 1rem;
    border-radius:.5rem;
    margin-bottom:2rem;
    padding-left: 1.5rem;
}
.myUJ span{
    position:relative;
    
}
.myUJ span::after{
    content:"";
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    background-image:url("/themes/uoj_theme/media/arrow-left.svg");
    height:1rem;
    width:1rem;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
    left: -1.7rem;
}
.myUJ img{
    filter: brightness(0) saturate(100%) invert(99%) sepia(15%) saturate(507%) hue-rotate(151deg) brightness(117%) contrast(100%);
}
.utility-btn i {
    font-size: 1.1em;
}

img.icons {
    height: 1.1rem;
    width: 1.1rem;
}

img.chevron-icon {
    height: 0.41rem;
    transition: transform 0.4s;
    transform-origin: center center;
}

.lang-dropdown {
    position: relative;
}

.lang-menu {
    position: absolute;
    top: 100%;
    right: 0px;
    background: var(--white);
    border-radius: clamp(0.25rem, 0.3vw, 0.375rem);
    box-shadow: rgba(0, 0, 0, 0.1) 0px 0.25rem 0.5rem;
    min-width: clamp(5rem, 5vw, 12rem);
    margin-top: 1rem;
    display: none;
    z-index: 1001;
}

.lang-dropdown.open .lang-menu {
    display: block;
}

.nav-item.open .chevron-icon,
.lang-dropdown.open .chevron-icon {
    transform: rotate(180deg);
}

.lang-menu a {
    display: block;
    padding: clamp(0.5rem, 0.7vw, 0.75rem) clamp(1rem, 1.3vw, 1.5rem);
    color: var(--black-01);
    text-decoration: none;
    font-size: var(--font-size-sm);
    position: relative;
}


.page-en .top-header,
.page-en .main-nav,
.page-en .secondary-nav,
.page-en .navbar .d-flex>*,
.page-en .mega-dropdown-grid {
    direction: ltr;
}

.page-en .mega-links {
    text-align: start;
}

.page-en .mega-section-title {
    text-align: start;
}

.page-en .nav-menu .nav-item:last-child::before {
    left: auto;
    right: 0px;
}

.page-en .secondary-nav-content {
    padding-left: 0.4rem;
}

/* SEARCH BOX CONTAINER START */
.searchbox-container {
    position: absolute;
    top: 13rem;
    left: 0px;
    right: 0px;
    width: 100%;
    height: 100%;
    z-index: 6;
    display: none;
    border-top: none;
    animation: 1s ease 0s 1 normal none running dropdown-menu-anim;
    overflow: hidden;
    padding: 0;
    background-color: rgba(0, 0, 0, 0.7);
}

.searchbox-container.show {
    display: flex;
}

.searchbox-container .search-box {
    display: flex;
    align-items: center;
    background-color: white;
    padding: 1rem;
    justify-content: space-between;
    width: 100%;
    height: fit-content;
    z-index: 1;
    position: relative;
}

.searchbox-container .search-box input {
    background-color: transparent;
    border: none;
    outline: none;
    border: 1px solid rgb(0 0 0 /10%);
    font-size: 1rem;
    width: 100%;
    padding: 0.6rem 1rem;
    border-radius: .5rem;
}

.searchbox-container .search-box button,
.searchbox-container .search-box .close-search {
    padding: 1rem;
    margin: 0px 1.2rem 0px 0px;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    background-color: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.searchbox-container .search-box button,
.searchbox-container .search-box .close-search {
    padding: 1rem;
    margin: 0px 1.2rem 0px 0px;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    background-color: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.searchbox-container .search-box button span {
    color: black !important;
}

.searchbox-container .search-box button svg,
.searchbox-container .search-box .close-search svg {
    height: 1rem;
    width: 1rem;
}

.mega-section.mega-section--full{
    margin-top:3rem;
}
/* SEARCH BOX CONTAINER END */
@media (min-width: 992px) {
    header .nav-link, 
    header .secondary-nav-content .top-links .nav-item .nav-link{
        font-size:1.4rem;
    }
    .navbar .d-flex{
        justify-content:space-between;
    }
    .mega-links{
        border:none!important;
    }
    header li.nav-item a.nav-link.active::before{
        display:none;
    }
    .mega-links a{
        color:rgba(39, 39, 39, 0.85);
    }
    .mega-section-title{
        pointer-events:none;
    }
    .mega-section-title::after{
        display:none;
    }
    .mega-links.collapse:not(.show){
        display:flex;
        flex-direction:column;
        padding: 0;
    }
    .mega-section--full .mega-links{
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(5, auto);
    column-gap: 0rem;
}
        .mega-dropdown-grid{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
         column-gap: 2rem; 
}
    .mega-section--full .mega-links,
    .mega-section--full  .mega-links.collapse:not(.show){
    display: grid;
    grid-template-columns: repeat(5, 1fr);
         column-gap: 0; 
}
     .mega-section--full .mega-links li{
         max-width:80%;
     }
    .nav-link.active img.chevron-icon {
    filter: brightness(0) invert(1);
}
    .navbar .container.mega-dropdown {
    position: fixed;
    left: 0px;
    right: 0px;
    background: var(--white);
    display: none;
    z-index: 1;
    width: 100%;
    overflow: auto;
    max-height: 100vh;
    top: 0;
    padding-top: 2rem;
    padding-bottom: 2rem;
}
    .searchbox-container {

top: 11.6rem;

}

    .searchbox-container .search-box {
        border-bottom-left-radius: 2rem;
        border-bottom-right-radius: 2rem;
    }

    .searchbox-container .search-box button {
        background-color: #1B8354;
        color: white;
        height: unset;
        width: fit-content;
        border-radius: .5rem;
        padding: 0.5rem 2.8rem;
    }

    .searchbox-container .search-box .close-search {
        position: absolute;
        top: 0.1rem;
        left: 4rem;
        border: none;
        margin: 0;
        padding: 0;
    }

    .searchbox-container .search-box button span {
        color: white !important;
    }

    .secondary-nav-content .leftSection {
        justify-content: space-between;
    }

    .secondary-nav-content .navbar-nav .nav-item:hover a {
        background-color: rgb(243, 244, 246);
    }

    .contact-btn span {
        display: block;
    }
    .navbar .container.mega-dropdown {
        top: unset;
        border-radius: 0 0 1.75rem 1.75rem;
        max-height: 74%;
    }

    .secondary-nav-content .nav-item .nav-link.active,
    .secondary-nav-content .nav-item:hover .nav-link.active {
        background-color: var(--medium-green);
        color: var(--white)!important;
        text-decoration: none;
    }

    .secondary-nav-content  .nav-item .nav-link {
        padding: 1.4rem 1.4rem 1.4rem 2rem !important;
        color: var(--black-01)!important;
        font-family: var(--ibmregular);
    }

    .secondary-nav-content .navbar-nav .nav-item .nav-link::after {
        content: "";
        height: 0.4rem;
        position: absolute;
        bottom: 0.4rem;
        border-radius: 1rem;
        width: 68%;
        left: 50%;
        transform: translateX(-50%);
    }

    .secondary-nav-content .nav-item .nav-link.active::after,
    .secondary-nav-content .nav-item:hover .nav-link.active::after {
        background-color: rgb(74, 184, 127);
    }

    .secondary-nav-content .nav-item:hover .nav-link::after {
        background-color: rgb(205, 212, 220);
    }

    .utility-btn {
        padding: 1.7rem 0.6rem;
    }
    .myUJ {
    background-color: transparent;
    text-align: inherit;
    border-radius: 0;
    margin-bottom: 0;
    color: var(--black-01);
}
    .main-nav .navbar {
        justify-content: space-between;
    }

    img.icons {
        height: 1rem;
        width: 1rem;
        filter: none;
    }

    .top-links {
        display: flex;
        flex-direction: row;
        width: fit-content;
    }
.top-links a{
    width:fit-content;
}
    .top-links li.nav-item,
    .navbar-nav li.nav-item {
        border: none;
        width: fit-content;
    }

    .utility-links button span {
        display: block;
    }

    header .nav-link, header .secondary-nav-content .top-links .nav-item .nav-link {
        color: var(--white)!important;
        text-decoration: none;
        font-size: 1rem;
        font-family: var(--ibmregular);
        padding: 0 !important;
        width: fit-content;
    }

    .nav-menu {
        position: relative;
        left: unset;
        right: unset;
        top: 0rem;
        background-color: transparent;
        z-index: 0;
        flex-direction: row;
        align-items: center;
        padding: 0px;
        height: unset;
    }

    .utility-links {
        flex-direction: row;
        flex-wrap: nowrap;
    }
}

@media(min-width:1200px) {
    .searchbox-container .search-box {
        padding: 3rem 4rem;
    }

    .searchbox-container .search-box input {
        font-size: 1rem;
    }
}

@media (min-width: 1600px) {
    :root {
        --header-height: 3.5vw;
        --nav-height: 4.5vw;
        --font-size-base: 0.9vw;
        --font-size-sm: 0.75vw;
        --spacing: 1.2vw;
    }
    .navbar-brand img:last-child {
        padding-right: 1vw;
        width: 10vw;
        height: 4.5vw;
    }

    .navbar-brand img:first-child {
        height: 4vw;
    }
}










