
:root{--green-950:#052e22;--green-900:#064e3b;--green-800:#075f46;--green-700:#087354;--green-100:#e9f5ef;--gold:#d6b457;--cream:#fbfaf6;--ink:#18302a;--muted:#64756f;--line:#dce7e2;--white:#fff;--shadow:0 20px 55px rgba(5,46,34,.16);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.hidden{display:none!important}.container{width:min(1160px,calc(100% - 36px));margin:auto}
.topbar{background:var(--green-950);color:#dceee7;font-size:13px}.topbar-inner{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:18px}.topbar a:hover{text-decoration:underline}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(6,78,59,.09)}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:13px}.brand img{width:66px;height:66px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 0 0 2px var(--green-800)}.brand strong{display:block;color:var(--green-900);font-family:Georgia,serif;font-size:20px;line-height:1.15}.brand span{font-size:13px;color:var(--muted)}.nav{display:flex;align-items:center;gap:5px}.nav a,.nav button{border:0;background:none;color:#294840;padding:10px 11px;border-radius:10px;font-weight:700;cursor:pointer}.nav a:hover,.nav button:hover{background:var(--green-100);color:var(--green-900)}.admin-btn{background:var(--green-900)!important;color:#fff!important;padding-inline:16px!important}.menu-btn{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 12px;font-weight:800;color:var(--green-900)}
.hero{position:relative;min-height:650px;display:grid;align-items:center;color:#fff;background-image:linear-gradient(90deg,rgba(3,35,26,.94),rgba(3,35,26,.68) 53%,rgba(3,35,26,.20)),url('../embedded/73ed4701eab8.webp');background-size:cover;background-position:center}.hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,var(--cream))}.hero-content{position:relative;z-index:2;padding:90px 0 140px}.eyebrow{letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#f3d98f;font-size:13px}.hero h1{font-family:Georgia,serif;font-weight:700;font-size:clamp(42px,6vw,78px);line-height:1.04;max-width:860px;margin:16px 0}.hero h1 span{color:#f2d686}.hero p.lead{font-size:19px;max-width:720px;color:#e1eee9}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:12px 18px;font-weight:800;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--gold);color:#273a18}.btn-secondary{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.3)}.btn-green{background:var(--green-900);color:#fff}.btn-light{background:#fff;color:var(--green-900);border:1px solid var(--line)}.btn-danger{background:#a43d3d;color:#fff}.btn-small{padding:8px 12px;font-size:13px}
.notice-strip{position:relative;z-index:4;margin-top:-54px}.notice-inner{background:#fff;border-radius:16px;box-shadow:var(--shadow);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:18px 22px}.notice-label{background:var(--green-900);color:#fff;padding:7px 11px;border-radius:8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.notice-title{font-weight:800;color:var(--green-900)}.notice-date{color:var(--muted);font-size:13px}.quick{padding:34px 0 10px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.quick-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;gap:13px;align-items:center;box-shadow:0 8px 25px rgba(5,46,34,.06)}.quick-card:hover{border-color:#9bc8b5;transform:translateY(-2px)}.quick-icon{width:44px;height:44px;border-radius:12px;background:var(--green-100);color:var(--green-900);display:grid;place-items:center;font-weight:900}.quick-card strong{display:block}.quick-card small{color:var(--muted)}
.section{padding:84px 0}.section.soft{background:#f0f6f3}.section.dark{background:var(--green-950);color:#fff}.kicker{display:block;text-transform:uppercase;letter-spacing:.13em;color:var(--green-700);font-weight:900;font-size:12px}.dark .kicker{color:#e7cc80}.section-title{font-family:Georgia,serif;color:var(--green-900);font-size:clamp(31px,4vw,50px);line-height:1.12;margin:10px 0 16px}.dark .section-title{color:#fff}.section-copy{color:var(--muted);max-width:760px}.dark .section-copy{color:#bed2ca}.split{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center}.image-frame{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);min-height:430px}.image-frame img{width:100%;height:100%;min-height:430px;object-fit:cover}.callout{border-left:4px solid var(--gold);background:#fff;padding:18px 20px;border-radius:0 14px 14px 0;margin:24px 0;color:#435d55}.principal-card{display:grid;grid-template-columns:320px 1fr;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.principal-photo{min-height:360px;background:linear-gradient(150deg,var(--green-900),var(--green-700));display:grid;place-items:center;padding:25px;color:#fff;text-align:center}.principal-photo img{width:100%;height:100%;object-fit:cover}.photo-placeholder{border:1px dashed rgba(255,255,255,.55);border-radius:18px;padding:35px}.principal-copy{padding:46px}.principal-copy blockquote{font-family:Georgia,serif;font-size:24px;color:#29463d;margin:18px 0}.quote-mark{font-family:Georgia,serif;font-size:76px;line-height:.6;color:#d3b04e}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.card h3{color:var(--green-900);margin:5px 0 8px}.card p{color:var(--muted);margin:0}.card-tag{font-size:12px;color:var(--green-700);font-weight:900;text-transform:uppercase;letter-spacing:.1em}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.15);border-radius:18px;overflow:hidden}.stat{padding:28px;border-right:1px solid rgba(255,255,255,.15)}.stat:last-child{border-right:0}.stat strong{font-size:36px;display:block;color:#f1d680}.stat span{color:#c5d8d1}.notice-list{display:grid;gap:14px}.notice-item{display:grid;grid-template-columns:130px 1fr auto;align-items:center;gap:20px;background:#fff;border:1px solid var(--line);padding:18px;border-radius:15px}.notice-item time{font-weight:800;color:var(--green-700)}.notice-item h3{margin:3px 0;color:var(--green-900)}.badge{display:inline-block;padding:4px 8px;background:var(--green-100);color:var(--green-800);font-weight:800;font-size:11px;border-radius:999px}.empty{padding:26px;border:1px dashed #abc5ba;border-radius:15px;color:var(--muted);background:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-item{border-radius:18px;overflow:hidden;position:relative;background:var(--green-900);min-height:230px}.gallery-item img{width:100%;height:270px;object-fit:cover}.downloads{display:grid;gap:13px}.download-item{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px 19px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:15px}.download-item strong{display:block;color:var(--green-900)}.download-item small{color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px}.contact-box,.form-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:27px}.contact-row{padding:13px 0;border-bottom:1px solid var(--line)}.contact-row:last-child{border:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field span{font-size:13px;font-weight:800;color:#416057}.field input,.field textarea,.field select{width:100%;border:1px solid #cbdcd5;border-radius:10px;padding:11px 12px;background:#fff;color:#173b2f}.field input:focus,.field textarea:focus,.field select:focus{outline:3px solid rgba(8,115,84,.14);border-color:var(--green-700)}
.footer{background:#031f17;color:#c9ddd5;padding:55px 0 18px}.footer-grid{display:grid;grid-template-columns:1.25fr .8fr .9fr;gap:40px}.footer h3{color:#fff}.footer-brand{display:flex;align-items:center;gap:13px}.footer-brand img{width:60px;height:60px;border-radius:50%}.footer-links{display:grid;gap:9px}.footer-bottom{margin-top:35px;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;display:flex;justify-content:space-between;gap:16px;font-size:13px}
.modal{position:fixed;inset:0;z-index:100;background:rgba(1,20,15,.78);display:grid;place-items:center;padding:22px}.login-card{width:min(470px,100%);background:#fff;border-radius:24px;padding:31px;box-shadow:0 35px 90px rgba(0,0,0,.4)}.login-brand{display:flex;gap:13px;align-items:center}.login-brand img{width:62px;height:62px;border-radius:50%}.login-card h2{font-family:Georgia,serif;color:var(--green-900);font-size:34px;margin:18px 0 5px}.mode-box{background:#eef7f2;border:1px solid #cde3d9;padding:13px;border-radius:12px;margin:17px 0;color:#31554a}.error{color:#a33737;font-weight:800;font-size:13px;min-height:20px}.modal-close{position:absolute;top:16px;right:18px;border:0;background:rgba(255,255,255,.15);color:#fff;width:42px;height:42px;border-radius:50%;font-size:22px;cursor:pointer}
.admin-shell{min-height:100vh;background:#edf3f0;display:grid;grid-template-columns:270px 1fr}.admin-sidebar{background:var(--green-950);color:#fff;padding:25px 18px;position:sticky;top:0;height:100vh;overflow:auto}.admin-brand{display:flex;align-items:center;gap:12px;padding:5px 7px 24px}.admin-brand img{width:52px;height:52px;border-radius:50%}.admin-brand strong{line-height:1.2}.admin-nav{display:grid;gap:6px}.admin-nav button{border:0;background:transparent;color:#c8ddd5;padding:11px 13px;border-radius:10px;text-align:left;font-weight:800;cursor:pointer}.admin-nav button:hover,.admin-nav button.active{background:#0e6b50;color:#fff}.admin-main{padding:28px}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.admin-top h1{font-family:Georgia,serif;color:var(--green-900);margin:0}.admin-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-panel{display:none}.admin-panel.active{display:block}.panel-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;margin-bottom:20px;box-shadow:0 8px 24px rgba(5,46,34,.05)}.panel-card h2{color:var(--green-900);margin-top:0}.admin-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.dashboard-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:21px}.dashboard-card span{color:var(--muted);display:block}.dashboard-card strong{font-size:36px;color:var(--green-900)}.repeat-list{display:grid;gap:14px}.repeat-item{border:1px solid var(--line);border-radius:15px;padding:16px;background:#fbfdfc}.repeat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.repeat-actions{display:flex;justify-content:flex-end;margin-top:12px}.admin-note{padding:13px;background:#fff8df;border:1px solid #ead79b;border-radius:12px;color:#675526;margin-bottom:18px}.toast{position:fixed;z-index:200;right:20px;bottom:20px;background:var(--green-950);color:#fff;border-radius:11px;padding:13px 17px;box-shadow:var(--shadow)}
@media(max-width:980px){.nav{display:none;position:absolute;top:82px;left:18px;right:18px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:12px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav.open{display:flex}.menu-btn{display:block}.quick-grid,.cards,.gallery-grid{grid-template-columns:repeat(2,1fr)}.split,.contact-grid{grid-template-columns:1fr}.principal-card{grid-template-columns:260px 1fr}.stats{grid-template-columns:repeat(2,1fr)}.admin-shell{grid-template-columns:220px 1fr}.dashboard-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.topbar-inner{justify-content:center;text-align:center;flex-wrap:wrap;padding:8px 0}.topbar-inner span:last-child{display:none}.hero{min-height:600px}.hero-content{padding:70px 0 120px}.notice-inner{grid-template-columns:1fr}.quick-grid,.cards,.gallery-grid{grid-template-columns:1fr}.section{padding:64px 0}.principal-card{grid-template-columns:1fr}.principal-photo{min-height:260px}.principal-copy{padding:28px}.stats{grid-template-columns:1fr}.stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.15)}.notice-item{grid-template-columns:1fr}.download-item{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.form-grid,.admin-form-grid,.repeat-grid{grid-template-columns:1fr}.admin-shell{display:block}.admin-sidebar{position:relative;height:auto}.admin-nav{grid-template-columns:repeat(2,1fr)}.admin-main{padding:18px}.admin-top{align-items:flex-start;flex-direction:column}.dashboard-grid{grid-template-columns:repeat(2,1fr)}}

.hero{background-image:linear-gradient(90deg,rgba(3,35,26,.94),rgba(3,35,26,.68) 53%,rgba(3,35,26,.20)),url('../embedded/5018e37c982d.webp')!important;background-position:center 43%;}
.staff-tools{margin:0 0 18px}
.staff-search{width:100%;max-width:520px;padding:13px 16px;border:1px solid #d7e1dc;border-radius:12px;font:inherit;background:#fff;color:var(--ink);outline:none}
.staff-search:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(8,101,73,.10)}
.staff-table-wrap{overflow-x:auto;border:1px solid #e0e7e3;border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(7,49,36,.06)}
.staff-table{width:100%;border-collapse:collapse;min-width:620px}
.staff-table th{background:#064e3b;color:#fff;text-align:left;padding:13px 16px;font-size:14px}
.staff-table td{padding:13px 16px;border-bottom:1px solid #edf1ef;vertical-align:top}
.staff-table tr:last-child td{border-bottom:0}
.staff-table tbody tr:hover{background:#f7faf8}
.staff-table .sr{width:68px;color:var(--muted);font-weight:700}
.staff-table .staff-name{font-weight:800;color:#0b4c39}
.staff-table .staff-designation{color:#3e514a}
@media(max-width:700px){.hero{background-position:center}.staff-search{max-width:none}}



.admission-portals{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-bottom:28px}
.admission-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 12px 32px rgba(7,49,36,.06)}
.admission-card h3{font-family:Georgia,serif;color:var(--green-900);font-size:28px;margin:8px 0}
.admission-card p{color:var(--muted);margin:0 0 22px}
.admission-icon{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:var(--green-900);color:#fff;font-weight:900;font-size:19px;margin-bottom:18px}
.admission-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.mini-step{display:flex;gap:13px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px}
.mini-step>strong{color:var(--gold);font-size:22px}
.mini-step span{display:grid;gap:3px}.mini-step b{color:var(--green-900)}.mini-step small{color:var(--muted);line-height:1.45}
.faculty-feature{display:grid;grid-template-columns:1fr 310px;gap:50px;align-items:center}
.faculty-summary{background:var(--green-900);color:#fff;border-radius:24px;padding:34px;text-align:center;box-shadow:var(--shadow)}
.faculty-summary strong{font-family:Georgia,serif;color:#f1d680;font-size:58px;display:block;line-height:1}
.faculty-summary span{font-weight:900;display:block;margin-top:10px}.faculty-summary small{color:#bad3ca}
.principal-card-v7{grid-template-columns:1fr 390px}
.principal-card-v7 .principal-photo{order:2}
.public-modal-card{width:min(980px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:22px;padding:28px;box-shadow:0 35px 90px rgba(0,0,0,.4)}
.public-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}
.public-modal-head h2{font-family:Georgia,serif;color:var(--green-900);font-size:36px;margin:0}
.public-modal-x{border:0;background:var(--green-100);color:var(--green-900);width:42px;height:42px;border-radius:50%;font-size:25px;cursor:pointer}
.principal-full-message{white-space:pre-line;color:#344f46;font-size:17px;line-height:1.8}
.doc-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.footer-official-links{display:grid;gap:8px}
.footer-official-links a{color:#dbeee7}.footer-official-links a:hover{color:#f1d680}
@media(max-width:980px){.admission-steps{grid-template-columns:repeat(2,1fr)}.faculty-feature{grid-template-columns:1fr}.principal-card-v7{grid-template-columns:1fr 300px}}
@media(max-width:700px){.admission-portals,.admission-steps{grid-template-columns:1fr}.principal-card-v7{grid-template-columns:1fr}.principal-card-v7 .principal-photo{order:0}.public-modal-card{padding:20px}.public-modal-head h2{font-size:28px}}


.event-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.event-photo{margin:0;border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 10px 28px rgba(7,49,36,.06)}
.event-photo img{width:100%;height:280px;object-fit:cover;display:block}
@media(max-width:900px){.event-gallery{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.event-gallery{grid-template-columns:1fr}.event-photo img{height:auto}}

/* Official public website refinements */
.quick-card{position:relative;padding-right:42px}
.quick-card::after{content:"→";position:absolute;right:18px;color:var(--green-700);font-size:22px;font-weight:800}
.quick-card>span:not(.quick-icon){display:block}
.brand strong{font-size:18px;max-width:285px}
.admission-portals-v11{grid-template-columns:repeat(2,1fr)}
.admission-program-list{margin:16px 0 20px;padding-left:20px;color:#334d45}
.admission-program-list li{margin:7px 0}
.admission-meta{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--line);font-size:14px}
.admission-meta b{color:var(--green-900)}
.admission-meta span{color:var(--muted)}
.admission-card .btn{margin-top:18px}
.program-card{display:flex;flex-direction:column}
.program-card>p{min-height:54px}
.program-meta{margin-top:auto;border-top:1px solid var(--line);padding-top:12px;display:grid;gap:10px}
.program-meta>div{display:grid;grid-template-columns:82px 1fr;gap:10px;font-size:13px}
.program-meta b{color:var(--green-900)}
.program-meta span{color:var(--muted)}
.principal-logo-placeholder{height:100%;min-height:330px;border-radius:20px;background:linear-gradient(145deg,#f7fbf9,#eaf4ef);border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:var(--green-900);font-family:Georgia,serif;font-size:20px;font-weight:700}
.principal-logo-placeholder img{width:150px;height:150px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 8px #fff,0 12px 35px rgba(5,46,34,.12)}
@media(max-width:900px){.admission-portals-v11{grid-template-columns:1fr}.brand strong{max-width:230px}}

/* v12 final public refinements */
#open-admin{display:inline-flex!important}
#faculty .section-copy{display:none!important}
#faculty .staff-stat,
#faculty .faculty-stat,
#faculty .stat-card{display:none!important}
#principal .principal-logo-placeholder,
#principal #principal-photo{display:none!important}
#principal .principal-layout,
#principal .principal-grid{grid-template-columns:1fr!important}
.contact-extra{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}
.contact-extra h3{margin-top:0}

/* v13 permanent principal-section fix */
#principal #principal-photo,
#principal .principal-logo-placeholder,
#principal .principal-visual,
#principal .principal-photo-wrap,
#principal .principal-media,
#principal .principal-image{
  display:none!important;
}
#principal .principal-layout,
#principal .principal-grid,
#principal .principal-wrap{
  display:block!important;
  grid-template-columns:1fr!important;
}
#principal .principal-card{
  max-width:100%!important;
}
#principal .principal-content{
  width:100%!important;
  max-width:100%!important;
}

/* v14 RD-ready refinements */
.principal-card{
  display:block!important;
  grid-template-columns:1fr!important;
}
.principal-card .principal-copy{
  width:100%!important;
  max-width:100%!important;
  padding-right:0!important;
}
#principal-photo,
.principal-card .principal-photo,
.principal-logo-placeholder{
  display:none!important;
}
.official-contact-extra{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.16);
}
.official-contact-extra p{
  margin:8px 0;
}
.official-contact-extra a:not(.facebook-button){
  color:inherit;
  text-decoration:none;
}
.facebook-button{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:12px;
  padding:11px 16px;
  border-radius:10px;
  background:#1877f2;
  color:#fff!important;
  text-decoration:none;
  font-weight:700;
}
.facebook-icon{
  width:24px;
  height:24px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#1877f2;
  font-family:Arial,sans-serif;
  font-weight:900;
  font-size:18px;
  line-height:1;
}
.footer-official-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.14);
}
.footer-official-row a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#fff;
  text-decoration:none;
}
.footer-fb{
  width:21px;
  height:21px;
  font-size:15px;
}
@media(max-width:700px){
  .footer-official-row{align-items:flex-start;flex-direction:column}
}


/* v15 professional information architecture */
.academic-head-clean{align-items:end}
.academic-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.academic-group-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 10px 28px rgba(5,46,34,.06);display:flex;flex-direction:column;min-height:100%}
.academic-group-top{display:flex;gap:14px;align-items:center;margin-bottom:18px}
.academic-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#e9f5ef;color:var(--green-900);font-weight:900;font-family:Arial,sans-serif;font-size:14px}
.academic-group-card h3{margin:4px 0 0;font-size:24px;color:var(--green-900)}
.academic-program-list{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:8px}
.academic-program-list li{padding:10px 12px;border-radius:10px;background:#f6faf8;border:1px solid #e7f0eb;color:#26443a;font-weight:650}
.academic-program-list li::before{content:'•';color:#0b7a50;margin-right:9px}
.academic-summary{margin-top:auto;border-top:1px solid var(--line);padding-top:14px;display:grid;gap:11px}
.academic-summary>div{display:grid;grid-template-columns:78px 1fr;gap:10px;font-size:13px}.academic-summary b{color:var(--green-900)}.academic-summary span{color:var(--muted)}

.admission-route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.route-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;position:relative;box-shadow:0 10px 28px rgba(5,46,34,.06);display:flex;flex-direction:column}
.route-card.route-primary{border-top:4px solid var(--gold)}
.route-number{position:absolute;top:22px;right:22px;font-size:34px;font-weight:900;color:#d6e7df;font-family:Georgia,serif}
.route-card h3{font-size:26px;color:var(--green-900);margin:10px 0 12px}.route-card p{color:var(--muted);line-height:1.7;margin:0 0 18px}
.route-note{padding:13px 14px;background:#f3f8f5;border-radius:12px;color:#35564a;font-size:14px;margin-bottom:20px}.route-card .btn{margin-top:auto;align-self:flex-start}
.route-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}
.admission-process{margin-top:30px;padding:26px;border:1px solid var(--line);border-radius:22px;background:#fff}.process-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.process-title h3{margin:0;color:var(--green-900);font-size:24px}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.process-step{display:flex;gap:12px;align-items:flex-start;padding:15px;background:#f6faf8;border-radius:14px}.process-step>span{width:30px;height:30px;border-radius:50%;background:var(--green-800);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;flex:0 0 auto}.process-step strong{display:block;color:var(--green-900);margin-bottom:3px}.process-step small{color:var(--muted);line-height:1.45}

.contact-box-professional{padding:30px}.contact-intro{color:var(--muted);line-height:1.7;max-width:620px;margin:0 0 22px}.contact-details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.contact-item{padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}.contact-item-wide{grid-column:1/-1}.contact-label{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800;color:#5b756c;margin-bottom:6px}.contact-item a,.contact-item span:not(.contact-label){color:var(--green-900);text-decoration:none;font-weight:650;line-height:1.45}
.social-link-button{margin-top:18px;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:#eef5ff;border:1px solid #d9e7fb;text-decoration:none;color:#173b6d}.social-link-button .social-f{background:#1877f2;color:#fff}.social-link-button strong{display:block}.social-link-button small{display:block;color:#55708f;margin-top:2px}.social-arrow{margin-left:auto;font-size:20px}
.social-f{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#1877f2;color:#fff;font-family:Arial,sans-serif;font-weight:900;font-size:18px;flex:0 0 auto}
.grievance-card{padding:30px}.form-intro{color:var(--muted);margin-top:-6px;margin-bottom:20px}

.professional-footer{padding:54px 0 0;background:#052e22;color:#dcebe5}.footer-grid-pro{display:grid;grid-template-columns:1.45fr .8fr 1fr 1.25fr;gap:38px}.footer-col h3{color:#fff;margin:0 0 16px;font-size:17px}.footer-col p{color:#bdd2ca;line-height:1.65}.footer-brand{display:flex;gap:12px;align-items:center}.footer-brand img{width:62px;height:62px;border-radius:50%;background:#fff}.footer-brand strong{display:block;color:#fff;line-height:1.25}.footer-brand small{display:block;color:#9fc0b4;margin-top:4px}.footer-links{display:grid;gap:10px}.footer-links a,.footer-contact-list a,.footer-contact-list span{color:#dcebe5;text-decoration:none;line-height:1.45;font-size:14px}.footer-links a:hover,.footer-contact-list a:hover{color:#fff}.footer-contact-list{display:grid;gap:9px}.footer-facebook{margin-top:15px;display:inline-flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font-weight:700}.footer-bottom{margin-top:38px;padding:18px 0 22px;border-top:1px solid rgba(255,255,255,.13);display:flex;justify-content:space-between;gap:20px;align-items:center;color:#9fc0b4;font-size:13px}.footer-bottom a{color:#fff;text-decoration:none}

/* remove obsolete footer/contact fragments from older revisions */
.official-contact-extra,.footer-official-row{display:none!important}

@media(max-width:1050px){.academic-groups,.admission-route-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr}.footer-grid-pro{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.academic-groups,.admission-route-grid,.process-grid,.contact-details-grid,.footer-grid-pro{grid-template-columns:1fr}.process-title{display:block}.process-title .kicker{display:block;margin-bottom:6px}.footer-bottom{align-items:flex-start;flex-direction:column}.contact-item-wide{grid-column:auto}}

/* v16 professional institutional refinements */
.faculty-feature-clean{
  display:block!important;
  max-width:900px;
}
#staff{background:#fff}
#academics{background:#fff}
#admissions{
  background:linear-gradient(180deg,#f5faf7 0%,#eef6f2 100%);
}
#academics .academic-group-card{
  border-top:4px solid var(--green);
  box-shadow:0 10px 30px rgba(10,65,49,.06);
}
#admissions .route-card{
  border:1px solid #d7e8df;
  border-top:4px solid var(--gold);
  box-shadow:0 10px 28px rgba(10,65,49,.06);
}
#admissions .route-primary{border-top:4px solid var(--gold)}
.contact-mini-title{
  margin:22px 0 12px;
  padding-top:18px;
  border-top:1px solid var(--line);
  font-size:1rem;
  color:var(--green);
}
.contact-details-grid{gap:12px!important}
.contact-item{
  background:#f8fbf9;
  border:1px solid #e1ece6;
  border-radius:14px;
  padding:14px 16px;
}
.contact-item-wide{grid-column:1/-1}
.social-link-button{
  margin-top:18px!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
.professional-footer{padding-top:46px!important}
.footer-grid-pro{align-items:start!important;gap:36px!important}
.footer-col h3,.footer-col h4{
  position:relative;
  padding-bottom:12px;
  margin-bottom:16px!important;
}
.footer-col h3::after,.footer-col h4::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:42px;
  height:2px;
  background:var(--gold);
}
.footer-contact-list{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.footer-contact-list a,.footer-contact-list span{line-height:1.45}
.footer-address{
  color:rgba(255,255,255,.82);
  font-size:.94rem;
}
.footer-facebook{
  display:inline-flex!important;
  width:max-content;
  margin-top:12px;
  padding:8px 11px;
  border-radius:8px;
  background:rgba(255,255,255,.08);
}
.quick-card{
  border:1px solid #dbe8e1!important;
  box-shadow:0 6px 18px rgba(15,61,49,.04)!important;
}
.quick-card:hover{transform:translateY(-2px)}
@media(max-width:780px){
  .contact-details-grid{grid-template-columns:1fr!important}
  .contact-item-wide{grid-column:auto}
}

/* v17 contact + key information cleanup */
.contact-phone-line{
  display:block!important;
}
.contact-phone-values{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:6px;
  font-size:1.02rem;
}
.contact-phone-values a{
  color:var(--green);
  text-decoration:none;
  font-weight:700;
}
.phone-separator{
  opacity:.45;
}
.footer-phone-line{
  color:rgba(255,255,255,.92);
  line-height:1.5;
}
#contact .contact-details-grid{
  grid-template-columns:1fr 1fr!important;
}
#contact .contact-item-wide{
  grid-column:1/-1!important;
}
@media(max-width:780px){
  .contact-phone-values{
    gap:8px;
    font-size:.98rem;
  }
  .phone-separator{
    display:none;
  }
  .contact-phone-values span{
    width:100%;
  }
  #contact .contact-details-grid{
    grid-template-columns:1fr!important;
  }
}

/* Key Information */
.stats-three{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  max-width:1000px;
}
.stats-three .stat{
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.stats-three .stat strong{
  font-size:2.8rem;
}
@media(max-width:700px){
  .stats-three{
    grid-template-columns:1fr!important;
  }
}

/* v20 — Contact Google Map */
.contact-map-block{
  grid-column:1/-1;
  margin-top:2px;
  background:#fff;
  border:1px solid #dce9e2;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(10,65,49,.05);
}
.contact-map-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:15px 17px;
  border-bottom:1px solid #e5eee9;
  background:#f8fbf9;
}
.contact-map-heading h3{
  margin:0;
  color:var(--green);
  font-size:1.04rem;
}
.map-open-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 13px;
  border-radius:10px;
  background:var(--green);
  color:#fff!important;
  text-decoration:none;
  font-weight:700;
  font-size:.9rem;
  white-space:nowrap;
}
.college-map{
  display:block;
  width:100%;
  height:300px;
  border:0;
}
@media(max-width:700px){
  .contact-map-heading{
    flex-direction:column;
    align-items:flex-start;
  }
  .college-map{
    height:260px;
  }
}

/* v22 — Principal logo panel until approved photograph is available */
#principal .principal-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 330px!important;
  align-items:stretch;
  max-width:100%!important;
}
#principal .principal-copy{
  width:auto!important;
  max-width:none!important;
  padding:46px!important;
}
#principal .principal-brand-panel{
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:38px 28px;
  background:linear-gradient(155deg,var(--green-950),var(--green-700));
  color:#fff;
  min-height:100%;
}
#principal .principal-brand-logo{
  width:176px;
  height:176px;
  border-radius:50%;
  background:#fff;
  display:grid;
  place-items:center;
  padding:14px;
  box-shadow:0 10px 28px rgba(0,0,0,.16);
  margin-bottom:22px;
}
#principal .principal-brand-logo img{
  display:block!important;
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:50%;
}
#principal .principal-brand-office{
  font-family:Georgia,serif;
  font-size:1.45rem;
  font-weight:700;
  line-height:1.2;
  margin-bottom:16px;
  color:#fff;
}
#principal .principal-brand-name{
  font-weight:800;
  font-size:1rem;
  color:#f3d77d;
  margin-bottom:4px;
}
#principal .principal-brand-designation{
  color:rgba(255,255,255,.82);
  font-size:.92rem;
}
@media(max-width:900px){
  #principal .principal-card{
    grid-template-columns:1fr!important;
  }
  #principal .principal-brand-panel{
    min-height:300px;
  }
}
@media(max-width:700px){
  #principal .principal-copy{
    padding:28px!important;
  }
  #principal .principal-brand-logo{
    width:145px;
    height:145px;
  }
}

/* v23 — Principal photograph placeholder */
#principal .principal-brand-panel{
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:34px 28px!important;
  background:linear-gradient(155deg,var(--green-950),var(--green-700))!important;
  color:#fff;
}
#principal .principal-photo-placeholder{
  width:220px;
  min-height:285px;
  border-radius:18px;
  background:#f7faf8;
  border:2px dashed rgba(8,92,68,.35);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:24px 20px 18px;
  box-shadow:0 12px 30px rgba(0,0,0,.15);
  margin-bottom:22px;
  position:relative;
}
#principal .principal-silhouette{
  width:132px;
  height:150px;
  position:relative;
  margin-bottom:18px;
}
#principal .principal-silhouette-head{
  width:70px;
  height:70px;
  border-radius:50%;
  background:#cdd9d3;
  position:absolute;
  top:3px;
  left:31px;
}
#principal .principal-silhouette-body{
  width:132px;
  height:82px;
  border-radius:66px 66px 22px 22px;
  background:#cdd9d3;
  position:absolute;
  left:0;
  bottom:0;
}
#principal .principal-photo-label{
  color:var(--green-950);
  font-family:Georgia,serif;
  font-size:1.05rem;
  font-weight:700;
  line-height:1.25;
  margin-bottom:5px;
}
#principal .principal-photo-hint{
  color:#74867d;
  font-size:.82rem;
  line-height:1.35;
}
#principal .principal-brand-name{
  font-weight:800!important;
  font-size:1.03rem!important;
  color:#f3d77d!important;
  margin-bottom:4px!important;
}
#principal .principal-brand-designation{
  color:rgba(255,255,255,.84)!important;
  font-size:.92rem!important;
}
#principal .principal-brand-logo,
#principal .principal-brand-office{
  display:none!important;
}
@media(max-width:700px){
  #principal .principal-photo-placeholder{
    width:200px;
    min-height:260px;
  }
}


/* v8: department-wise faculty cards */
.faculty-intro-copy{margin:0 0 20px;max-width:620px}
.department-directory{display:grid;gap:34px;padding-bottom:4px}
.faculty-department-block{display:grid;gap:16px}
.faculty-department-heading{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e5ece8;padding-bottom:11px}
.faculty-department-heading .department-rule{width:5px;height:30px;border-radius:999px;background:var(--gold);flex:0 0 auto}
.faculty-department-heading h3{font-family:Georgia,serif;color:var(--green-900);font-size:25px;margin:0;flex:1}
.faculty-count{font-size:12px;font-weight:800;color:var(--green-700);background:var(--green-100);padding:6px 10px;border-radius:999px;white-space:nowrap}
.faculty-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:18px}
.faculty-person-card{background:#fff;border:1px solid #dfe8e3;border-radius:18px;overflow:hidden;box-shadow:0 10px 26px rgba(7,49,36,.07);transition:transform .18s ease,box-shadow .18s ease}
.faculty-person-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(7,49,36,.12)}
.faculty-photo-wrap{height:235px;background:#eef5f1;overflow:hidden}
.faculty-person-photo{width:100%;height:100%;object-fit:cover;display:block}
.faculty-person-info{padding:16px 17px 18px;text-align:center}
.faculty-person-info h4{margin:0 0 5px;color:var(--green-900);font-size:17px;line-height:1.3}
.faculty-person-info p{margin:0;color:#536b62;font-size:14px;font-weight:700}
#faculty-modal .public-modal-card{width:min(1120px,100%)}
#faculty-modal .staff-tools{position:sticky;top:-28px;z-index:4;background:#fff;padding:2px 0 16px;margin-bottom:6px}
.campus-facility-feature{margin-top:26px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(7,49,36,.06)}
.campus-facility-feature img{width:100%;height:300px;object-fit:cover;display:block}
.campus-facility-copy{padding:30px;display:flex;flex-direction:column;justify-content:center}
.campus-facility-copy h3{font-family:Georgia,serif;color:var(--green-900);font-size:28px;margin:8px 0 10px}
.campus-facility-copy p{color:var(--muted);margin:0;line-height:1.65}
@media(max-width:760px){.faculty-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.faculty-photo-wrap{height:205px}.faculty-department-heading h3{font-size:21px}.campus-facility-feature{grid-template-columns:1fr}.campus-facility-feature img{height:230px}}
@media(max-width:470px){.faculty-card-grid{grid-template-columns:1fr}.faculty-photo-wrap{height:270px}.faculty-count{display:none}}

/* v9: leadership and complete staff directory */
.leadership-section{background:#fff}
.leadership-head{margin-bottom:28px}
.leadership-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.leadership-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(7,49,36,.07)}
.leadership-photo{height:290px;background:#edf4f0;overflow:hidden}
.leadership-photo img{width:100%;height:100%;object-fit:cover;display:block;object-position:center 18%}
.leadership-copy{padding:19px 18px 22px}
.leadership-copy h3{font-family:Georgia,serif;color:var(--green-900);font-size:20px;line-height:1.25;margin:0 0 7px}
.leadership-copy p{margin:0;color:#536b62;line-height:1.5;font-size:14px}
.support-directory{margin-top:38px;padding-top:26px;border-top:1px solid #dfe8e3}
.support-directory .faculty-department-heading{margin-bottom:16px}
.support-note{color:var(--muted);font-size:13px;margin:0 0 16px}
@media(max-width:1000px){.leadership-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.leadership-grid{grid-template-columns:1fr}.leadership-photo{height:330px}}

/* v10 — refined faculty portraits and placeholders */
.faculty-card-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:20px}
.faculty-person-card{padding:23px 18px 20px;overflow:visible;min-height:225px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:linear-gradient(180deg,#fff 0%,#fbfdfc 100%)}
.faculty-person-card:hover{transform:translateY(-3px)}
.faculty-photo-wrap{width:126px;height:126px;min-width:126px;border-radius:50%;margin:0 auto 15px;background:#f3f7f5;border:4px solid #edf4f0;box-shadow:0 0 0 1px #bfd0c8,0 8px 22px rgba(7,49,36,.10);overflow:hidden}
.faculty-person-photo{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
.faculty-person-info{padding:0;text-align:center;width:100%}
.faculty-person-info h4{font-family:Georgia,serif;font-size:17px;margin:0 0 6px;color:var(--green-900)}
.faculty-person-info p{font-size:13.5px;line-height:1.4;color:#4d675d;font-weight:700}
.support-directory .faculty-person-card{min-height:225px}
@media(max-width:760px){.faculty-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.faculty-person-card{padding:20px 12px 18px}.faculty-photo-wrap{width:112px;height:112px;min-width:112px}}
@media(max-width:470px){.faculty-card-grid{grid-template-columns:1fr}.faculty-photo-wrap{width:126px;height:126px;min-width:126px}}


/* v12 — polished principal, legacy and campus visuals */
#principal{background:linear-gradient(180deg,#f4f8f6 0%,#eef5f1 100%)}
#principal .principal-card-v7{border:1px solid #dce9e2;box-shadow:0 18px 46px rgba(8,60,44,.11);border-radius:26px!important;overflow:hidden}
#principal .principal-copy{padding:54px 56px!important;background:#fff;position:relative}
#principal .principal-copy:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(var(--gold),#c59b31)}
#principal .quote-mark{color:#c8a449;font-size:84px;margin-top:8px}
#principal .principal-copy blockquote{font-size:22px;line-height:1.72;margin:8px 0 22px;color:#29483d;max-width:820px}
#principal .principal-byline{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 24px}
#principal .principal-byline strong{font-family:Georgia,serif;color:var(--green-900);font-size:18px}
#principal .principal-byline span{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:var(--green-100);color:var(--green-700);font-size:12px;font-weight:800}
#principal .principal-brand-panel{background:linear-gradient(155deg,#073b2c 0%,#0d5a43 58%,#147356 100%)!important;padding:38px 30px!important;position:relative;overflow:hidden}
#principal .principal-brand-panel:before,#principal .principal-brand-panel:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.10);border-radius:50%}
#principal .principal-brand-panel:before{width:330px;height:330px;right:-160px;top:-120px}
#principal .principal-brand-panel:after{width:250px;height:250px;left:-130px;bottom:-110px}
#principal .principal-office-label{font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#e8d48f;margin-bottom:16px;position:relative;z-index:1}
#principal .principal-photo-placeholder{width:250px!important;min-height:0!important;aspect-ratio:1/1!important;padding:0!important;border-radius:50%!important;border:6px solid rgba(255,255,255,.95)!important;background:#eef4ef!important;overflow:hidden;box-shadow:0 13px 34px rgba(0,0,0,.22)!important;margin-bottom:20px!important;position:relative;z-index:1}
#principal .principal-photo-placeholder img{width:100%;height:100%;object-fit:cover;display:block}
#principal .principal-photo-status{position:relative;z-index:1;margin-top:8px;font-size:11px;color:rgba(255,255,255,.68)}
#principal .principal-brand-name{font-family:Georgia,serif;font-size:1.16rem!important;color:#fff!important;margin:0 0 5px!important;position:relative;z-index:1}
#principal .principal-brand-designation{color:#e9d78f!important;font-weight:700;position:relative;z-index:1}
.legacy-strip{padding:34px 0 44px;background:#fff}
.legacy-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:20px}
.legacy-head h2{font-family:Georgia,serif;color:var(--green-900);margin:4px 0 0;font-size:30px}
.legacy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.legacy-item{border:1px solid var(--line);background:#f8fbf9;border-radius:17px;padding:20px 20px 18px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}
.legacy-year{font-family:Georgia,serif;font-size:25px;color:var(--green-800);font-weight:700;line-height:1}
.legacy-item strong{display:block;color:var(--green-900);margin-bottom:5px}
.legacy-item p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.campus-visual-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:15px;margin:4px 0 26px}
.campus-visual{position:relative;min-height:230px;border-radius:18px;overflow:hidden;background:#dbe7e1;box-shadow:0 8px 22px rgba(7,49,36,.08)}
.campus-visual img{width:100%;height:100%;min-height:230px;object-fit:cover;display:block}
.campus-visual:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(4,30,22,.75))}
.campus-visual span{position:absolute;left:18px;bottom:15px;z-index:2;color:#fff;font-weight:800;font-size:14px}
#facilities .cards{grid-template-columns:repeat(4,1fr)}
#facilities .card{padding:21px;min-height:175px}
@media(max-width:1000px){.legacy-grid{grid-template-columns:repeat(2,1fr)}.campus-visual-grid{grid-template-columns:1fr 1fr}.campus-visual:first-child{grid-column:1/-1}#facilities .cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.legacy-grid{grid-template-columns:1fr}#principal .principal-copy{padding:34px 30px!important}.campus-visual-grid{grid-template-columns:1fr}.campus-visual:first-child{grid-column:auto}.campus-visual{min-height:210px}.legacy-head{align-items:flex-start;flex-direction:column}#facilities .cards{grid-template-columns:1fr}}


/* v13 — Facebook icon + integrated library staff */
.fb-circle-icon{width:24px;height:24px;border-radius:50%;background:#1877f2;color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;font-family:Arial,sans-serif;font-weight:800;font-size:18px;line-height:1}
.fb-circle-icon svg{width:14px;height:14px;display:block;fill:currentColor}
.footer-facebook{display:inline-flex!important;align-items:center;gap:9px}

/* v19 — faculty directory principal lead card */
.faculty-principal-section{margin:0 0 34px;padding:0 0 28px;border-bottom:1px solid var(--line)}
.faculty-principal-card{max-width:310px;border:1px solid #d7e8df;border-top:4px solid var(--gold);border-radius:20px;background:#fff;padding:24px;text-align:center;box-shadow:0 10px 28px rgba(5,46,34,.07)}
.faculty-principal-card .faculty-photo-wrap{margin:0 auto 14px}
.faculty-principal-card .principal-role{display:inline-block;margin-top:5px;padding:5px 10px;border-radius:999px;background:#edf7f2;color:var(--green-800);font-size:12px;font-weight:800}
.faculty-principal-card .principal-dept{margin-top:7px;color:var(--muted);font-size:13px}


/* v22: force the approved Arts Block image in the hero; keep the right side clear */
#home.hero{background-image:linear-gradient(90deg,rgba(3,35,26,.90) 0%,rgba(3,35,26,.80) 34%,rgba(3,35,26,.46) 50%,rgba(3,35,26,.10) 68%,rgba(3,35,26,.03) 100%),url('../embedded/73ed4701eab8.webp')!important;background-position:center 43%!important;background-size:cover!important;background-repeat:no-repeat!important;}

/* v23 principal / academics refinements */
#principal .principal-copy>.kicker{font-size:16px!important;letter-spacing:.12em!important}
#principal .principal-office-label,#principal .principal-photo-status{display:none!important}
#principal .principal-photo-placeholder.no-photo{display:none!important}
#principal .principal-brand-panel{justify-content:center!important;gap:10px!important}
#principal .principal-brand-academic{font-size:14px;font-weight:700;color:#dcebe5;margin-top:2px}
#principal .principal-brand-designation{margin-top:2px}
.academic-group-card,.route-card{border-top:4px solid var(--gold)!important}


/* v31 — faculty crop + principal photo display fixes */
#principal .principal-photo-placeholder:not(.no-photo){
  display:block!important;
  width:250px!important;
  height:250px!important;
  min-height:250px!important;
  aspect-ratio:1/1!important;
  padding:0!important;
  border-radius:50%!important;
  overflow:hidden!important;
}
#principal #principal-photo{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 10%!important;
  border-radius:50%!important;
}
.faculty-photo-wrap .faculty-person-photo{
  object-fit:cover!important;
}



/* v32 utility bar + qualification */
.v32-topbar{min-height:44px!important;display:flex!important;justify-content:space-between!important;align-items:center!important;gap:18px!important}
.top-official{font-weight:700;letter-spacing:.01em;color:#e7f2ed;white-space:nowrap}
.top-contact-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.top-contact-actions>a:not(.top-fb-btn){color:#dceee7;text-decoration:none}
.top-contact-actions>a:not(.top-fb-btn):hover{text-decoration:underline}
.top-sep{opacity:.55}
.top-fb-btn{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;background:#1877f2;color:#fff!important;text-decoration:none!important;padding:0;border-radius:50%;font-weight:800;line-height:1;flex:0 0 30px}
.top-fb-btn svg{width:16px;height:16px;fill:#fff;display:block}
.faculty-qualification{margin-top:5px!important;color:#71857e!important;font-size:12.5px!important;font-weight:600!important;line-height:1.35!important}
@media(max-width:820px){.v32-topbar{flex-direction:column;align-items:center!important;padding:8px 0}.top-official{text-align:center;white-space:normal}.top-contact-actions{justify-content:center}.top-sep{display:none}}



/* v34: slightly larger college logo + compact Facebook icon */
.site-header .brand img{
  width:66px!important;
  height:66px!important;
}
.top-fb-btn{
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  padding:0!important;
  margin:0!important;
  border-radius:50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  background:#1877f2!important;
  color:#fff!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.top-fb-btn .top-fb-letter{
  display:block!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:18px!important;
  font-weight:700!important;
  line-height:26px!important;
  color:#fff!important;
  transform:translateY(1px);
}
.top-fb-btn svg,
.top-fb-btn > span:not(.top-fb-letter){display:none!important}
@media(max-width:820px){
  .site-header .brand img{width:62px!important;height:62px!important}
}



/* v34 header polish: larger logo + compact contact icons */
.brand img{
  width:66px!important;
  height:66px!important;
}
.header-inner{
  min-height:90px!important;
}
.top-contact-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  color:#dceee7!important;
  text-decoration:none!important;
  white-space:nowrap;
}
.top-contact-link:hover{
  color:#fff!important;
  text-decoration:none!important;
}
.top-contact-icon{
  width:22px;
  height:22px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 22px;
  border:1px solid rgba(255,255,255,.34);
  background:rgba(255,255,255,.08);
}
.top-contact-icon svg{
  width:13px;
  height:13px;
  display:block;
  fill:#fff;
}
.top-fb-icon-only{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  padding:0!important;
  border-radius:50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  line-height:1!important;
}
.top-fb-icon-only svg{
  width:13px!important;
  height:13px!important;
  display:block!important;
  fill:#fff!important;
}
@media(max-width:820px){
  .brand img{width:62px!important;height:62px!important}
  .header-inner{min-height:86px!important}
  .top-contact-actions{gap:8px!important}
}



/* v35 permanent header fix */
.brand img{
  width:66px!important;
  height:66px!important;
}
.header-inner{min-height:90px!important}
.top-contact-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:14px!important;
}
.top-contact-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  color:#dceee7!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.top-contact-link:hover{color:#fff!important;text-decoration:none!important}
.top-contact-icon{
  width:21px!important;
  height:21px!important;
  border-radius:50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 21px!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.28)!important;
}
.top-contact-icon svg{width:12px!important;height:12px!important;display:block!important;fill:#fff!important}
.top-fb-icon-only{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  padding:0!important;
  border-radius:50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
}
.top-fb-icon-only svg{width:12px!important;height:12px!important;display:block!important;fill:#fff!important}
.top-fb-icon-only span{display:none!important}
.top-sep{display:none!important}
@media(max-width:820px){
  .brand img{width:62px!important;height:62px!important}
  .header-inner{min-height:86px!important}
  .top-contact-actions{gap:9px!important}
}



/* v35 colored top contact icons - fixed */
#top-email .top-contact-icon{
  background:#1877f2 !important;
  border-color:#1877f2 !important;
  color:#fff !important;
}

#top-phone .top-contact-icon{
  background:#16a34a !important;
  border-color:#16a34a !important;
  color:#fff !important;
}

#top-email .top-contact-icon svg,
#top-phone .top-contact-icon svg{
  fill:#fff !important;
}

.top-contact-icon{
  box-shadow:0 1px 4px rgba(0,0,0,.18);
}



/* FINAL MOBILE RESPONSIVE FIX */
@media (max-width:820px){
  .principal-card-v7{grid-template-columns:1fr!important;}
  #principal .principal-copy{padding:30px 22px!important;}
  #principal .principal-brand-panel{padding:28px 20px!important;}
  #principal .principal-photo-placeholder{width:170px!important;}

  .modal{padding:8px!important;align-items:flex-start!important;}
  .public-modal-card,
  #faculty-modal .public-modal-card{
    width:calc(100vw - 16px)!important;
    max-width:none!important;
    max-height:94dvh!important;
    border-radius:16px!important;
    padding:18px 14px!important;
    overflow-x:hidden!important;
  }
  .public-modal-head{gap:10px!important;margin-bottom:14px!important;}
  .public-modal-head h2{font-size:30px!important;line-height:1.1!important;}
  #faculty-modal .staff-tools{top:-18px!important;padding:2px 0 12px!important;}
  .staff-search{width:100%!important;max-width:100%!important;}

  .faculty-card-grid{grid-template-columns:1fr!important;gap:14px!important;}
  .faculty-person-card{width:100%!important;max-width:100%!important;padding:20px 14px 18px!important;}
  .faculty-photo-wrap{width:126px!important;height:126px!important;min-width:126px!important;}
  .faculty-department-heading{flex-wrap:wrap!important;align-items:center!important;gap:9px!important;}
  .faculty-department-heading h3{font-size:24px!important;line-height:1.18!important;min-width:0!important;overflow-wrap:anywhere!important;}
  .faculty-count{margin-left:auto!important;}
  .faculty-principal-card{max-width:100%!important;width:100%!important;}
}
@media (max-width:480px){
  .public-modal-head h2{font-size:27px!important;}
  .faculty-department-heading h3{font-size:22px!important;}
  .faculty-count{display:none!important;}
  #principal .principal-copy{padding:26px 18px!important;}
}
/* Scrolling latest notice */
.ticker-wrap{
    overflow:hidden;
    width:100%;
}

.notice-title{
    display:inline-block;
    white-space:nowrap;
    padding-left:100%;
    animation:noticeTicker 18s linear infinite;
}

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

@keyframes noticeTicker{
  from{transform:translateX(0%);}
  to{transform:translateX(-100%);}
}

/* v36: optimized admin-controlled leadership, HOD and non-teaching staff */
.faculty-person-card.is-hod{border-top:3px solid var(--green-700)!important;background:#fff!important}
.faculty-hod-label{margin-top:8px;color:var(--green-700);font-size:12.5px;font-weight:800;line-height:1.3}
.non-teaching-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.non-teaching-table th,.non-teaching-table td{padding:13px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.non-teaching-table th{background:#f4f8f6;color:var(--green-900);font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.non-teaching-table tr:last-child td{border-bottom:0}
.non-teaching-name{font-weight:800;color:var(--green-900)}
.non-teaching-bps{white-space:nowrap;color:var(--green-700);font-weight:800}
.order-help{font-size:11px;color:var(--muted)}
@media(max-width:700px){
  #principal .principal-brand-panel{order:-1!important}
  .non-teaching-table,.non-teaching-table tbody,.non-teaching-table tr,.non-teaching-table td{display:block;width:100%}
  .non-teaching-table thead{display:none}
  .non-teaching-table tr{padding:12px 14px;border-bottom:1px solid var(--line)}
  .non-teaching-table tr:last-child{border-bottom:0}
  .non-teaching-table td{padding:3px 0;border:0}
}

/* Multi-page test: show only the sections assigned to each dedicated page. */
html body.page-about #public-view > main > #about,
html body.page-about #public-view > main > .legacy-strip,
html body.page-about #public-view > main > #leadership,
html body.page-about #public-view > main > #principal,
html body.page-academics #public-view > main > #academics,
html body.page-academics #public-view > main > .section.dark,
html body.page-admissions #public-view > main > #admissions,
html body.page-notices #public-view > main > #notices,
html body.page-notices #public-view > main > #downloads,
html body.page-gallery #public-view > main > #recent-events,
html body.page-gallery #public-view > main > #gallery,
html body.page-facilities #public-view > main > #facilities,
html body.page-contact #public-view > main > #contact,
html body.page-faculty #public-view > main > #faculty-inline-host {
  display: block !important;
}
