:root{--ink:#10262B;--teal:#0F766E;--gold:#F5B02E;--bg:#F6F8F7;--mut:#5c6f72}
body{font-family:'Nunito Sans',sans-serif;color:var(--ink);background:var(--bg)}
h1,h2,h3,h4,.brand{font-family:'Sora',sans-serif;letter-spacing:-.02em}
section{padding:72px 0}.sec-h{max-width:640px;margin-bottom:36px}
.nav-x{background:var(--ink)}.nav-x a{color:#dfeceb}.brand{color:#fff!important;font-weight:700}.brand i{color:var(--gold)}
.btn-gold{background:var(--gold);color:var(--ink);font-weight:700;border:0}.btn-gold:hover{background:#ffc75a}
.hero{min-height:88vh;display:flex;align-items:center;color:#fff;background:linear-gradient(105deg,rgba(16,38,43,.94) 35%,rgba(16,38,43,.55)),url(https://images.unsplash.com/photo-1522202176988-66273c2fd55f?auto=format&fit=crop&w=1600&q=70) center/cover}
.hero h1{font-size:clamp(2.2rem,5.5vw,4rem);font-weight:700}
.sbox{background:#fff;border-radius:14px;padding:8px;display:flex;gap:8px;max-width:620px}.sbox input{border:0;flex:1;padding:10px 14px;outline:0;min-width:0}
.float{animation:fl 4s ease-in-out infinite;background:var(--gold);color:var(--ink);border-radius:14px;padding:14px 18px;font-weight:700;display:inline-block}
@keyframes fl{50%{transform:translateY(-12px)}}
.stat b{font-family:Sora;font-size:2.6rem;color:var(--gold)}.stats{background:var(--teal);color:#fff}
.cat{background:#fff;border-radius:14px;padding:22px;height:100%;border:1px solid #dbe6e4;transition:.25s;color:inherit;display:block;text-decoration:none}
.cat:hover,.ic:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(15,118,110,.18)}.cat i{font-size:2rem;color:var(--teal)}
.ic{border:1px solid #dbe6e4;border-radius:14px;overflow:hidden;transition:.25s}.ic img{height:190px;object-fit:cover;width:100%}
.badge{background:#dff3f0;color:var(--teal);font-weight:700}
.area{position:relative;border-radius:14px;overflow:hidden;display:block;color:#fff;text-decoration:none;height:210px}
.area img{width:100%;height:100%;object-fit:cover;transition:.5s}.area:hover img{transform:scale(1.08)}
.area div{position:absolute;inset:auto 0 0;padding:16px;background:linear-gradient(transparent,rgba(16,38,43,.92))}
.mq{overflow:hidden;background:var(--ink);color:#fff;padding:14px 0;white-space:nowrap}.mq span{display:inline-block;animation:mq 25s linear infinite;padding-left:100%}
@keyframes mq{to{transform:translateX(-100%)}}
.cta{background:linear-gradient(rgba(15,118,110,.9),rgba(16,38,43,.92)),url(https://images.unsplash.com/photo-1522071820081-009f0129c71c?auto=format&fit=crop&w=1600&q=70) center/cover;color:#fff}
.gal img{width:100%;height:220px;object-fit:cover;border-radius:14px}
.pg{background:var(--ink);color:#fff;padding:56px 0}
footer{background:var(--ink);color:#b9cccb;padding:48px 0 20px}footer a{color:#b9cccb;text-decoration:none}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
#pb{position:fixed;top:0;left:0;height:3px;width:0;background:var(--gold);z-index:2000}
.rv{opacity:0;transform:translateY(40px) scale(.98);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.nav-x{transition:padding .3s,box-shadow .3s}.nav-x.sm{box-shadow:0 6px 20px rgba(0,0,0,.3)}.nav-x.sm .navbar-brand{font-size:1rem}
/* navbar active state */
.nav-x .nav-link{border-radius:999px;padding:.4rem 1rem;transition:background .2s,color .2s}
.nav-x .nav-link:hover{background:rgba(255,255,255,.12);color:#fff}
.nav-x .nav-link.active{background:var(--gold);color:var(--ink);font-weight:700}
/* institute pages */
.ihero{color:#fff;padding:56px 0;background:linear-gradient(100deg,rgba(16,38,43,.95) 40%,rgba(16,38,43,.6)),var(--bg) center/cover}
.ihero h1{font-size:clamp(1.8rem,4vw,3rem);font-weight:700}
.breadcrumb a{color:#cfe3e1}.breadcrumb-item.active,.breadcrumb-item+.breadcrumb-item::before{color:#9fbab8}
.fact{background:rgba(255,255,255,.12);border-radius:12px;padding:10px 16px}
.cc{background:#fff;border:1px solid #dbe6e4;border-radius:14px;padding:18px;margin-bottom:14px}
.chip{display:inline-block;background:#dff3f0;color:var(--teal);border-radius:999px;padding:3px 12px;font-size:.85rem;margin:2px 4px 2px 0;text-decoration:none}
a.chip:hover{background:var(--teal);color:#fff}
.callbar{position:fixed;left:12px;right:12px;bottom:12px;z-index:1500;box-shadow:0 8px 24px rgba(0,0,0,.3)}
@media(min-width:992px){.callbar{display:none}}
