 

/* ===== GLOBAL ===== */
body{
    margin:0;
    font-family: Arial, Helvetica, sans-serif;
    background:#f4f6f9;

    display:flex;
    flex-direction:column;
    min-height:100vh;
}

/* ===== HEADER ===== */
header{
    background:#0b5ed7;
    color:#fff;
    padding:15px 0;
    position:sticky;
    top:0;
    z-index:1000;
    box-shadow:0 2px 6px rgba(0,0,0,0.2);
}

.header-container{
    width:90%;
    margin:auto;
    display:flex;
    align-items:center;
}

.logo{
    display:flex;
    align-items:center;
    gap:10px;
}

.logo img{
    width:60px;
}

/* ===== TITLE ===== */
.page-title{
    text-align:center;
    padding:40px 20px 10px;
}

.page-title h1{
    font-size:48px;
    color:#0b2e59;
    text-shadow:2px 2px 6px rgba(0,0,0,0.3);
    margin:0;
}

/* TITLE */
.portal-title{
    color:#fff;
    font-size:35px;
    font-weight:bold;
    margin:0;
}

/* ===== LOGIN GRID ===== */
.portal-container{
    width:90%;
    margin:40px auto 80px;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:40px;
    text-align:center;
}

/* ===== CARD ===== */
.portal-card{
    background:#fff;
    padding:25px;
    border-radius:12px;
    box-shadow:0 4px 12px rgba(0,0,0,0.15);
    transition:0.3s;
}

.portal-card:hover{
    transform:translateY(-8px);
}

.portal-card img{
    width:200px;
    height:200px;
    object-fit:contain;
}

.portal-card h3{
    margin:15px 0 10px;
    color:#0b2e59;
}

.portal-card p{
    font-size:14px;
    color:#555;
}

/* ===== LOGIN BUTTON ===== */
.portal-card a{
    display:inline-block;
    margin-top:12px;
    padding:10px 18px;
    background:#0b5ed7;
    color:#fff;
    text-decoration:none;
    border-radius:6px;
    font-size:14px;
}

.portal-card a:hover{
    background:#094bb5;
}

/* ===== FOOTER ===== */
footer{
    background:#0b5ed7;
    color:#fff;
    padding:40px 20px 20px;

    margin-top:auto;
}

.footer-container{
    width:90%;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:30px;
    align-items:center;
}

.footer-links h4{
    margin-bottom:10px;
}

.footer-links a{
    display:block;
    color:#fff;
    text-decoration:none;
    margin:6px 0;
    font-size:14px;
}

.footer-links a:hover{
    text-decoration:underline;
}

.footer-logo{
    text-align:center;
}

.footer-logo img{
    width:70px;
}

.social-icons{
    text-align:right;
}

.social-icons i{
    font-size:20px;
    margin-left:12px;
    cursor:pointer;
}

.copy{
    text-align:center;
    margin-top:20px;
    font-size:13px;
}



/* ===== POPUP OVERLAY ===== */
.popup-overlay{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,0.6);
  display:none;
  justify-content:center;
  align-items:center;
  z-index:2000;
}

/* BOX */
.popup-box{
  background:#fff;
  padding:30px;
  border-radius:12px;
  width:600px;
  max-width:90%;
  text-align:center;
  animation:fadeIn 0.3s ease;
}

/* PROGRAM LIST */
.program-list{
  text-align:left;
  margin:15px 0;
}

.program-list li{
  margin:5px 0;
}

/* QUESTION */
.question{
  font-weight:bold;
  margin-top:15px;
}

/* BUTTONS */
.popup-buttons{
  margin-top:20px;
}

.popup-buttons button{
  margin:5px;
}

/* INPUTS */
.popup-box input{
  width:100%;
  padding:12px;
  margin:10px 0;
  border-radius:6px;
  border:1px solid #ccc;
}

/* ANIMATION */
@keyframes fadeIn{
  from{opacity:0; transform:scale(0.9);}
  to{opacity:1; transform:scale(1);}
}


/* ===== MOBILE VIEW ===== */
@media (max-width:768px){

    .footer-container{
        flex-direction:column;
        text-align:center;
        gap:25px;
    }

    .footer-links{
        order:1;
    }

    .footer-logo{
        order:2;
    }

    .footer-social{
        order:3;
        justify-content:center;
    }

    .footer-logo img{
        width:70px;
    }
}


 