almarai-light {
  font-family: "Almarai", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.almarai-regular {
  font-family: "Almarai", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.almarai-bold {
  font-family: "Almarai", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.almarai-extrabold {
  font-family: "Almarai", sans-serif;
  font-weight: 800;
  font-style: normal;
}

body, h1, h2, h3, h4, h5, h6, p, a, span, button, div {
    font-family: "Almarai", sans-serif;
}

body {
    margin: 0;   
    /* background: radial-gradient(ellipse at center, #002359 0%, #001645 100%);   */
    background: url("../img/bg.svg") center center no-repeat;
    background-size: cover;
    font-family: "Tahoma", sans-serif;
    color: #fff;
    overflow-x: hidden;
} /* Overlay sections */
.slant-section {
    position: relative;
    height: 100vh;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    overflow: hidden;
} /* Diagonal panels */
.slant {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 40%;
    background: #000d2f;
    transform: skew(-22deg);
    z-index: 1;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.9);
}
.slant.left {
    left: -15%;
}
.slant.right {
    right: -11%;
}
.slant.right.edge {
    right: -30%;
    background: radial-gradient(ellipse at center, #002359 0%, #001645 100%);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.9);
    z-index: 999;
} 
/* Center logo area */
.center-content {
    position: relative;
    z-index: 2;
    text-align: center;
}
.center-content img {
    width: 211px;
    margin-bottom: 20px;
}
.center-content h2 {
    font-weight: bold;
}
.center-content h5 {
    color: #ccc;
} /* Cards */
.info-card {
    position: relative;
    z-index: 2;
    background: rgba(0, 80, 180, 0.8);
    border-radius: 12px;
    padding: 25px;
    text-align: center;
    margin: 15px;
    min-width: 220px;
    transform: translateX(0);
    transition: all 0.3s;
}
.info-card:hover {
    background: rgba(0, 120, 220, 0.9);
    transform: translateX(-10px);
}
.info-card i {
    font-size: 3rem;
    margin-bottom: 10px;
    color: #00c4ff;
}
.info-card.prev-cert {
    position: absolute;
    top: 20%;
    right: 44%;
    width: 300px;
    border-radius: 30px;
    background: #0190df;
}
.info-card.prev-cert img {
    width: 120px;
}
.info-card.prev-cert a {
    color: #00d1f8;
    text-decoration: none;
}
.info-card.coming-schedule {
    position: absolute;
    top: 55%;
    right: 44%;
    width: 300px;
    border-radius: 30px;
    background: transparent; /* transform: skew(-22deg); */
    border: 4px solid #0190df;
}
.info-card.coming-schedule img {
    width: 100px;
}
.info-card.coming-schedule a {
    color: #0096e2;
    text-decoration: none;
}
.info-card.recent-courses {
    position: absolute;
    top: 10%;
    left: 30%;
    width: 430px;
    border-radius: 30px;
    background: transparent; /* border: 4px solid #0190df; */
}
.info-card.recent-courses img {
    width: 200px;
}
.info-card.recent-courses a {
    color: #007ed2;
    text-decoration: none;
} /* Top bar */
.top-bar {
    position: absolute;
    top: 15px;
    width: 100%;
    right: 2%;
    font-size: 1rem;
    z-index: 2;
} 

.user-icon {
    position: absolute;
    width: 48px;
    height: 48px;
    top: 15px;
    left: 2%; 
    z-index: 2;
} 



.login-btn {
    background: url(../img/login_btn.svg) center center no-repeat;
    display: block;
    width: 275px;
    height: 80px;
    text-align: center; 
    padding: 28px;
    font-size: 22px;
    text-decoration: none;
    color: #001B4E;
    font-weight: bold;
     
}

.schedule-btn {
    background: url(../img/schedule_btn.svg) center center no-repeat;
    display: block;
    width: 275px;
    height: 80px;
    text-align: center; 
    padding: 28px;
    font-size: 22px;
    text-decoration: none;
    color: #001B4E;
    font-weight: bold;
}

.next-btn {
    background: url(../img/next_btn.svg) center center no-repeat;
    display: block;
    width: 275px;
    height: 88px;
    text-align: center; 
    padding: 34px;
    font-size: 22px;
    text-decoration: none;
    color: #001B4E;
    font-weight: bold;
    margin: 0 auto;
}

.previous-btn {
    background: url(../img/previous_btn.svg) center center no-repeat;
    display: block;
    width: 275px;
    height: 88px;
    text-align: center; 
    padding: 24px;
    font-size: 22px;
    text-decoration: none;
    color: #001B4E;
    font-weight: bold;
    margin: 0 auto;
}
.certificates-btn {
    background: url(../img/certificates_btn.svg) center center no-repeat;
    display: block;
    width: 275px;
    height: 88px;
    text-align: center; 
    padding: 34px;
    font-size: 22px;
    text-decoration: none;
    color: #001B4E;
    font-weight: bold;
    margin: 0 auto;
}

.login_btn_icon, .schedule_btn_icon {
    margin:40px; 
}

.next_btn_icon, .previous_btn_icon, .certificates_btn_icon { 
    margin: 40px auto;
    display: block;
}

next_btn_icon

/* registration page styles */

.register-card-title { 
      padding: 1.5rem 2rem;
      width: 100%;
      max-width: 460px;
    }

    .register-card {
      background: #fff;
      border-radius: 25px;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
      padding: 2rem;
      width: 100%;
      max-width: 460px;
    }

    .login-card {
      background: #fff;
      border-radius: 25px;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
      padding: 2rem;
      width: 100%;
      max-width: 460px;
    }


     
    .form-control {
      border-radius: 25px;
      padding: 0.40rem 1rem;
      border: 1px solid #001B4E;
    }

    .form-control:focus {
      border-color: #3d8540;
      box-shadow: 0 0 0 0.2rem rgba(61,133,64,0.25);
    }

    .btn-register {
      background-color: #001B4E;
      color: #fff;
      border-radius: 25px;
      padding: 0.5rem;
      font-weight: 700;
      width: 100%;
      transition: 0.3s ease;
    }

    label {
      color: #001B4E;
      font-weight: 600;
      margin-bottom: 0.4rem;
    }

    .btn-register:hover {
      background-color: #3d8540;
    }

    .login-link {
      text-align: center;
      margin-top: 1rem;
      color: #001B4E;
      font-weight: 500;
    }

    .login-link a {
      color: #001B4E;
      text-decoration: none;
    }

    .login-link a:hover {
      text-decoration: underline;
    }

    .login-card .form-check .form-check-input {
        float: right;
        margin-left: 1em;
    }

    .login-card .form-check-input { 
    width: 1.5em;
    height: 1.5em;
    margin-top: -.1em;
    }

    .login-card .form-control {
        background:#E6E9EE;
        border: none;
    }

    /* courses table styles */

    .courses-table {
    position: relative;
    height: 100vh;
    width: 100%;
    display: flex;
     
    flex-direction: column;
    overflow-y: auto;
    overflow-x:hidden
} 

    .courses-table-container {
      background-color: #fff;
      border-radius: 15px;
      overflow: hidden;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
      padding: 1rem;
    }

    .courses-table-container table {
      width: 100%;
      border-collapse: collapse;
    }

    .courses-table-container thead th {
      background-color: #001B4E;
      color: #fff;
      text-align: center;
      vertical-align: middle;
      font-weight: 700;
      font-size: 1rem;
      border: none;
    }

    .courses-table-container tbody td {
      text-align: center;
      vertical-align: middle;
      color: #001B4E;
      border: 1px solid #ccc;
      padding: 1rem;
      font-size: 1rem;
    }

    .courses-table-container .btn-buy {
      background-color: #0190E0;
      color: #fff;
      border-radius: 25px;
      padding: 0.4rem 1.5rem;
      font-weight: 600;
      border: none;
      transition: background-color 0.3s ease;
    }

    .courses-table-container .btn-buy:hover {
      background-color: #0056b3;
    }

    .text-4 {
        font-size: 1.2em;
    }

    .btn-print {
      background-color: #0190E0;
      color: #fff;
      border: none;
      border-radius: 20px;
      padding: 0.3rem 1.2rem;
      font-weight: 600;
      transition: background-color 0.3s ease;
    }

    .btn-print:hover {
      background-color: #0056b3;
      color: #fff;
    }

     
    @media (max-width: 768px) {
      .courses-table-container thead {
        display: none;
      }
      .courses-table-container tbody td {
        display: block;
        text-align: right;
        border: none;
        border-bottom: 1px solid #ddd;
      }
        .courses-table-container tbody tr {
            margin-bottom: 1rem;
            border: 1px solid #ccc;
            border-radius: 10px;
            border-bottom-color: #0190E0;
            border-bottom-width: 0.5rem;
            overflow: hidden;
        }
      .courses-table-container tbody td::before {
        content: attr(data-label);
        font-weight: 700;
        color: #001B4E;
        display: block;
        margin-bottom: 0.3rem;
      }
    }
    
     

@media(max-width:768px){
    .login-btn {
        margin:10px auto;
        float: none;
    }

    .schedule-btn {
        margin:10px auto;
    }

    .btn-holder {
        text-align: center;
    }
}

/* Footer text */
.footer-text {
    position: absolute;
    bottom: 15px;
    width: 100%;
    right: 70%;
    font-size: 1.8rem;
    z-index: 2;
    color: #ffffff;
}
.mobile-nav {
    display: none;
}
@media (max-width: 820px) {
    .slant {
        display: none;
    }
    .info-card {
        width: 100%;
    }
    .top-bar {
        right: 2%;
        font-size: 0.9rem;
    }

 
    .slant-section {
        height: auto; /* instead of fixed 100vh */
        min-height: 100vh; /* keep full-screen height if content is short */
        justify-content: flex-start;
        padding-top: 5rem;
    }

    .footer-text {
        position: relative; /* instead of absolute */
        bottom: auto;
        right: auto;
        text-align: center;
        margin-top: 2rem; /* spacing under content */
        margin-bottom: 1rem; /* spacing under content */
    }


    .slant.right.edge {
        display: none;
    }
    .mobile-nav {
        display: block;
    }
    .info-card.recent-courses img {
        width: 120px;
    }
     
    .info-card.recent-courses {
        position: absolute;
        top: 40%;
        left: 17%;
        right: inherit;
        width: 240px;
        border-radius: 20px;
        background: transparent;
        border: 3px solid #0190df;
    }
    
    .mobile-nav .info-card {
  position: static;
        width: auto;
        border-radius: 20px;
        background: transparent;
        border: 3px solid #0190df;
        padding: 20px 15px;
        margin: 5px auto;
}

.mobile-nav .info-card.prev-cert {
  background: #0190df;
  border: none;
}
    
    /* .mobile-nav .info-card.coming-schedule {
        position: absolute;
        top: 71%;
        left: 17%;
        right: inherit;
        width: 240px;
        border-radius: 20px;
        border: 3px solid #0190df;
    } */
     
    .mobile-nav .info-card img {
        width: 65px !important;
    }
}
