/* ===============================
   ETSC – FINAL STYLES
   =============================== */

body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  background:#f4f6f8;
}

/* ===== TOP HEADER RIBBON ===== */
.top-bar{
  display:grid;
  grid-template-columns:100px 1fr 100px;
  align-items:center;
  background:#7A1F2B;
  padding:14px 30px;     /* more vertical space */
  height:110px;          /* BROADER maroon band */
  box-sizing:border-box;
}
.logo-left,
.logo-right{
  max-height:60px;
  max-width:60px;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}

.title-center{
  text-align:center;
  color:#fff;
  line-height:1.2;
}

.title-center h1{
  margin:0;
  font-size:22px;
  font-weight:600;
}

.title-center p{
  margin:2px 0 0;
  font-size:14px;
}

/* ===== MENU BAR ===== */
.main-nav{
  background:#5A151F;
  padding:10px;
  text-align:center;
}

.main-nav a{
  color:#fff;
  margin:0 14px;
  text-decoration:none;
  font-size:14px;
}

.main-nav a:hover{
  text-decoration:underline;
}

/* ===== IMAGE SLIDER (WIDTH REDUCED) ===== */
.slider{
  max-width:1100px;     /* page content width */
  height:320px;         /* compact height */
  margin:20px auto;     /* center aligned */
  overflow:hidden;
  background:#ddd;
  border-radius:6px;
}

.slides{
  display:flex;
  width:300%;
  animation: slideMove 15s infinite;
}

.slides img{
  width:100%;
  height:320px;
  object-fit:cover;
}

@keyframes slideMove{
  0%,30%{margin-left:0}
  33%,63%{margin-left:-100%}
  66%,100%{margin-left:-200%}
}

/* ===== CONTENT ===== */
.container{
  max-width:1100px;
  margin:25px auto;
  background:#fff;
  padding:25px;
}
.software-notice {
  background: linear-gradient(90deg, #e3f2fd, #fce4ec); /* light blue ? light pink */
  color: #333;
  padding: 10px;
  margin-bottom: 10px;
  font-size: 15px;
  border-radius: 6px;
  border: 1px solid #d0d7de;
}
/* ===== TWO COLUMN SECTION ===== */
.split{
  display:flex;
  gap:20px;
  margin-top:25px;
}

.split > div{
  flex:1;
  border:1px solid #ccc;
  padding:20px;
  background:#fafafa;
}

/* ===== ANNOUNCEMENTS ===== */
.notice-marquee{
  height:120px;
  overflow:hidden;
}

.notice-marquee ul{
  margin:0;
  padding:0;
  animation: scrollUp 14s linear infinite;
}

.notice-marquee:hover ul{
  animation-play-state:paused;
}

.notice-marquee li{
  list-style:none;
  padding:8px 0;
}

@keyframes scrollUp{
  0%{transform:translateY(100%)}
  100%{transform:translateY(-100%)}
}

/* ===== FOOTER ===== */
.site-footer{
  background:#222;
  color:#fff;
  padding:25px;
  text-align:center;
  font-size:14px;
  line-height:1.8;
}

/* ===============================
   PEOPLE PAGE – READABILITY FIX
   (NO HTML CHANGE REQUIRED)
   =============================== */

/* Target only People page tables */
body.people-page .container table{
  font-size:15.5px;
  line-height:1.7;
}

/* Headings spacing */
body.people-page .container h2{
  font-size:26px;
  margin-bottom:20px;
}

body.people-page .container h3{
  margin-top:25px;
  margin-bottom:12px;
}

/* Table cell spacing */
body.people-page .container table td,
body.people-page .container table th{
  padding:10px 12px;
  vertical-align:top;
}

/* Paragraph spacing inside tables */
body.people-page .container table p{
  margin:6px 0;
}

/* Faculty & staff name emphasis */
body.people-page .container table b{
  font-size:16px;
}

/* Images breathing space */
body.people-page .container table img{
  margin-right:8px;
}

/* Former HoDs table spacing */
body.people-page .container table[border="1"] td{
  padding:12px;
}

/* ===== INTERNAL LINK ON HEADER (RIGHT CORNER) ===== */
.top-bar{
  position:relative;   /* required for absolute positioning */
}

.internal-header-link{
  position:absolute;
  right:5px;
  top:12px;              /* moved up */
  transform:none;        /* remove vertical centering */
  color:#ffffff;
  font-size:12.5px;
  font-weight:600;
  text-decoration:none;
  padding:5px 10px;
  border:1px solid #ffffff;
  border-radius:4px;
  background:rgba(255,255,255,0.05);
}


