/* ==========================================================================
   RIT CHENNAI — HOMEPAGE UI/UX PROTOTYPE
   Design tokens (navy + orange + gold, pulled from RIT's own accreditation/
   brand artwork) and the shared header styles live in header.css, imported
   here so every page on this stylesheet gets them. Template pages that run
   on bootstrap.min.css + main.css link header.css directly instead.
   ========================================================================== */
@import url("header.css");

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--ff-body);
  color:var(--ink-900);
  background:var(--paper-0);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
      -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;margin:0;padding:0;}
h1,h2,h3,h4{font-family:var(--ff-head);margin:0 0 .5em;line-height:1.2;color:var(--navy-900);}
p{margin:0 0 1em;color:var(--ink-700);}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
section{padding:6rem 0;}
.section-tight{padding:6rem 0;}
@media(max-width:768px){section{padding:48px 0;}}

.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--ff-head);font-weight:600;font-size:12.5px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--orange-600);
  background:rgba(244,113,30,.1);border-radius:999px;padding:6px 14px;margin-bottom:14px;
}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--orange-500);}
.section-head{max-width:720px;margin-bottom:40px;}
.section-head h2{font-size:clamp(26px,3.2vw,38px);font-weight:700;}
.section-head p{font-size:16.5px;}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center;}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--ff-head);font-weight:600;font-size:15px;
  padding:14px 26px;border-radius:10px;border:none;cursor:pointer;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
  white-space:nowrap;
}
.btn:hover{transform:translateY(-2px);}
.btn-primary{background: linear-gradient(110deg,#ff520f,#ec7f55 50%, #ff520f);color:#fff;box-shadow:0 10px 24px rgba(244,113,30,.35);padding: 8px 15px;
  border-radius: 20px;
  font-size: 13px;}
.btn-secondary{background: var(--navy-900);color:#fff;  box-shadow: 0 10px 24px rgba(15, 68, 117, 0.48);}
.btn-primary:hover{background:var(--orange-600);}
.btn-outline{background:transparent;color:var(--navy-900);border:1.5px solid var(--line-200);}
.btn-outline:hover{border-color:var(--navy-800);}
.btn-ghost-light{   background: linear-gradient(110deg,#ff520f,#ec7f55 50%, #ff520f);
  color: #fff;
  border: 1.5px solid rgba(255,255,255,.4);
  backdrop-filter: blur(4px);
  border-radius: 50px;
  padding: 12px 45px;}
.btn-ghost-light:hover{background:rgba(255,255,255,.22);}
.btn-sm{padding:10px 18px;font-size:13.5px;}
.btn svg{width:16px;height:16px;}

/* ---------- Top utility bar ---------- */
.topbar{background:var(--navy-900);color:#cbd5f5;font-size:12.5px;}
.topbar .container{display:flex;align-items:center;justify-content:space-between;padding-top:8px;padding-bottom:8px;}
.topbar-links{display:flex;gap:20px;}
.topbar-links a{opacity:.85;}
.topbar-links a:hover{opacity:1;color:#fff;}
.topbar .contact{display:flex;gap:20px;}
@media(max-width:768px){.topbar{display:none;}}

/* ---------- Header / nav: see header.css (imported above) ---------- */

/* ---------- Hero / banner slider ---------- */
.hero{position:relative;overflow:hidden;background:var(--navy-900);color:#fff;isolation:isolate;}
.hero-slides{position:relative;min-height:720px;}
.hero-slide{
  position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .6s ease;
  display:flex;align-items:center;
  background-size:cover;background-position:center;padding:72px 0px;min-height: 750px;
}
.hero-slide.is-active{opacity:1;visibility:visible;position:relative;}
@media(max-width:640px){
  .hero-slide[data-slide="0"]{background-image:url('../images/mobile-hero-bnr1.webp') !important;}
}
.hero-slide::after{content:"";position:absolute;inset:0;

}
.hero-slide.tone-placement{background:radial-gradient(circle at 80% 30%,#2a5aa8 0%,var(--navy-900) 60%);}
.hero-slide.tone-credit{background:radial-gradient(circle at 78% 20%,#2c3d8f 0%,var(--navy-900) 60%);}
.hero-content{position:relative;z-index:2;text-align:left;width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px;}
.hero-badge{
  display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.35);color:var(--gold-500);font-weight:600;font-size:12.5px;
  letter-spacing:.06em;text-transform:uppercase;padding:7px 14px;border-radius:999px;margin-bottom:18px;
}
.hero-content h2{color:#fff;font-size:clamp(28px,4vw,46px);font-weight:800;line-height:1.12;margin-bottom:14px;}
.hero-content h2 em{color:var(--orange-400);font-style:normal;}
.hero-content p{color:rgba(255,255,255,.82);font-size:16.5px;max-width:520px;}
.hero-actions{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap;}

.hero-controls{position:absolute;bottom:20px;left:0;right:0;z-index:3;display:flex;align-items:center;justify-content:center;gap:14px;}
.hero-dots{display:flex;gap:8px;}
.hero-dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.4);border:none;cursor:pointer;padding:0;transition:.2s;}
.hero-dot.is-active{background:var(--orange-500);width:26px;border-radius:6px;}
.hero-arrow{
  position:absolute;top:50%;translate:0 -50%;z-index:4;width:44px;height:44px;border-radius:50%;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);color:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
}
.hero-arrow:hover{background:rgba(255,255,255,.28);}
.hero-arrow.prev{left:20px;} .hero-arrow.next{right:20px;}
@media(max-width:640px){.hero-arrow{display:none;} .hero-slides{min-height:640px;}}

/* ---------- H1 intro strip (below hero, crawlable core copy) ---------- */
.intro{position:relative;overflow:hidden;}
.intro::before{content:"";position:absolute;top:-90px;right:-110px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(244,113,30,.09),transparent 70%);pointer-events:none;}
.intro::after{content:"";position:absolute;bottom:-120px;left:-90px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(27,74,132,.07),transparent 70%);pointer-events:none;}
.intro .container{position:relative;z-index:1;}
.intro-grid{display:flex;flex-direction:column;gap:36px;}
.intro-top{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;}
.intro-copy{max-width:640px;}
.intro-visual{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);background:linear-gradient(135deg,var(--navy-800),var(--blue-500));}
.intro-visual img{width:100%;height:100%;min-height:280px;max-height:380px;object-fit:cover;display:block;}
@media(max-width:900px){.intro-top{grid-template-columns:1fr;}.intro-visual{order:-1;}}
.intro h1{font-size:clamp(24px,3vw,34px);font-weight:800;}
.intro p{font-size:16.5px;color:var(--ink-700);}
.intro-ctas{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap;}

.intro-badges{display:flex;gap:12px;margin:22px 0 4px;}
.mini-badge{
  flex:0 1 200px;min-width:0;display:flex;flex-direction:column;gap:10px;
  border-radius: 12px;
  padding: 22px 10px;
  background:linear-gradient(90deg, rgba(15, 68, 117, 1) 0%, rgba(15, 68, 117, 1) 50%, rgba(16, 68, 117, 1) 100%);
  border:1px solid var(--line-200); box-shadow:var(--shadow-sm);position:relative;overflow:hidden;
  transition:transform .2s ease,box-shadow .2s ease;
}
.mini-badge::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--orange-500),var(--gold-500));transform:scaleX(0);transform-origin:left;transition:transform .25s ease;}
.mini-badge:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.mini-badge:hover::before{transform:scaleX(1);}
.mini-badge .num{font-family:var(--ff-head);font-weight:800;font-size:30px;color:#fff;line-height:1;text-align:center;}
.mini-badge-row{display:flex;align-items:center;gap:10px;}
.mini-badge .ic{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;flex:none;}
.mini-badge:nth-child(1) .ic{  background: rgba(244,113,30,.1);color:var(--orange-500);}
.mini-badge:nth-child(2) .ic{  background: rgba(244,113,30,.1);color:var(--orange-500);}
.mini-badge:nth-child(3) .ic{  background: rgba(244,113,30,.1);color:var(--orange-500);}
.mini-badge .lbl{font-size:16px;color:#fff;line-height:1.25;}
@media(max-width:560px){.intro-badges{flex-wrap:wrap;}.mini-badge{flex:1 1 31%;}
}

/* ---------- Stat strip ---------- */
.stat-strip{
  border-radius:var(--radius-lg);padding:36px 28px;
  display:grid;grid-template-columns:repeat(5,1fr);gap:20px;color:#fff;
}
.stat-strip .stat{text-align:center;   border: 1px solid var(--line-200); padding: 20px; border-radius: 20%; border-radius: var(--radius-sm);}
.stat-strip .stat .n{font-family:var(--ff-head);font-weight:800;font-size:clamp(22px,2.4vw,32px);color:var(--orange-400);}
.stat-strip .stat .l{font-size:16px;letter-spacing:.03em;text-transform:uppercase;color:rgba(255,255,255,.75);margin-top:4px;font-weight: 600;}
@media(max-width:900px){.stat-strip{grid-template-columns:repeat(3,1fr);}}
@media(max-width:640px){.stat-strip{grid-template-columns:repeat(3,1fr);padding:20px 16px;gap:12px;}.stat-strip .stat .n{font-size:clamp(18px,2vw,24px);}.stat-strip .stat .l{font-size:11px;}}

.logo-strip-wrap{margin-top:36px;}
.logo-strip-label{text-align:center;font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-500);margin-bottom:16px;}
.logo-strip-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;}
.logo-strip-card{background:#fff;border:1px solid var(--line-200);border-radius:var(--radius-md);padding:12px;display:grid;place-items:center;min-height:110px;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.logo-strip-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--orange-400);}
.logo-strip-card img{max-width:100%;max-height:58px;object-fit:contain;}

.research-partners-strip{
  width:100%;box-sizing:border-box;
}
.research-partners-slider{overflow:hidden;position:relative;width:100%;padding:6px 0;}
.research-partners-track{display:flex;align-items:center;gap:12px;width:max-content;animation:research-partners-scroll 28s linear infinite;}
.research-partners-slider:hover .research-partners-track{animation-play-state:paused;}
.research-partners-track .logo-strip-card{flex:0 0 auto;width:250px;}
@keyframes research-partners-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media(max-width:640px){.research-partners-track{gap:8px;}.research-partners-track .logo-strip-card{width:140px;min-height:80px;padding:8px;}.research-partners-track .logo-strip-card img{max-height:40px;}}

/* ---------- Placements (redesigned) ---------- */
.placements-section{position:relative;overflow:hidden;background:linear-gradient(180deg,#0F4475,#08233f);}
.placements-section::before{
  content:"";position:absolute;top:-120px;right:-160px;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle,rgba(244,113,30,.10),transparent 70%);z-index:0;pointer-events:none;
}
.placements-section::after{
  content:"";position:absolute;bottom:-140px;left:-160px;width:460px;height:460px;border-radius:50%;
 z-index:0;pointer-events:none; background: #0F4475;
background: linear-gradient(90deg, rgba(15, 68, 117, 1) 0%, rgba(15, 68, 117, 1) 50%, rgba(16, 68, 117, 1) 100%);
}
.placements-section .container{position:relative;z-index:1;}
.placements-section .section-head h2{color:#fff;}
.placements-section .section-head p{font-size:16.5px;color:#fff;}
.placements-section .bento-stat .ic{width:62px;height:62px;border-radius:50%;font-size:28px;}
.placements-section .eyebrow{font-size:15px;}
.placements-section .placements-logos-head span{font-size:16px;}
.placements-top{display:grid;grid-template-columns:1.35fr .9fr;gap:56px;align-items:center;margin-bottom:44px;}
.placements-intro{max-width:640px;margin-bottom:0;}
@media(max-width:900px){.placements-top{grid-template-columns:1fr;gap:36px;}.placements-hero{order:-1;}}

.placements-hero{position:relative;display:flex;align-items:center;justify-content:center;padding:44px;}
@keyframes ring-orbit-spin{to{transform:rotate(360deg);}}
.placements-ring-orbit{
  position:absolute;width:312px;height:312px;border-radius:50%;border:1.5px dashed rgba(232,95,16,.25);
  animation:ring-orbit-spin 50s linear infinite;
}
.placements-ring-orbit::before,.placements-ring-orbit::after{content:"";position:absolute;border-radius:50%;}
.placements-ring-orbit::before{top:-4px;left:50%;transform:translateX(-50%);width:8px;height:8px;background:var(--gold-500);box-shadow:0 0 12px rgba(245,166,35,.85);}
.placements-ring-orbit::after{bottom:8%;right:4%;width:7px;height:7px;background:var(--orange-500);box-shadow:0 0 12px rgba(244,113,30,.85);}
@keyframes ring-pulse{0%,100%{box-shadow:0 20px 48px rgba(232,95,16,.22),var(--shadow-lg);}50%{box-shadow:0 24px 62px rgba(232,95,16,.4),var(--shadow-lg);}}
.placements-ring{
  position:relative;width:250px;height:250px;border-radius:50%;
  background:conic-gradient(from -90deg,var(--orange-500) 0%,var(--gold-500) 96%,var(--paper-100) 96% 100%);
  display:flex;align-items:center;justify-content:center;animation:ring-pulse 3.5s ease-in-out infinite;
}
.placements-ring::before{content:"";position:absolute;inset:16px;border-radius:50%;background:#fff;box-shadow:inset 0 2px 14px rgba(10,27,61,.1);}
.placements-ring-glow{position:absolute;inset:-54px;border-radius:50%;background:radial-gradient(circle,rgba(244,113,30,.3),transparent 70%);z-index:-1;filter:blur(2px);}
.placements-ring-inner{position:relative;z-index:1;text-align:center;}
.placements-ring-inner .val{
  font-family:var(--ff-head);font-weight:800;font-size:50px;line-height:1;
  background:linear-gradient(135deg,var(--navy-900),var(--blue-600));-webkit-background-clip:text;background-clip:text;color:transparent;
}
.placements-ring-inner .lbl{display:flex;align-items:center;justify-content:center;gap:6px;font-family:var(--ff-body);font-weight:700;font-size:12px;color:var(--ink-500);text-transform:uppercase;letter-spacing:.05em;margin-top:10px;}
.placements-ring-inner .lbl i{color:var(--orange-500);font-size:11px;}
.placements-badge-float{
  position:absolute;bottom:2px;left:-14px;background:rgba(10,27,61,.92);backdrop-filter:blur(6px);color:#fff;font-family:var(--ff-head);
  font-weight:700;font-size:12px;padding:10px 16px;border-radius:999px;box-shadow:var(--shadow-md);
  border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;gap:8px;white-space:nowrap;
}
.placements-badge-float i{color:var(--gold-500);font-size:12.5px;}
@media(max-width:900px){.placements-ring-orbit{width:270px;height:270px;}.placements-badge-float{bottom:-8px;left:6px;}}

.placements-bento{display:grid;grid-template-columns:1.15fr 1fr 1fr;grid-template-rows:repeat(2,1fr);gap:16px;margin-bottom:52px;}
@media(max-width:1100px){.placements-bento{grid-template-columns:repeat(2,1fr);grid-template-rows:auto;}
  .bento-stat.featured{grid-column:1/-1;grid-row:auto;flex-direction:row;align-items:center;gap:22px;text-align:left;}
  .bento-stat.featured .ic{margin-bottom:0;}
}
@media(max-width:640px){.placements-bento{grid-template-columns:1fr;}.bento-stat.featured{flex-direction:column;text-align:left;}.bento-stat.featured .ic{margin-bottom:16px;}}
.bento-stat{
  position:relative;background:#fff;border:1px solid var(--line-200);border-radius:var(--radius-md);
  padding:22px 20px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
  display:flex;flex-direction:column;justify-content:center;
}
.bento-stat::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--orange-500),var(--gold-500));transform:scaleX(0);transform-origin:left;transition:transform .3s ease;}
.bento-stat:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:transparent;}
.bento-stat:hover::before{transform:scaleX(1);}
.bento-stat .ic{width:42px;height:42px;border-radius:12px;background:rgba(244,113,30,.1);color:var(--orange-500);display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:16px;flex:none;}
.bento-stat .n{font-family:var(--ff-head);font-weight:800;font-size:clamp(19px,2.1vw,26px);color:var(--navy-900);}
.bento-stat .l{font-size:11.5px;color:var(--ink-500);margin-top:4px;text-transform:uppercase;letter-spacing:.03em;font-weight:600;}
.bento-stat.c-blue .ic{background:rgba(27,74,132,.1);color:var(--blue-600);}
.bento-stat.c-gold .ic{background:rgba(245,166,35,.15);color:var(--gold-500);}
.bento-stat.c-navy .ic{background:rgba(10,27,61,.08);color:var(--navy-800);}
.bento-stat.featured{
  grid-column:1;grid-row:1/span 2;border:none;padding:30px 26px;justify-content:center;
  background:linear-gradient(160deg,var(--navy-900) 0%,var(--blue-600) 100%);
}
.bento-stat.featured::before{display:none;}
.bento-stat.featured::after{content:"";position:absolute;top:-46px;right:-46px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(245,166,35,.3),transparent 70%);}
.bento-stat.featured:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(10,27,61,.35);}
.bento-stat.featured .tag{
  position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;width:fit-content;
  background:rgba(245,166,35,.18);color:var(--gold-500);font-size:10.5px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;padding:5px 11px;border-radius:999px;margin-bottom:14px;
}
.bento-stat.featured .ic{position:relative;z-index:1;background:rgba(255,255,255,.14);color:var(--gold-500);}
.bento-stat.featured .n{position:relative;z-index:1;color:#fff;font-size:clamp(30px,3.2vw,40px);}
.bento-stat.featured .l{position:relative;z-index:1;color:rgba(255,255,255,.72);}

.placements-logos-head{display:flex;align-items:center;gap:14px;margin-bottom:20px;}
.placements-logos-head .line{flex:1;height:1px;background:var(--line-200);}
.placements-logos-head span{font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-500);white-space:nowrap;}
.accreditation-slider{overflow:hidden;position:relative;width:100%;margin:0 auto;padding:6px 0;}
.accreditation-track{display:flex;align-items:center;gap:18px;width:max-content;animation:accreditation-scroll 22s linear infinite;}
.accreditation-card{flex:0 0 auto;min-width:190px;min-height:120px;padding:16px;background:#fff;border:1px solid var(--line-200);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:grid;place-items:center;}
.accreditation-card img{max-width:100%;max-height:78px;object-fit:contain;}
.accreditation-slider:hover .accreditation-track{animation-play-state:paused;}
@keyframes accreditation-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:32px;}}
.split.reverse .visual{order:2;}
.visual-card{
  border-radius:var(--radius-lg);overflow:hidden;position:relative;min-height:340px;
  display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;padding:32px;
  background:linear-gradient(135deg,var(--navy-800),var(--blue-500));box-shadow:var(--shadow-md);
}
.visual-card.gold-accent{background:radial-gradient(circle at 30% 20%,#24408f, var(--navy-900) 70%);}
.visual-card .visual-label{font-family:var(--ff-head);font-weight:700;font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-500);}
.visual-card .visual-title{font-family:var(--ff-head);font-weight:800;font-size:clamp(22px,2.6vw,30px);margin:10px 0;}
.visual-card .visual-sub{font-size:13.5px;color:rgba(255,255,255,.72);}
.placeholder-note{
  position:absolute;bottom:10px;right:10px;background:rgba(255,255,255,.15);border:1px dashed rgba(255,255,255,.5);
  border-radius:6px;padding:4px 8px;font-size:10.5px;color:#fff;
}

/* ---------- Quantum split (photo + floating caption) ---------- */
.quantum-split{position:relative;}
.quantum-copy .eyebrow{margin-bottom:16px;}
.quantum-copy h3{font-size:clamp(24px,2.6vw,32px);margin-bottom:14px;}
.quantum-copy p{font-size:15.5px;}
.quantum-visual{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);min-height:340px;background:linear-gradient(135deg,var(--navy-800),var(--blue-500));}
.quantum-visual img{width:100%;height:100%;min-height:340px;object-fit:cover;display:block;}
.quantum-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(8,20,45,.88) 100%);pointer-events:none;}
.quantum-caption{position:absolute;left:22px;right:22px;bottom:20px;z-index:1;color:#fff;}
.quantum-caption .qc-label{display:block;font-family:var(--ff-head);font-weight:700;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--gold-500);margin-bottom:6px;}
.quantum-caption .qc-title{display:block;font-family:var(--ff-head);font-weight:800;font-size:22px;line-height:1.2;margin-bottom:4px;}
.quantum-caption .qc-sub{display:block;font-size:13px;color:rgba(255,255,255,.8);}

/* ---------- Feature card grid (why choose) ---------- */
.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;}
@media(max-width:1100px){.grid-5{grid-template-columns:repeat(3,1fr);}}
@media(max-width:640px){.grid-5{grid-template-columns:repeat(2,1fr);}}
.feature-card{
  background:linear-gradient(150deg,var(--navy-900) 0%,var(--blue-600) 100%);
  border:none;border-radius:var(--radius-md);padding:24px 20px;color:#fff;
  transition:transform .18s ease,box-shadow .18s ease;
}
.feature-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(10,27,61,.35);}
.feature-icon{
  width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.14);color:var(--gold-500);
  display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-size: 22px;
}
.feature-card h3{font-size:16px;font-weight:700;margin-bottom:6px;color:#fff;}
.feature-card p{font-size:13.5px;margin:0;color:rgba(255,255,255,.75);}

.feature-card.f-orange .feature-icon{color:var(--orange-400);}
.feature-card.f-blue .feature-icon{color:#9ec6ff;}
.feature-card.f-gold .feature-icon{color:var(--gold-500);}
.feature-card.f-navy .feature-icon{color:#fff;}

/* ---------- Why choose RIT (photo panel + differentiator list, full-bleed) ---------- */
.why-layout{
  display:grid;grid-template-columns:.85fr 1.15fr;
  border-top:1px solid var(--line-200);border-bottom:1px solid var(--line-200);
}
.why-panel{
 position: relative;
  min-height: 480px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 150px clamp(5px,18vw,70px);
  color: #fff;
  background: linear-gradient(165deg,rgba(10,27,61,.94) 10%,rgba(15,68,117,.86) 100%), url('../images/rit-about.jpg') center/cover no-repeat;
}
.why-panel .eyebrow{background:rgba(255,255,255,.14);width:28%;color:#fff;}
.why-panel .eyebrow::before{background:var(--orange-500);}
.why-panel h2{color:#fff;font-size:clamp(24px,2.6vw,32px);}
.why-panel p{color:rgba(255,255,255,.78);font-size:15.5px;margin-bottom:0;}

.why-list{background:#fff;display:flex;flex-direction:column;}
.why-item{
  display:flex;align-items:flex-start;gap:24px;padding:36px clamp(24px,6vw,64px);border-bottom:1px solid var(--line-200);
  transition:background .15s ease;
}
.why-item:last-child{border-bottom:none;}
.why-item:hover{background:var(--paper-50);}
.why-num{
  flex:none;width:40px;font-family:var(--ff-head);font-weight:800;font-size:28px;color:var(--orange-500);line-height:1;
}
.why-copy{flex:1;min-width:0;}
.why-copy h3{font-size:16.5px;margin-bottom:3px;}
.why-copy p{font-size:16px;color:var(--ink-500);margin:0;width:80%;}
@media(max-width:900px){
  .why-layout{grid-template-columns:1fr;}
  .why-panel{min-height:280px;padding:40px 28px;}
  .why-item{padding:20px 28px;}
}
@media(max-width:560px){
  .why-item{gap:14px;padding:18px 20px;}
  .why-num{width:28px;font-size:22px;}
}

/* ---------- Credit framework chips ---------- */
#credit-framework{padding:6rem 0;position:relative;overflow:hidden;}
.credit-framework-visual{position:absolute;right:0;bottom:0;max-width:38%;height:auto;pointer-events:none;z-index:0;}
@media(max-width:900px){.credit-framework-visual{display:none;}}
.credit-panel-inner{max-width:900px;}
.credit-panel h3{color:#fff;
  font-size: clamp(24px,2.6vw,32px);}
.credit-panel p{color:rgba(255,255,255,.78);}
.credit-tagline{
  margin-top:24px;font-family:var(--ff-head);font-weight:700;font-size:20px;color:#fff;
  background:rgba(255,255,255,.08);border-left:4px solid var(--gold-500);
  padding:16px 20px;border-radius:0 12px 12px 0;display:inline-block;
}

/* ---------- Credit framework chip cloud ---------- */
.credit-chips{display:flex;flex-wrap:wrap; gap:14px;margin:24px 0 4px;}
.credit-chip{
  display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line-200);
  border-radius:999px;padding:10px 18px;font-family:var(--ff-head);font-weight:600;font-size:14px;
  color:var(--navy-900);box-shadow:var(--shadow-sm);
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.credit-chip::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--orange-500);flex:none;}
.credit-chip:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--orange-400);}
@media(max-width:600px){
  .credit-chips{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0 4px;}
  .credit-chip{padding:9px 12px;font-size:11.5px;gap:6px;border-radius:12px;line-height:1.3;box-shadow:var(--shadow-sm);}
  .credit-chip::before{width:5px;height:5px;}
}

/* ---------- Reviews ---------- */
#reviews {padding:15px 0;position:relative;overflow:hidden;}
.reviews-panel{
  position:relative;overflow:hidden;border-radius:var(--radius-lg);
padding: 20px;
}
.reviews-panel::before{
  content:"\f10e";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;
  top:8px;right:24px;font-size:110px;color: rgba(244, 113, 30, 0.15);
  pointer-events: none;
}
.reviews-panel>*{position:relative;z-index:1;}
.review-panel{
  background:#fff;border:1px solid var(--line-200);border-radius:var(--radius-lg);
  padding:10px;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;box-shadow:var(--shadow-sm);
}
.review-score{text-align:center;background:linear-gradient(135deg,rgba(244,113,30,.08),rgba(245,166,35,.12));border-radius:var(--radius-lg);padding:10px 15px;}
.review-score .n{font-family:var(--ff-head);font-weight:800;font-size:46px;color:var(--navy-900);}
.review-stars{color:var(--orange-500);font-size:18px;letter-spacing:2px;}
.review-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.review-card{
  background:#fff; border-radius:var(--radius-md);padding:10px;font-size:13px;
  position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;
}
.review-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--orange-500),var(--gold-500));transform:scaleX(0);transform-origin:left;transition:transform .25s ease;}
.review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.review-card:hover::before{transform:scaleX(1);}
.review-card .stars{color:var(--orange-500);margin-bottom:8px;font-size:13px;}
@media(max-width:900px){.review-panel{grid-template-columns:1fr;text-align:center;}.review-cards{grid-template-columns:1fr;}}
@media(max-width:640px){.review-cards{position:relative;overflow:hidden;grid-template-columns:1fr;}.review-card{position:absolute;opacity:0;transition:opacity .5s ease;}.review-card.is-active{position:relative;opacity:1;}}

/* ---------- Tabs (shared: courses / clubs / campus life) ---------- */
.tabs-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px;}
.tab-btn{
  padding:11px 20px;border-radius:999px;border:1.5px solid var(--line-200);background:#fff;
  font-family:var(--ff-head);font-weight:600;font-size:14px;color:var(--ink-700);cursor:pointer;
}
.tab-btn.is-active{background:var(--navy-900);border-color:var(--navy-900);color:#fff;}
.tabs-nav.on-dark .tab-btn{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.3);color:#fff;}
.tabs-nav.on-dark .tab-btn.is-active{background:var(--orange-500);border-color:var(--orange-500);}
.tab-panel{display:none;}
.tab-panel.is-active{display:block;animation:fade .3s ease;}
@keyframes fade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}

.courses-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 56px;}
@media(max-width:800px){.courses-list{grid-template-columns:1fr;}}
.course-row{
  display:flex;align-items:center;gap:16px;padding:18px 4px;border-bottom:1px solid var(--line-200);
  transition:background .2s ease;
}
.course-row:hover{background:var(--paper-50);}
.course-row .idx{
  flex:none;width:30px;font-family:var(--ff-head);font-weight:800;font-style:italic;
  font-size:15px;color:var(--navy-700);opacity:.5;
}
.course-row .cname{flex:1;font-family:var(--ff-head);font-weight:700;font-size:15px;color:var(--navy-900);line-height:1.35;}
.course-badge{
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  font-family: var(--ff-head);
  font-weight: 800;
  font-size: 13px;
  letter-spacing: .03em;
  color: #fff;
  padding: 6px 25px;
  border-radius: 9px;
  text-align: center;
}
.course-badge.ug{background: linear-gradient(110deg,#ff520f,#ec7f55 50%, #ff520f);}
.course-badge.pg{ color: #FFF;
  background: linear-gradient(110deg,#0f4475,#134573ba 50%, #0f4475);}
.course-badge.phd{color: #fff;
  background: linear-gradient(110deg,#ff520f,#ec7f55 50%, #ff520f);}
.course-row .row-arrow{flex:none;color:var(--orange-500);font-size:14px;transition:transform .2s ease;}
.course-row:hover .row-arrow{transform:translateX(4px);}
.phd-note{
  display:flex;align-items:center;gap:16px;background:var(--paper-50);border:1px dashed var(--line-200);
  border-radius:var(--radius-md);padding:20px 24px;margin-top:8px;
}
.phd-note p{margin:0;text-align:left;}

/* ---------- Innovation Center & Clubs (dark tabs + photo gallery) ---------- */
.innovation-dark{background:url(../images/club3.webp);}
.innovation-dark .section-head.on-dark .eyebrow{background:rgba(255,255,255,.12);color:var(--orange-400);}
.innovation-dark .section-head.on-dark .eyebrow::before{background:var(--orange-500);}
.innovation-dark .section-head.on-dark h2{color:#fff;}
.innovation-dark .section-head.on-dark p{color:rgba(255,255,255,.78);}
.innovation-dark .photo-grid .ph-photo{border-radius:var(--radius-md);min-height:220px;}

/* ---------- Future tech centers ---------- */
.tech-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
@media(max-width:900px){.tech-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:560px){.tech-grid{grid-template-columns:repeat(3,1fr);}}
.tech-tile{
  background:#fff;border:1px solid var(--line-200);border-radius:var(--radius-lg);
  padding:28px 16px;text-align:center;box-shadow:var(--shadow-sm);
  transition:transform .2s ease,box-shadow .2s ease;
}
.tech-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.tech-tile .ic{
  width:64px;height:64px;border-radius:50%;margin:0 auto 16px;
  display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;
  background: linear-gradient(110deg,#13467a,#15477dc4 50%, #15477d);
}
.tech-tile:nth-child(even) .ic{background: linear-gradient(110deg,#ff520f,#ec7f55 50%, #ff520f);}
.tech-tile .label{display:block;font-family:var(--ff-head);font-weight:700;font-size:15px;color:var(--navy-900);margin-bottom:10px;line-height:1.3;}
.tech-tile .underline{display:block;width:28px;height:3px;border-radius:2px;background:var(--navy-800);margin:0 auto;}
.tech-tile:nth-child(even) .underline{background:var(--orange-500);}
@media(max-width:640px){.tech-tile{padding:18px 12px;}.tech-tile .ic{width:48px;height:48px;margin:0 auto 12px;font-size:18px;}.tech-tile .label{font-size:12px;margin-bottom:8px;}}

.nirf-visual{position:absolute;top:10px;right:150px;max-width:680px;width:100%;height:auto;pointer-events:none;z-index:0;}
@media(max-width:1100px){.nirf-visual{display:none;}}

/* ---------- Incubation / research stat panels ---------- */
.dark-panel{
  background:linear-gradient(160deg,var(--navy-900),var(--blue-600));color:#fff;border-radius:var(--radius-lg);
  padding:6rem 0;
}
.dark-panel h3{color:#fff;font-size: clamp(26px,3.2vw,38px);}
.dark-panel .stat-strip{background:transparent;padding:0;grid-template-columns:repeat(6,1fr);margin-top:8px;}
.dark-panel .stat{ border:1px solid 1px solid rgb(255, 255, 255);border-radius:var(--radius-sm);padding:18px 10px;}
@media(max-width:900px){.dark-panel .stat-strip{grid-template-columns:repeat(3,1fr);}}
@media(max-width:520px){.dark-panel .stat-strip{grid-template-columns:repeat(2,1fr);}}

.panel-light{background:var(--paper-50);border:1px solid var(--line-200);border-radius:var(--radius-lg);padding:6rem 0;}
.panel-light .stat-strip{background:transparent;padding:0;grid-template-columns:repeat(4,1fr);}
.panel-light .stat .n{color:var(--orange-500);}
.panel-light .stat .l{color:var(--ink-500);}
@media(max-width:700px){.panel-light .stat-strip{grid-template-columns:repeat(2,1fr);}}

.panel-full-bleed{
  width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
  border-radius:0;box-sizing:border-box;
  padding-left:0;padding-right:0;
}
@media(max-width:768px){.panel-full-bleed{padding-top:32px;padding-bottom:32px;padding-left:0;padding-right:0;}}

/* ---------- Photo grid (clubs / workshops / campus) ---------- */
.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.photo-grid .ph{grid-row:span 1;}
.photo-grid .ph.tall{grid-row:span 2;}
@media(max-width:900px){.photo-grid{grid-template-columns:repeat(2,1fr);}}
.ph-block{
  border-radius:var(--radius-sm);min-height:140px;background:linear-gradient(135deg,var(--paper-100),var(--line-200));
  display:flex;align-items:center;justify-content:center;color:var(--ink-500);font-size:11.5px;text-align:center;padding:10px;
  border:1px dashed #c7cee0;height:100%;
}
.visual-photo{width:100%;height:350px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:block;}
.ph-photo{width:100%;height:100%;min-height:140px;object-fit:cover;border-radius:var(--radius-sm);display:block;}

/* ---------- Cards generic ---------- */
.card-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media(max-width:900px){.card-grid-3{grid-template-columns:1fr;}}
.info-card{background:#fff;border:1px solid var(--line-200);border-radius:var(--radius-md);padding:26px;box-shadow:var(--shadow-sm);}
.info-card .badge{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--orange-600);background:rgba(244,113,30,.1);padding:4px 10px;border-radius:6px;margin-bottom:12px;}
.info-card h3{font-size:17px;}

/* ---------- Alumni coverflow carousel ---------- */
.alumni-section{
  position:relative;overflow:hidden;padding:104px 0 96px;
  background:
    linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px) 0 0/44px 44px,
    linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px) 0 0/44px 44px,
    radial-gradient(circle at 50% 25%,#173a70 0%,var(--navy-900) 65%);
}
.alumni-head{max-width:640px;margin:0 auto 36px;text-align:center;}
.alumni-head .eyebrow{background:rgba(244,113,30,.16);}
.alumni-head h2{color:#fff;font-size:clamp(30px,3.6vw,44px);}
.alumni-head p{color:rgba(255,255,255,.7);}

.cf-track{position:relative;height:440px;margin:56px 0 30px;overflow:hidden;touch-action:pan-y;}
.cf-card{
  position:absolute;top:50%;left:50%;width:280px;height:420px;border-radius:20px;overflow:hidden;
  cursor:pointer;box-shadow:0 14px 30px rgba(0,0,0,.3);z-index:1;user-select:none;
  transition:transform .6s cubic-bezier(.16,1,.3,1),opacity .6s ease,box-shadow .6s ease;
}
.cf-card img{width:100%;height:100%;object-fit:cover;display:block;-webkit-user-drag:none;}
.cf-card.is-active{
  box-shadow:0 0 0 3px var(--orange-500),0 24px 48px rgba(0,0,0,.4);
}
@media(max-width:900px){.cf-track{height:360px;}.cf-card{width:220px;height:340px;border-radius:18px;}}
@media(max-width:560px){.cf-track{height:300px;}.cf-card{width:200px;height:300px;border-radius:16px;}}
.cf-info{position:absolute;left:0;right:0;bottom:0;padding:14px 12px 12px;
  background:linear-gradient(180deg,transparent 35%,rgba(5,12,30,.92) 100%);color:#fff;}
.cf-name{font-family:var(--ff-head);font-weight:700;font-size:12.5px;line-height:1.25;}
.cf-role{font-size:10.5px;color:rgba(255,255,255,.7);margin-top:2px;}
.cf-card.is-active .cf-name{font-size:16px;font-weight:800;}
.cf-card.is-active .cf-role{font-size:12.5px;color:var(--orange-400);font-weight:600;margin-top:3px;}

.cf-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:20px;}
.cf-arrow{
  width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);
  color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease;flex:none;
}
.cf-arrow:hover{background:rgba(255,255,255,.18);}
.cf-dots{display:flex;align-items:center;gap:8px;}
.cf-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.3);border:none;cursor:pointer;padding:0;transition:.2s;}
.cf-dot.is-active{background:var(--orange-500);width:24px;border-radius:5px;}

/* ---------- Blog cards ---------- */
.blog-card{background:#fff;border:1px solid var(--line-200);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);}
.blog-thumb{height:260px;width:100%;object-fit:cover;display:block;}
.blog-body{padding:20px;}
.blog-cat{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--orange-600);}
.blog-body h3{font-size:16px;margin:8px 0;}
.blog-meta{font-size:12px;color:var(--ink-500);display:flex;gap:10px;margin-top:12px;}

/* ---------- FAQ accordion ---------- */
.faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line-200);}
.faq-item{border-bottom:1px solid var(--line-200);}
.faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;background:none;border:none;
  text-align:left;padding:20px 4px;cursor:pointer;font-family:var(--ff-head);font-weight:600;font-size:15.5px;color:var(--navy-900);
}
.faq-q .plus{width:22px;height:22px;flex:none;border-radius:50%;border:1.5px solid var(--line-200);position:relative;transition:.2s;}
.faq-q .plus::before,.faq-q .plus::after{content:"";position:absolute;background:var(--navy-900);top:50%;left:50%;transform:translate(-50%,-50%);}
.faq-q .plus::before{width:10px;height:1.5px;}
.faq-q .plus::after{width:1.5px;height:10px;transition:.2s;}
.faq-item.open .plus::after{transform:translate(-50%,-50%) rotate(90deg) scale(0);}
.faq-item.open .plus{background:var(--orange-500);border-color:var(--orange-500);}
.faq-item.open .plus::before,.faq-item.open .plus::after{background:#fff;}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;}
.faq-a p{padding:0 30px 20px 4px;font-size:14.5px;}

/* ---------- Admission form ---------- */
.admission{
background: url(../images/contac_br1.png);;
   color:#fff;position:relative;overflow:hidden; background-size:cover;
}
.admission::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px) 0 0/44px 44px, linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px) 0 0/44px 44px, radial-gradient(circle at 50% 25%,#BCBCBC 0%,#D0D0D0 65%);
  opacity: 0.7;
} 
.admission-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .8fr;gap:56px;align-items:center;}
@media(max-width:900px){.admission-grid{grid-template-columns:1fr;}}
.admission-copy h2{color:#000;}
.admission-copy p{color:rgba(0,0,0,.8);}
.admission-points{margin-top:22px;display:flex;flex-direction:column;gap:12px;}
.admission-points li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;color:rgba(0,0,0,.8);}
.admission-form{
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(6px);
  border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-lg);
}
.admission-form .tag{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--orange-500);}
.admission-form h3{color:#000;margin-top:6px;}
.field{margin-bottom:14px;}
.field label{display:block;font-size:12px;color:rgba(0,0,0,.75);margin-bottom:6px;}
.field input,.field select{
  width:100%;padding:13px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.3);
  background:rgba(255,255,255,.95);color:var(--ink-900);font-size:14px;font-family:var(--ff-body);
}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.captcha-row{display:flex;align-items:center;gap:12px;}
.captcha-code{
  background:rgba(255,255,255,.9);border-radius:8px;padding:12px 16px;font-family:var(--ff-head);
  font-weight:700;letter-spacing:4px;color:var(--navy-900);
}
.form-note{text-align:center;font-size:12px;color:var(--orange-500);margin-top:14px;font-weight:600}

/* ---------- Footer ---------- */
footer{background:var(--navy-900);color:rgba(255,255,255,.75);padding-top:64px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;gap:32px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.12);}
@media(max-width:900px){.footer-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr;}}
.footer-col h4{color:#fff;font-size:14px;margin-bottom:16px;}
.footer-col ul{display:flex;flex-direction:column;gap:10px;}
.footer-col a{font-size:13.5px;color:rgba(255,255,255,.7);}
.footer-col a:hover{color:#fff;}
.footer-brand p{color:rgba(255,255,255,.65);font-size:13.5px;}
.social-row{display:flex;gap:10px;margin-top:16px;}
.social-row a{
  width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.15);
  font-size:14px;color:#fff;transition:background .2s ease,border-color .2s ease;
}
.social-row a:hover{background:var(--orange-500);border-color:var(--orange-500);}
.footer-accred{display:flex;align-items:center;gap:14px;flex-wrap:wrap;filter:grayscale(1) brightness(2);opacity:.75;margin-top:16px;}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding:22px 0;font-size:12.5px;flex-wrap:wrap;gap:10px;}
.footer-bottom a{opacity:.75;}

/* ---------- Sticky mobile CTA ---------- */
.sticky-cta{
  position:fixed;bottom:0;left:0;right:0;z-index:80;background:#fff;border-top:1px solid var(--line-200);
  display:none;padding:10px 16px;gap:10px;box-shadow:0 -8px 24px rgba(10,27,61,.12);
}
.sticky-cta .btn{flex:1;}
@media(max-width:768px){.sticky-cta{display:none;} body{padding-bottom:0;}}

.back-to-top{
  position:fixed;right:20px;bottom:90px;z-index:70;width:44px;height:44px;border-radius:50%;
  background:var(--navy-900);color:#fff;border:none;display:flex;align-items:center;justify-content:center;
  cursor:pointer;opacity:0;visibility:hidden;transition:.2s;box-shadow:var(--shadow-md);
}
.back-to-top.show{opacity:1;visibility:visible;}
@media(min-width:769px){.back-to-top{bottom:24px;}}

/* ---------- dev annotation ribbon (remove before ship) ---------- */
.dev-note{
  background:#fffbe6;border:1px dashed #e6c200;color:#7a6400;font-size:12px;border-radius:8px;
  padding:10px 14px;margin-bottom:18px;
}
  @media (max-width:640px){
.field input, .field select {
  width: 100%;
  padding: 8px 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.3);
  background: rgba(255,255,255,.95);
  color: var(--ink-900);
  font-size: 10px;
  font-family: var(--ff-body);
}
.field input, .field select {
  width: 100%;
  padding: 8px 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.3);
  background: rgba(255,255,255,.95);
  color: var(--ink-900);
  font-size: 10px;
  font-family: var(--ff-body);
}
.field {
  margin-bottom: 10px;
}
.field label {
margin-bottom: 0px;
color:#000;
}.captcha-code {
  background: rgba(255,255,255,.9);
  border-radius: 8px;
  padding: 6px 16px;
  font-family: var(--ff-head);
  font-weight: 700;
  letter-spacing: 4px;
  color: var(--navy-900);
  font-size: 13px;
}

.logo-strip-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  grid-template-rows: repeat(2,minmax(0,1fr));
  gap: 12px;
}
.logo-strip-card
{
  background: #fff;
  border: 1px solid var(--line-200);
  border-radius: var(--radius-md);
  padding: 8px;
  display: grid;
  place-items: center;
  min-height: 50px;
  box-shadow: var(--shadow-sm);
  transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.visual-photo {
  width: 100%;
  height: 220px;
  }
  .mini-badge .lbl {
  font-size: 12px;
  color: #fff;
  line-height: 1.25;
}
.mini-badge .num {
  text-align: left;
}
.mini-badge .ic {
  font-size: 20px;
}
.reviews-panel {
margin-top: 64px; padding: 20px 10px;
}

}


/* ============ ABOUT PAGE ============ */
.page-hero { position: relative; background: #08233f; color: #fff; padding: 180px 0 150px; overflow: hidden; }
.page-hero-img {position:absolute; inset: 0;width: 100%; height: 100%; object-fit: cover; object-position: center; }
.page-hero-overlay {    position: absolute; inset: 0;background: linear-gradient(90deg, #08233f 22%, rgb(8 35 63 / 58%) 48%, rgba(8, 35, 63, .3) 100%);  }
.page-hero-inner { position: relative; max-width: 1680px; margin: 0 auto; padding: 0 32px; }
.breadcrumb {align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: #bcd0e6; }
.breadcrumb a { color: #bcd0e6; }
.breadcrumb a:hover { color: #FF7A47; }
.breadcrumb .sep { color: #5b7ea3; }
.breadcrumb .current { color: #FF7A47; }
.page-hero h1 { margin: 0 0 10px; font-weight: 900; font-size: clamp(34px,4.6vw,58px); color: #f5f5f5; letter-spacing: -1.5px; line-height: 1.02;  text-transform: initial;}
.page-hero p { margin: 0; font-size: 16px; color: #bcd0e6; }

.about-body { background:#FFFFFF6B; padding: 70px 0  60px; }
.stats-band { background: #DEEDFF; padding: 34px 0; color: #fff; }
.stats-band .section-inner { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; max-width: var(--maxw); margin: 0 auto; padding: 0 24px; }
.stats-band .stat-item { display: flex; align-items: center; justify-content: center; gap: 14px; min-width: 0; text-align: left; }
.stats-band .stat-icon {  display: grid;
  place-items: center;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 50%;
  color: #fff;
  background: #FF7A47;
}
.stats-band .stat-icon svg { width: 24px; height: 24px; }
.stats-band .stat-value { color: #0f4475; font-family: 'Montserrat', var(--ff-head), sans-serif; font-size: clamp(24px, 2.4vw, 34px); font-weight: 900; line-height: 1; }
.stats-band .stat-label {margin-top: 6px;
  color: #000;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 500; }
@media (max-width: 700px) {
  .stats-band { padding: 26px 0; }
  .stats-band .section-inner { grid-template-columns: repeat(2, 1fr); gap: 22px 14px; padding: 0 20px; }
  .stats-band .stat-item { justify-content: flex-start; gap: 10px; }
  .stats-band .stat-icon { flex-basis: 40px; width: 40px; height: 40px; }
  .stats-band .stat-value { font-size: 24px; }
  .stats-band .stat-label { font-size: 11px; }
}
.about-layout { display: grid; grid-template-columns: 280px 1fr; gap: 40px; align-items: start; position: relative; margin-top: -8%; background: #fff;padding: 45px 25px 45px; border-radius: 25px; box-shadow: 0 30px 70px rgba(59, 61, 63, 0.1); }
.about-main { min-width: 0; }

.about-sidebar { display: flex; flex-direction: column; gap: 10px; position: sticky; top: 100px; align-self: start; }
@media(max-width:900px){
  .about-layout { grid-template-columns: 1fr; }
  .about-sidebar { position: static; flex-direction: row; flex-wrap: wrap; }
  .about-sidebar .sidebar-cta { flex: 1 1 100%; }
}
.sidebar-link { display: flex; align-items: center; gap: 12px; padding: 15px 18px; border-radius: 14px; background: #fff; border: 1px solid #ece7dd; font-weight: 700; font-size: 15px; color: #153a5c; transition: background .2s, color .2s, border-color .2s, transform .2s; }
.sidebar-link .chev { margin-left: auto; color: #b8c2cc; }
.sidebar-link:hover { border-color: #FF7A47; color: #FF520F; transform: translateX(3px); }
.sidebar-link.active { background: linear-gradient(100deg,#FF520F,#EC7F55); border-color: transparent; color: #fff; box-shadow: 0 12px 26px rgba(255,82,15,.3); }
.sidebar-link.active .chev { color: rgba(255,255,255,.8); }

.sidebar-cta { margin-top: 14px; background: #0f4475; border-radius: 20px; padding: 30px 26px; color: #fff; text-align: center; position: relative; overflow: hidden; }
.sidebar-cta::before { content: ''; position: absolute; top: -40px; right: -30px; width: 160px; height: 160px; border-radius: 50%; background: radial-gradient(circle,rgba(219, 234, 252, 0.23),#0f4475 65%); }
.sidebar-cta svg { position: relative; margin-bottom: 14px; }
.sidebar-cta .cta-label { position: relative; font-size: 13px; font-weight: 600; color: #bcd0e6; }
.sidebar-cta .cta-headline { position: relative; font-weight: 800; font-size: 17px; line-height: 1.3; margin: 4px 0 20px; }
.sidebar-cta .cta-headline .accent { color: #FF7A47; font-family: 'Montserrat'; font-style: italic; font-weight: 900; font-size: 1.25em; display: block; }
.sidebar-cta .btn-primary { position: relative; width: 100%; justify-content: center; }

.eyebrow-line { width: 40px; height: 2px; background: #FF7A47; display: inline-block; margin-left: 12px; vertical-align: middle; }

/* ===== Regulation / curriculum download cards ===== */
.reg-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin: 24px 0; }
@media (max-width: 700px) { .reg-grid { grid-template-columns: 1fr; } }

.reg-group { background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 18px; padding: 26px 24px; margin-bottom: 16px; }
.reg-group:last-child { margin-bottom: 0; }
.reg-grid .reg-group { margin-bottom: 0; }
.reg-grid .reg-group:nth-child(2) { background: #FDEEE6; border-color: #FBDCC9; }

.reg-group h3 { margin: 0 0 16px; font-size: 19px; font-weight: 800; color: #153a5c; }

.reg-row { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }

.reg-icon { display: grid; place-items: center; width: 46px; height: 46px; flex: 0 0 46px; border-radius: 50%; background: #DCE8F7; color: #0F4475; font-size: 11px; font-weight: 800; letter-spacing: .5px; }
.reg-grid .reg-group:nth-child(2) .reg-icon { background: #FBDCC9; color: #C2410C; }

.reg-name { flex: 1 1 auto; min-width: 140px; color: #45505c; font-size: 14px; font-weight: 600; }

.reg-download { display: inline-flex; align-items: center; gap: 8px; background: #0F4475; color: #fff; font-weight: 700; font-size: 14px; padding: 12px 20px; border-radius: 12px; white-space: nowrap; transition: transform .2s ease, box-shadow .2s ease; }
.reg-download:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(15,68,117,.25); color: #fff; }
.reg-grid .reg-group:nth-child(2) .reg-download { background: #FF7A47; }
.reg-grid .reg-group:nth-child(2) .reg-download:hover { box-shadow: 0 10px 22px rgba(255,122,71,.35); }

/* ===== Regulation showcase cards (icon + description + file/download foot) ===== */
.reg-showcase-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin: 24px 0; }
@media (max-width: 700px) { .reg-showcase-grid { grid-template-columns: 1fr; } }

.reg-showcase-card { position: relative; overflow: hidden; background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 20px; padding: 28px; }
.reg-showcase-grid .reg-showcase-card:nth-child(2) { background: #FDEEE6; border-color: #FBDCC9; }

.reg-showcase-watermark { position: absolute; top: -18px; right: -18px; color: #0F4475; opacity: .08; pointer-events: none; }
.reg-showcase-watermark svg { width: 130px; height: 130px; }
.reg-showcase-grid .reg-showcase-card:nth-child(2) .reg-showcase-watermark { color: #FF7A47; }

.reg-showcase-head { position: relative; display: flex; align-items: flex-start; gap: 18px; }
.reg-showcase-icon { display: grid; place-items: center; flex: 0 0 64px; width: 64px; height: 64px; border-radius: 50%; background: #DCE8F7; color: #0F4475; }
.reg-showcase-grid .reg-showcase-card:nth-child(2) .reg-showcase-icon { background: #FBDCC9; color: #C2410C; }
.reg-showcase-head h3 { margin: 0 0 6px; font-size: 21px; font-weight: 800; color: #153a5c; }
.reg-showcase-head p { margin: 0; font-size: 14px; color: #5b6b7c; line-height: 1.5; }

.reg-showcase-divider { border: none; border-top: 1px solid rgba(15,68,117,.12); margin: 22px 0; }
.reg-showcase-grid .reg-showcase-card:nth-child(2) .reg-showcase-divider { border-top-color: rgba(194,65,12,.14); }

.reg-showcase-foot { position: relative; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; }
.reg-showcase-file { display: flex; align-items: center; gap: 12px; }
.reg-showcase-file-icon { display: grid; place-items: center; width: 40px; height: 40px; flex: 0 0 40px; border-radius: 50%; background: #fff; color: #0F4475; }
.reg-showcase-grid .reg-showcase-card:nth-child(2) .reg-showcase-file-icon { color: #C2410C; }
.reg-showcase-file-text { display: flex; flex-direction: column; line-height: 1.35; }
.reg-showcase-file-text strong { font-size: 14px; font-weight: 800; color: #153a5c; }
.reg-showcase-file-text span { font-size: 13px; color: #5b6b7c; }
.reg-showcase-grid .reg-showcase-card:nth-child(2) .reg-download { background: #FF7A47; }
.reg-showcase-grid .reg-showcase-card:nth-child(2) .reg-download:hover { box-shadow: 0 10px 22px rgba(255,122,71,.35); }

/* ===== Exam cell procedure — alternating icon rows ===== */
.examcell-rows { display: flex; flex-direction: column; gap: 18px; margin: 20px 0; }
.examcell-row { display: grid; grid-template-columns: 150px 1fr; gap: 26px; align-items: start; background: #EEF4FC; border-radius: 16px; padding: 28px; }
/* .examcell-rows .examcell-row:nth-child(even) { background: #FDEEE6; } */

.examcell-icon-col { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; }
.examcell-icon { display: grid; place-items: center; width: 56px; height: 56px; color: #0F4475; }
.examcell-icon svg { width: 42px; height: 42px; }
.examcell-rows .examcell-row:nth-child(even) .examcell-icon { color:#153a5c; }
   .examcell-rows .examcell-row:nth-child(even) .examcell-label { 
   color:#153a5c;
   }
.examcell-label { font-size: 12px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: #153a5c; line-height: 1.3; }

.examcell-content h3 { margin: 0 0 12px; font-size: 20px; font-weight: 800; color: #153a5c; }
.examcell-content ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 9px; }
.examcell-content li { position: relative; padding-left: 20px; font-size: 14.5px; color: #45505c; line-height: 1.55; }
.examcell-content li::before { content: ""; position: absolute; left: 0; top: 8px; width: 7px; height: 7px; border-radius: 50%; background: #0F4475; }
.examcell-rows .examcell-row:nth-child(even) .examcell-content li::before { background: #153a5c; }
.content-card ul {
list-style-type: none;
}

.examcell-circular-wrap { display: flex; align-items: center; gap: 20px; margin-top: 30px; }
.examcell-circular-wrap hr { flex: 1; margin: 0; border: none; border-top: 1px solid #d7dde5; opacity: 1; }
.examcell-circular-wrap .btn-primary { flex: 0 0 auto;border-radius: 50px; padding: 8px 45px; font-size: 16px; }

@media (max-width: 700px) {
  .examcell-row { grid-template-columns: 1fr; padding: 22px; }
  .examcell-icon-col { flex-direction: row; text-align: left; justify-content: flex-start; }
  .examcell-circular-wrap { flex-wrap: wrap; justify-content: center; }
  .examcell-circular-wrap hr { flex-basis: 100%; order: 3; }
}

/* ===== Anti-Ragging page ===== */
.arag-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin: 24px 0; }
@media (max-width: 700px) { .arag-grid { grid-template-columns: 1fr; } }

.arag-card {
   position: relative;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background: #EEF4FC;
  border: 1px solid #DCE8F7;
  border-radius: 16px;
  padding: 52px 82px 52px 82px;
  transition: transform .2s ease, box-shadow .2s ease;
  
  }
.arag-card:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(15,68,117,.12); }
.arag-grid .arag-card:nth-child(2), .arag-grid .arag-card:nth-child(3) { background: #FDEEE6; border-color: #FBDCC9; }

.arag-icon { display: grid; place-items: center; flex: 0 0 46px; width: 46px; height: 46px; border-radius: 50%; background: #DCE8F7; color: #0F4475; }
.arag-icon svg { width: 22px; height: 22px; }
.arag-grid .arag-card:nth-child(2) .arag-icon, .arag-grid .arag-card:nth-child(3) .arag-icon { background: #FBDCC9; color: #C2410C; }

.arag-body { display: flex; flex-direction: column; gap: 4px; }
.arag-body strong { font-size: 18px; font-weight: 800; color: #0F4475; margin-bottom: 10px;}
.arag-body span { font-size: 15px; color: #000; line-height: 1.5; }

.arag-chev { position: absolute; top: 50%; right: 18px; transform: translateY(-50%); width: 15px; height: 15px; color: #b8c2cc; transition: transform .2s ease, color .2s ease; }
.arag-card:hover .arag-chev { color: #FF7A47; transform: translateY(-50%) translateX(3px); }

.arag-helpline { display: flex; flex-wrap: wrap; align-items: center; gap: 28px; background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 16px; padding: 22px 28px; margin-bottom: 18px; }
.arag-helpline-lead, .arag-helpline-item { display: flex; align-items: center; gap: 14px; }
.arag-helpline-lead { flex: 1 1 220px; }
.arag-helpline-icon { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%; background: #DCE8F7; color: #0F4475; }
.arag-helpline-icon svg { width: 20px; height: 20px; }
.arag-helpline-icon--accent { background: #FF7A47; color: #fff; }
.arag-helpline-lead strong { display: block; font-size: 15px; font-weight: 800; color: #153a5c; }
.arag-helpline-lead span span { font-size: 15px; color: #000; }
.arag-helpline-label { display: block; font-size: 15px; color: #000; }
.arag-helpline-value { display: block; font-size: 16px; font-weight: 800; color: #FF520F; }
.arag-helpline-note { display: block; font-size: 12px; color: #000; }

.arag-info { background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 16px; padding: 24px 28px; }
.arag-info-head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.arag-info-icon { display: grid; place-items: center; width: 34px; height: 34px; flex: 0 0 34px; border-radius: 50%; background: #DCE8F7; color: #0F4475; }
.arag-info-icon svg { width: 18px; height: 18px; }
.arag-info-head h3 { margin: 0; font-size: 18px; font-weight: 800; color: #153a5c; }
.arag-info-list { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.arag-info-list li { display: flex; align-items: flex-start; gap: 10px; font-size: 15px; color: #000; line-height: 1.5; }
.arag-info-list svg { flex: 0 0 16px; width: 16px; height: 16px; margin-top: 2px; color: #0F4475; }

/* ===== Internal Complaints Committee (ICC) cards ===== */
.icc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 24px 0; }
@media (max-width: 900px) { .icc-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .icc-grid { grid-template-columns: 1fr; } }

.icc-card { display: flex; flex-direction: column; align-items: flex-start; background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 16px; padding: 24px; transition: transform .2s ease, box-shadow .2s ease; }
.icc-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(15,68,117,.12); }
.icc-grid .icc-card:nth-child(2) { background: #FDEEE6; border-color: #FBDCC9; }

.icc-icon { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: #DCE8F7; color: #0F4475; margin-bottom: 16px; }
.icc-icon svg { width: 22px; height: 22px; }
.icc-grid .icc-card:nth-child(2) .icc-icon { background: #FBDCC9; color: #C2410C; }

.icc-card h3 { margin: 0 0 10px; font-size: 17px; font-weight: 800; color: #153a5c; }
.icc-card p { margin: 0; font-size: 13.5px; color: #5b6b7c; line-height: 1.55; }

.icc-arrow { display: grid; place-items: center; width: 34px; height: 34px; flex: 0 0 34px; border-radius: 50%; background: #fff; color: #0F4475; margin-top: 18px; box-shadow: 0 4px 10px rgba(15,68,117,.15); transition: background .2s ease, color .2s ease, transform .2s ease; }
.icc-arrow svg { width: 15px; height: 15px; }
.icc-card:hover .icc-arrow { background: #0F4475; color: #fff; transform: translateX(3px); }
.icc-grid .icc-card:nth-child(2) .icc-arrow { color: #C2410C; }
.icc-grid .icc-card:nth-child(2):hover .icc-arrow { background: #FF7A47; color: #fff; }

/* ===== Women Empowerment Cell (WEC) page ===== */
.wec-subtitle { font-family: var(--ff-head); font-size: 18px; font-weight: 800; color: #153a5c; margin: -8px 0 14px; }

.wec-feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 24px 0; }
.wec-feature-grid--2col { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 700px) { .wec-feature-grid { grid-template-columns: 1fr; } }
.wec-feature { background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 16px; padding: 22px; text-align: center; }
.wec-feature-icon { display: grid; place-items: center; width: 48px; height: 48px; margin: 0 auto 14px; border-radius: 50%; }
.wec-feature-icon svg { width: 22px; height: 22px; }
.wec-feature-icon--blue { background: #DCE8F7; color: #0F4475; }
.wec-feature-icon--orange { background: #FF7A47; color: #fff; }
.wec-feature-icon--green { background: #DCFCE7; color: #16A34A; }
.wec-feature h4 { margin: 0 0 6px; font-size: 15px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; color: #153a5c; }
.wec-feature p { margin: 0; font-size: 13px; color: #5b6b7c; }

.wec-subhead { display: flex; align-items: center; gap: 10px; margin: 30px 0 18px; font-size: 18px; font-weight: 800; color: #153a5c; }
.wec-subhead svg { width: 20px; height: 20px; color: #FF7A47; }

.wec-obj-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: 28px; }
@media (max-width: 700px) { .wec-obj-grid { grid-template-columns: 1fr; } }
.wec-obj { display: flex; flex-direction: column; gap: 12px; }
.wec-obj-num { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #FF9A6C; color: #000; font-size: 13px; font-weight: 800; }
.wec-obj h4 { margin: 0 0 6px; font-size: 15px; font-weight: 800; color: #153a5c; }
.wec-obj p { margin: 0; font-size: 13.5px; color: #5b6b7c; line-height: 1.55; }

.wec-split { display: grid; grid-template-columns: 3fr 2fr; gap: 20px; margin-bottom: 20px; align-items: stretch; }
@media (max-width: 900px) { .wec-split { grid-template-columns: 1fr; } }

.wec-panel { background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 16px; padding: 22px; display: flex; flex-direction: column; }
.wec-panel-head { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; font-size: 16px; font-weight: 800; color: #153a5c; }
.wec-panel-head svg { width: 18px; height: 18px; color: #FF7A47; flex: 0 0 18px; }

.wec-table-wrap { overflow-x: auto; }
.wec-table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.wec-table th { text-align: left; padding: 10px 12px; background: #DCE8F7; color: #153a5c; font-weight: 800; white-space: nowrap; }
.wec-table th:first-child { border-radius: 8px 0 0 8px; }
.wec-table th:last-child { border-radius: 0 8px 8px 0; }
.wec-table td { padding: 10px 12px; color: #45505c; border-bottom: 1px solid #DCE8F7; }
.wec-table tr:last-child td { border-bottom: none; }

.wec-readmore { align-self: flex-start; margin-top: 18px; }

.wec-doc-list { display: flex; flex-direction: column; gap: 12px; }
.wec-doc { display: flex; align-items: center; gap: 12px; background: #FDEEE6; border: 1px solid #FBDCC9; border-radius: 12px; padding: 14px 16px; transition: transform .2s ease, box-shadow .2s ease; }
.wec-doc:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(194,65,12,.12); }
.wec-doc-icon { display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; border-radius: 50%; background: #FBDCC9; color: #C2410C; font-size: 10px; font-weight: 800; }
.wec-doc-text { flex: 1 1 auto; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.wec-doc-text strong { font-size: 13.5px; font-weight: 800; color: #153a5c; }
.wec-doc-text span { font-size: 12px; color: #5b6b7c; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wec-doc-dl { flex: 0 0 18px; width: 18px; height: 18px; color: #C2410C; }

.wec-quote-panel { background: linear-gradient(150deg,#0F4475,#08233f); border-radius: 16px; padding: 28px 26px; color: #fff; display: flex; flex-direction: column; justify-content: center; position: relative; overflow: hidden; }
.wec-quote-panel::before { content: ''; position: absolute; top: -40px; right: -30px; width: 160px; height: 160px; border-radius: 50%; background: radial-gradient(circle,rgba(255,82,15,.3),transparent 65%); }
.wec-quote-mark { position: relative; font-family: Georgia, serif; font-size: 42px; line-height: 1; color: #FF7A47; }
.content-card .wec-quote-panel p { position: relative; margin: 6px 0 18px; font-size: 17px; font-weight: 700; font-style: italic; line-height: 1.4; color: #fff; }
.wec-quote-tags { position: relative; display: flex; flex-wrap: wrap; gap: 10px; font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: #bcd0e6; }
.wec-quote-tags span:not(:last-child)::after { content: '\2022'; margin-left: 10px; color: #FF7A47; }

/* ===== Facilities pages: banners, galleries, info panels, timeline ===== */
.fac-banner { position: relative; border-radius: 18px; overflow: hidden; margin: 20px 0; }
.fac-banner img { width: 100%; height: 340px; object-fit: cover; display: block; }
.fac-banner-caption { position: absolute; top: 0; right: 0; height: 100%; width: 46%; display: flex; flex-direction: column; justify-content: center; padding: 0 40px; background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.85) 25%, rgba(255,255,255,.94) 100%); }
.fac-banner-caption h4 { margin: 0 0 10px; font-size: clamp(20px,2.6vw,28px); font-weight: 800; color: #153a5c; line-height: 1.25; }
.fac-banner-caption span { display: block; width: 44px; height: 3px; background: #FF7A47; }
.fac-banner--icon img { display: none; }
.fac-banner--icon { background: linear-gradient(135deg,#0F4475,#08233f); min-height: 260px; display: flex; align-items: center; }
.fac-banner--icon .fac-banner-glyph { position: absolute; left: 40px; top: 50%; transform: translateY(-50%); color: rgba(255,122,71,.35); }
.fac-banner--icon .fac-banner-glyph svg { width: 140px; height: 140px; }
.fac-banner--icon .fac-banner-caption { position: static; width: 100%; background: none; padding: 40px 40px 40px 210px; }
.fac-banner--icon .fac-banner-caption h4 { color: #fff; }


@media (max-width: 700px) {
  .fac-banner img { height: 220px; }
  .fac-banner-caption { position: static; width: 100%; height: auto; background: #EEF4FC; padding: 18px 20px; }
  .fac-banner--icon .fac-banner-glyph { position: static; transform: none; margin-bottom: 14px; }
  .fac-banner--icon .fac-banner-caption { padding: 24px 20px; display: flex; flex-direction: column; align-items: flex-start; }
}

.fac-split { display: grid; grid-template-columns: 1.2fr 1fr; gap: 30px; align-items: center; margin: 20px 0; }
@media (max-width: 900px) { .fac-split { grid-template-columns: 1fr; } }
.fac-split-media { position: relative; border-radius: 18px; overflow: hidden; }
.fac-split-media img { width: 100%; height: 100%; min-height: 320px; object-fit: cover; display: block; }
.fac-split-caption { position: absolute; top: 20px; left: 20px; right: 20px; }
.fac-split-caption strong { display: block; font-size: 16px; font-weight: 800; color: #153a5c; line-height: 1.3; background: rgba(255,255,255,.92); padding: 6px 12px; border-radius: 8px; }

.fac-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 24px 0; }
@media (max-width: 900px) { .fac-gallery { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .fac-gallery { grid-template-columns: 1fr; } }
.fac-gallery-item { position: relative; border-radius: 16px; overflow: hidden; }
.fac-gallery-item img { width: 100%; height: 220px; object-fit: cover; display: block; }
.fac-gallery-pill { position: absolute; left: 14px; bottom: 14px; background: #0F4475; color: #fff; font-size: 13px; font-weight: 700; padding: 7px 16px; border-radius: 999px; }

.fac-panels { display: flex; flex-direction: column; gap: 16px; }
.fac-panel { display: flex; align-items: center; gap: 16px; background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 16px; padding: 5px 5px; }
.fac-panel-icon { display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; border-radius: 50%; background: #fff; color: #0F4475; box-shadow: 0 6px 16px rgba(15,68,117,.12); }
.fac-panel-icon svg { width: 22px; height: 22px; }
.fac-panel h4 { margin: 0 0 10px; font-size: 16px; font-weight: 800; color: #153a5c; }
/* .fac-panel--contact { background: #FDEEE6; border-color: #FBDCC9; } */
.fac-panel--contact .fac-panel-icon { color: #C2410C; }
.fac-panel--contact p { margin: 0; font-size: 14px; color: #5b6b7c; }
.fac-panel--contact strong { display: block; font-size: 15px; color: #153a5c; }
.fac-panel--wide p { margin: 0; font-size: 14.5px; color: #45505c; line-height: 1.6; }

.fac-pullquote { margin: 0 0 20px; text-align: right; font-style: italic; font-size: 15px; color: #5b6b7c; line-height: 1.5; }

.fac-section-head { display: flex; align-items: center; gap: 10px; margin: 30px 0 16px; font-size: 19px; font-weight: 800; color: #153a5c; }
.fac-section-head::before { content: ''; width: 4px; height: 22px; background: #FF7A47; border-radius: 2px; }

.fac-facilities-row { display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; }
.fac-facilities-row .wec-feature-grid--2col { margin: 0; }
.fac-illustration { width: 350px; height: auto; }
@media (max-width: 900px) { .fac-facilities-row { grid-template-columns: 1fr; } .fac-illustration { display: none; } }

/* ===== Research pages: heading badge + document tables ===== */
.research-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.research-head > div { flex: 1 1 320px; }
.research-badge { flex: 0 0 auto; display: flex; align-items: center; gap: 12px; background: #EEF4FC; border-radius: 40% 60% 55% 45% / 55% 45% 55% 45%; padding: 18px 26px; max-width: 230px; }
.research-badge-icon { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; color: #0F4475; }
.research-badge-icon svg { width: 34px; height: 34px; }
.research-badge span { font-size: 14px; font-weight: 800; color: #153a5c; line-height: 1.35; }
.research-badge span::after { content: ''; display: block; width: 26px; height: 2px; background: #FF7A47; margin-top: 6px; }
@media (max-width: 700px) { .research-badge { border-radius: 20px; max-width: 100%; } }

.research-table-wrap { overflow-x: auto; margin: 20px 0; border: 1px solid #DCE8F7; border-radius: 14px; }
.research-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.research-table th { text-align: left; background: #DCE8F7; color: #153a5c; font-weight: 800; padding: 12px 18px; white-space: nowrap; }
.research-table td { padding: 12px 18px; color: #45505c; border-top: 1px solid #DCE8F7; }
.research-table tr:nth-child(even) td { background: #F5F9FE; }
.research-table .research-dl { display: inline-flex; align-items: center; gap: 6px; background: #FDEEE6; color: #C2410C; font-weight: 700; font-size: 13px; padding: 6px 14px; border-radius: 999px; white-space: nowrap; transition: background .2s ease; }
.research-table .research-dl:hover { background: #FBDCC9; }
.research-table .research-dl svg { width: 13px; height: 13px; }
.research-table .rn-chip { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #DCE8F7; color: #0F4475; font-weight: 800; font-size: 12px; }
.research-table .rn-row-desc { display: flex; align-items: center; gap: 10px; }
.research-table .rn-pdf { display: inline-grid; place-items: center; flex: 0 0 26px; width: 26px; height: 26px; border-radius: 6px; background: #FDEEE6; color: #E11D2E; }
.research-table .rn-pdf svg { width: 15px; height: 15px; }
.research-table .rn-title { font-weight: 700; color: #0F4475; }
.research-table .research-view { display: inline-flex; align-items: center; gap: 6px; background: #DCE8F7; color: #0F4475; font-weight: 700; font-size: 13px; padding: 6px 14px; border-radius: 999px; white-space: nowrap; transition: background .2s ease; }
.research-table .research-view:hover { background: #c9dcf2; }
.research-table .research-view svg { width: 13px; height: 13px; }

.research-cta-panel { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; background: #FDEEE6; border: 1px solid #FBDCC9; border-radius: 16px; padding: 22px 26px; margin-top: 20px; }
.research-cta-lead { display: flex; align-items: center; gap: 16px; }
.research-cta-icon { display: grid; place-items: center; flex: 0 0 46px; width: 46px; height: 46px; border-radius: 50%; background: #FBDCC9; color: #C2410C; }
.research-cta-icon svg { width: 22px; height: 22px; }
.research-cta-lead h4 { margin: 0 0 4px; font-size: 16px; font-weight: 800; color: #153a5c; }
.research-cta-lead p { margin: 0; font-size: 13.5px; color: #5b6b7c; }
.research-cta-tags { display: flex; gap: 8px; font-size: 11.5px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: #C2410C; }
.research-cta-tags span:not(:last-child)::after { content: '|'; margin-left: 8px; color: #FBDCC9; }

.research-divider { border: none; border-top: 1px solid #e4e9f0; margin: 34px 0; }

.dept-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 24px 0; }
@media (max-width: 900px) { .dept-grid { grid-template-columns: 1fr; } }
.dept-card { position: relative; display: flex; align-items: center; gap: 14px; background: #fff; border: 1px solid #e4e9f0; border-radius: 14px; padding: 18px 40px 18px 18px; box-shadow: 0 4px 14px rgba(15,68,117,.06); transition: transform .2s ease, box-shadow .2s ease; }
.dept-card:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(15,68,117,.12); }
.dept-icon { display: grid; place-items: center; flex: 0 0 52px; width: 52px; height: 52px; border-radius: 50%; background: #DCE8F7; color: #0F4475; }
.dept-icon svg { width: 24px; height: 24px; }
.dept-grid .dept-card:nth-child(2) .dept-icon { background: #FBDCC9; color: #C2410C; }
.dept-card h4 { margin: 0 0 6px; font-size: 15px; font-weight: 800; color: #153a5c; line-height: 1.3; }
.dept-card-label { display: block; font-size: 10.5px; font-weight: 700; letter-spacing: .04em; color: #93a2b3; text-transform: uppercase; }
.dept-card-ref { display: block; font-size: 16px; font-weight: 800; color: #FF520F; }
.dept-chev { position: absolute; top: 50%; right: 16px; transform: translateY(-50%); width: 15px; height: 15px; color: #b8c2cc; }

.research-table--dark thead th { background: #0F4475; color: #fff; }
.research-table--dark tbody tr:nth-child(even) td { background: #EEF4FC; }
.research-table--dark .rt-email { display: inline-flex; align-items: center; gap: 6px; color: #FF520F; font-weight: 600; word-break: break-all; }
.research-table--dark .rt-email svg { width: 14px; height: 14px; flex: 0 0 14px; }

/* ===== Tech Centre pages (e.g. Advanced Manufacturing) ===== */
.tc-tagline { margin: -6px 0 0; font-size: 13px; color: #bcd0e6; letter-spacing: .02em; }
.tc-tagline span { margin: 0 8px; color: #FF7A47; }

.tc-about-grid { display: grid; grid-template-columns: 1.6fr 1fr; gap: 26px; align-items: start; margin: 20px 0 28px; }
@media (max-width: 900px) { .tc-about-grid { grid-template-columns: 1fr; } }
.tc-about-visual { background: linear-gradient(150deg,#0F4475,#08233f); border-radius: 18px; padding: 34px 26px; text-align: center; color: #fff; }
.tc-about-visual svg { width: 60px; height: 60px; color: #FF9A6C; margin-bottom: 16px; }
.tc-about-visual h4 { margin: 0 0 8px; font-size: 16px; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; color: #fff; }
.tc-about-visual p, .content-card .tc-about-visual p { margin: 0; font-size: 13px; color: #bcd0e6; }
.tc-about-visual .tc-underline { display: block; width: 36px; height: 3px; background: #FF7A47; margin: 10px auto 0; }

.tc-triad { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 24px 0; }
.tc-triad--2col { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 900px) { .tc-triad, .tc-triad--2col { grid-template-columns: 1fr; } }
.tc-panel { border-radius: 16px; padding: 22px 24px; }
.tc-panel--orange { background: #FDEEE6; border: 1px solid #FBDCC9; }
.tc-panel--blue { background: #EEF4FC; border: 1px solid #DCE8F7; }
.tc-panel--green { background: #E8FBF0; border: 1px solid #C8F2D9; }
.tc-panel-head { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; font-size: 15.5px; font-weight: 800; color: #153a5c; }
.tc-panel-head svg { width: 19px; height: 19px; flex: 0 0 19px; }
.tc-panel--orange .tc-panel-head svg { color: #C2410C; }
.tc-panel--blue .tc-panel-head svg { color: #0F4475; }
.tc-panel--green .tc-panel-head svg { color: #16A34A; }
.tc-panel ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.tc-panel li { position: relative; padding-left: 22px; font-size: 13.5px; color: #45505c; line-height: 1.5; }
.tc-panel--blue li::before { content: ''; position: absolute; left: 4px; top: 8px; width: 5px; height: 5px; border-radius: 50%; background: #0F4475; }
.tc-panel--orange li::before, .tc-panel--green li::before { content: ''; position: absolute; left: 0; top: 2px; width: 15px; height: 15px; border-radius: 50%; background-repeat: no-repeat; background-position: center; background-size: 10px; }
.tc-panel--orange li::before { background-color: #FF7A47; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E"); }
.tc-panel--green li::before { background-color: #16A34A; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E"); }

.tc-equip-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; margin: 24px 0; }
@media (max-width: 900px) { .tc-equip-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 600px) { .tc-equip-grid { grid-template-columns: repeat(2, 1fr); } }
.tc-equip-grid--2col { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 420px) { .tc-equip-grid--2col { grid-template-columns: 1fr; } }
.tc-equip-item { background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 14px; padding: 20px 12px; text-align: center; }
.tc-equip-icon { display: grid; place-items: center; width: 52px; height: 52px; margin: 0 auto 12px; border-radius: 12px; background: #fff; color: #0F4475; }
.tc-equip-icon svg { width: 26px; height: 26px; }
.tc-equip-item span { font-size: 12.5px; font-weight: 700; color: #153a5c; }

.tc-split { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 24px 0; align-items: start; }
.tc-split > div { min-width: 0; }
@media (max-width: 900px) { .tc-split { grid-template-columns: 1fr; } }
.tc-split-3-2 { display: grid; grid-template-columns: 3fr 2fr; gap: 20px; margin: 24px 0; align-items: start; }
.tc-split-3-2 > div { min-width: 0; }
@media (max-width: 900px) { .tc-split-3-2 { grid-template-columns: 1fr; } }

.tc-avatar { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #DCE8F7; color: #0F4475; font-size: 11px; font-weight: 800; }

.tc-pagination { display: flex; align-items: center; gap: 6px; margin-top: 12px; font-size: 12.5px; }
.tc-pagination a { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 6px; color: #45505c; background: #EEF4FC; }
.tc-pagination a.active { background: #0F4475; color: #fff; font-weight: 800; }
.tc-pagination .tc-total { margin-right: auto; font-size: 12.5px; color: #5b6b7c; font-weight: 700; }

.tc-pub-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
@media (max-width: 700px) { .tc-pub-grid { grid-template-columns: repeat(2, 1fr); } }
.tc-pub-item { aspect-ratio: 3/4; border-radius: 10px; background: #EEF4FC; border: 1px solid #DCE8F7; display: grid; place-items: center; color: #0F4475; }
.tc-pub-item svg { width: 30px; height: 30px; }
.tc-pub-dots { display: flex; justify-content: center; gap: 6px; margin-top: 14px; }
.tc-pub-dots span { width: 7px; height: 7px; border-radius: 50%; background: #DCE8F7; display: inline-block; }
.tc-pub-dots span.active { background: #FF7A47; }

.tc-consult, .tc-funded { background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 16px; padding: 22px 24px; }
.tc-consult + .tc-funded { margin-top: 20px; }
.tc-consult p, .tc-funded p { margin: 0; font-size: 13.5px; color: #45505c; line-height: 1.6; }
.tc-funded ol { margin: 0; padding-left: 18px; display: flex; flex-direction: column; gap: 8px; font-size: 13px; color: #45505c; line-height: 1.5; }
.tc-funded-report { display: inline-flex; align-items: center; gap: 8px; margin-top: 16px; background: #fff; border: 1px solid #DCE8F7; color: #0F4475; font-weight: 700; font-size: 13.5px; padding: 10px 16px; border-radius: 10px; }
.tc-funded-report svg { width: 15px; height: 15px; color: #E11D2E; }

.tc-project-list { display: flex; flex-direction: column; gap: 14px; margin: 20px 0; }
.tc-project { display: flex; gap: 16px; background: #F5F9FE; border: 1px solid #DCE8F7; border-radius: 14px; padding: 18px 20px; }
.tc-project-num { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; background: #FF7A47; color: #fff; font-weight: 800; font-size: 13px; }
.tc-project-body h4 { margin: 0 0 8px; font-size: 15px; font-weight: 800; color: #153a5c; }
.tc-project-body p { margin: 0; font-size: 13.5px; color: #45505c; line-height: 1.6; padding-left: 16px; position: relative; }
.tc-project-body p::before { content: '\2022'; position: absolute; left: 0; color: #FF7A47; }

.tc-events-panel { background: #E8FBF0; border: 1px solid #C8F2D9; border-radius: 16px; padding: 22px 24px; }
.tc-events-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 20px; align-items: stretch; margin-top: 16px; }
@media (max-width: 900px) { .tc-events-grid { grid-template-columns: 1fr; } }
.tc-events-list { display: flex; flex-direction: column; gap: 14px; }
.tc-event-item { display: flex; gap: 12px; align-items: flex-start; }
.tc-event-num { display: grid; place-items: center; flex: 0 0 26px; width: 26px; height: 26px; border-radius: 50%; background: #FF7A47; color: #fff; font-weight: 800; font-size: 12px; }
.tc-event-item p { margin: 0; font-size: 13.5px; color: #2f5b3f; line-height: 1.5; font-style: italic; }

.tc-events-media { position: relative; border-radius: 14px; overflow: hidden; display: flex; flex-direction: column; }
.tc-events-media .tc-about-visual { flex: 1; border-radius: 14px; padding: 26px 22px; }
.tc-events-readmore { display: flex; align-items: center; justify-content: space-between; background: #fff; border: 1px solid #DCE8F7; border-radius: 12px; padding: 14px 18px; margin-top: 14px; font-weight: 700; font-size: 13.5px; color: #153a5c; }
.tc-events-readmore span { display: flex; align-items: center; gap: 8px; }
.tc-events-readmore svg:first-child { color: #E11D2E; width: 16px; height: 16px; }
.tc-events-readmore svg:last-child { width: 15px; height: 15px; color: #b8c2cc; }

.tc-proj-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 16px; margin: 20px 0; }
.tc-proj-card { background: #F5F9FE; border: 1px solid #DCE8F7; border-radius: 14px; overflow: hidden; }
.tc-proj-thumb { position: relative; aspect-ratio: 4/3; background: #DCE8F7; display: grid; place-items: center; color: #0F4475; }
.tc-proj-thumb svg { width: 34px; height: 34px; }
.tc-proj-num { position: absolute; top: 10px; left: 10px; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #0F4475; color: #fff; font-size: 12px; font-weight: 800; }
.tc-proj-grid .tc-proj-card:nth-child(even) .tc-proj-num { background: #FF7A47; }
.tc-proj-grid .tc-proj-card:nth-child(even) .tc-proj-thumb { background: #FBDCC9; color: #C2410C; }
.tc-proj-body { padding: 14px 16px; }
.tc-proj-body h4 { margin: 0 0 8px; font-size: 14px; font-weight: 800; color: #153a5c; line-height: 1.3; }
.tc-proj-body p { margin: 0; font-size: 12.5px; color: #5b6b7c; line-height: 1.5; }

.tc-events-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.tc-events-header h3 { margin: 0; }
.tc-events-btn { display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1.5px solid #FF7A47; color: #FF520F; font-weight: 700; font-size: 13.5px; padding: 9px 18px; border-radius: 999px; white-space: nowrap; }
.tc-events-btn svg { width: 14px; height: 14px; }

.tc-event-detail { display: grid; grid-template-columns: 1.1fr 1.4fr; gap: 24px; margin-top: 18px; align-items: start; }
.tc-event-detail > div { min-width: 0; }
@media (max-width: 900px) { .tc-event-detail { grid-template-columns: 1fr; } }
.tc-event-photo { border-radius: 14px; overflow: hidden; background: linear-gradient(150deg,#0F4475,#08233f); aspect-ratio: 4/3; display: grid; place-items: center; color: #FF9A6C; }
.tc-event-photo svg { width: 46px; height: 46px; }
.tc-event-meta { display: flex; flex-direction: column; gap: 10px; margin-bottom: 14px; }
.tc-event-meta-row { display: flex; align-items: center; gap: 10px; font-size: 13.5px; color: #45505c; }
.tc-event-meta-row svg { width: 16px; height: 16px; color: #FF7A47; flex: 0 0 16px; }
.tc-event-meta-row strong { color: #153a5c; }

.timeline { position: relative; display: flex; flex-direction: column; gap: 18px; margin-top: 18px; padding-left: 110px; }
.timeline::before { content: ''; position: absolute; left: 96px; top: 6px; bottom: 6px; width: 2px; background: #DCE8F7; }
.timeline-item { position: relative; background: #EEF4FC; border-radius: 12px; padding: 14px 18px; font-size: 14px; color: #45505c; line-height: 1.55; }
.timeline-item:nth-child(even) { background: #FDEEE6; }
.timeline-date { position: absolute; left: -110px; top: 14px; width: 92px; text-align: right; font-size: 12.5px; font-weight: 800; color: #0F4475; }
.timeline-item:nth-child(even) .timeline-date { color: #C2410C; }
.timeline-item::before { content: ''; position: absolute; left: -18px; top: 18px; width: 10px; height: 10px; border-radius: 50%; background: #0F4475; box-shadow: 0 0 0 3px #fff; }
.timeline-item:nth-child(even)::before { background: #FF7A47; }
.timeline-item strong { color: #153a5c; }
@media (max-width: 600px) {
  .timeline { padding-left: 20px; }
  .timeline::before { left: 6px; }
  .timeline-date { position: static; text-align: left; display: block; margin-bottom: 6px; width: auto; }
  .timeline-item::before { left: -18px; }
}

/* ===== Single document card (IIC / SC-ST committee pages) ===== */
.doc-card { display: flex; align-items: center; gap: 22px; background: #EEF4FC; border: 1px solid #DCE8F7; border-radius: 16px; padding: 24px 28px; flex-wrap: wrap; margin: 24px 0; }
.doc-card-icon { display: grid; place-items: center; flex: 0 0 64px; width: 64px; height: 64px; border-radius: 16px; background: #FDEEE6; color: #FF3B1D; }
.doc-card-icon svg { width: 32px; height: 32px; }
.doc-card-body { flex: 1 1 260px; min-width: 0; }
.doc-card-body h3 { margin: 0 0 8px; font-size: 18px; font-weight: 800; color: #153a5c; }
.doc-badge { display: inline-flex; align-items: center; gap: 6px; background: #EEF1F4; color: #5b6b7c; font-size: 12.5px; font-weight: 700; padding: 5px 12px; border-radius: 999px; margin-bottom: 8px; }
.doc-badge svg { width: 13px; height: 13px; }
.doc-card-body p { margin: 0; font-size: 14px; color: #5b6b7c; line-height: 1.5; }

.doc-card-btn { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; background: linear-gradient(110deg,#ff520f,#ec7f55 50%, #ff520f); color: #fff; font-weight: 700; font-size: 14.5px; padding: 14px 24px; border-radius: 12px; box-shadow: 0 10px 24px rgba(244,113,30,.3); white-space: nowrap; transition: transform .2s ease, box-shadow .2s ease; }
.doc-card-btn:hover { transform: translateY(-2px); color: #fff; }
.doc-card-btn svg { width: 16px; height: 16px; }
.doc-card-btn--outline { background: #fff; color: #FF520F; border: 1.5px solid #FF7A47; box-shadow: none; }
.doc-card-btn--outline:hover { background: #FDEEE6; color: #FF520F; }

@media (max-width: 640px) {
  .doc-card { flex-direction: column; align-items: flex-start; text-align: left; }
  .doc-card-btn { width: 100%; justify-content: center; }
}


.rit_academics {
  padding: 44px;
} 
.chairman-card { background: #fff; border-radius: 26px; padding: 20px; display: grid; grid-template-columns: 1.15fr .85fr; gap: 46px; align-items: start; margin-bottom: 0px; }
.chairman-card h2 { margin: 16px 0 20px; font-weight: 900; font-size: clamp(24px,2.6vw,34px); line-height: 1.25; color: #0F4475; letter-spacing: -.8px; }
.chairman-card p { margin: 0 0 16px; font-size: 15px; line-height: 1.8; text-align:justify; color: #212529; }
.chairman-sign { margin-top: 22px; font-family: 'Montserrat'; font-style: italic; font-weight: 800; font-size: 19px; color: #0F4475; }
.chairman-sign small { display: block; font-family: 'Inter'; font-style: normal; font-weight: 600; font-size: 13px; color: #5b6b7c; margin-top: 4px; }

.chairman-photo-wrap { border-radius: 20px; overflow: hidden; box-shadow: 0 20px 50px rgba(15,68,117,.18); }
.chairman-avatar { aspect-ratio: 4 / 5; background: linear-gradient(160deg,#123a5e,#08233f); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.chairman-avatar svg { width: 42%; height: 42%; }
.chairman-avatar img { width: 100%; height: 100%; object-fit: cover; object-position: top center; display: block; }
.chairman-caption { background: #0F4475; padding: 18px 20px; text-align: center; }
.chairman-caption .name { font-size: 18px; font-weight: 800; color: #fff; }
.chairman-caption .role { font-size: 12.5px; font-weight: 600; color: #9fbfe0; margin-top: 4px; }

.profile-card { background: #fff; border-radius: 26px; padding: 40px; display: grid; grid-template-columns: 220px 1fr; gap: 34px; align-items: start; margin-bottom: 32px; }
.profile-photo { border-radius: 18px; overflow: hidden; aspect-ratio: 4 / 5; background: linear-gradient(160deg,#123a5e,#08233f); }
.profile-photo img { width: 100%; height: 100%; object-fit: cover; object-position: top center; display: block; }
.role-badge { display: inline-block; font-size: 13px; font-weight: 800; letter-spacing: 1.5px; color: #fff; background: linear-gradient(100deg,#FF520F,#EC7F55); padding: 10px 25px; border-radius: 100px; margin: 14px 0px; }
.profile-card h3 { margin: 0 0 4px; font-weight: 900; font-size: 22px; color: #0F4475; }
.profile-card .title { font-size: 13.5px; font-weight: 700; color: #FF7A47; margin-bottom: 14px; }
.profile-card p { margin: 0; font-size: 14.5px; line-height: 1.8; color: #212529; }

.panel-title { margin: 14px 0 20px; font-weight: 900; font-size: clamp(24px,2.8vw,36px); color: #0F4475; letter-spacing: -1px; }

.content-card { background: #fff; border-radius: 26px; margin-bottom: 28px; }
.content-card p { margin: 0 0 6px; font-size: 15.5px; line-height: 1.8; color: #212529 }
.content-card p:last-child { margin-bottom: 0; }
.content-card h3 { margin: 26px 0 12px; font-weight: 800; font-size: 20px; color: #0F4475; }
.content-card h3:first-child { margin-top: 0; }
.content-card ul { margin: 0;
  font-size: 15px;
  line-height: 1.8;
  color: #212529;    list-style-type: none;}
.org-chart-img { display: block; width: 100%; height: auto; border-radius: 12px; }

.info-row { display: flex; flex-wrap: wrap; gap: 40px; margin-bottom: 26px; padding-bottom: 26px; border-bottom: 1px dashed rgba(15,68,117,.2); }
.info-row .lbl { font-size: 11px; font-weight: 800; letter-spacing: 1.5px; color: #9aa7b4; margin-bottom: 8px; }
.info-row .val { font-size: 14.5px; font-weight: 700; color: #153a5c; line-height: 1.6; }

.approval-list { list-style: none; display: grid; grid-template-columns: repeat(2,1fr); gap: 8px 20px; margin: 0 0 20px; padding: 0; }
.approval-list li { font-size: 15.5px; color: #212529; padding: 0; background: #F6F4EF; border-radius: 8px; transition: background .2s; }
.approval-list li:hover { background: #FFEDE4; }
.approval-list li a { display: block; padding: 5px 14px; color: inherit; }
.approval-list li a:hover { color: #FF520F; }

.table-filter { display: flex; align-items: center; gap: 10px; background: #F6F4EF; border: 1px solid #ece7dd; border-radius: 12px; padding: 12px 16px; margin-bottom: 16px; color: #9aa7b4; max-width: 340px; }
.table-filter input { flex: 1; border: none; background: none; outline: none; font-family: inherit; font-size: 14px; color: #153a5c; }
.table-filter input::placeholder { color: #9aa7b4; }
.table-empty { padding: 20px 16px; margin: 0; font-size: 14px; color: #5b6b7c; text-align: center; }

.data-table-wrap { overflow-x: auto; margin: 0 0 20px; border-radius: 14px; border: 1px solid #ece7dd; }
.data-table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.data-table th { background: #0F4475; color: #fff; text-align: left; padding: 12px 16px; font-weight: 700; font-size: 11.5px; letter-spacing: .4px; text-transform: uppercase; white-space: nowrap; }
.data-table td { padding: 12px 16px; border-top: 1px solid #ece7dd; color: #212529; }
.data-table tr:nth-child(even) td { background: #9BBCDA; }

.about-rit {   padding:20px; }
.about-rit h2 { margin: 14px 0 16px; font-weight: 900; font-size: clamp(26px,3.2vw,40px); color: #0F4475; letter-spacing: -1px; }
.about-rit p { margin: 0; font-size: 15.5px; line-height: 1.8; color: #212529; }

.feature-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 18px; margin-bottom:10px; padding: 10px 25px;}
.feature-card { background: #fff; border: 1px solid #ece7dd; border-radius: 18px; padding: 26px 20px; text-align: center; transition: transform .3s, box-shadow .3s; }
.feature-card:hover { transform: translateY(-6px); box-shadow: 0 16px 34px rgba(15,68,117,.12); }
.feature-icon { width: 72px; height: 72px; margin: 0 auto 16px; border-radius: 50px; background: linear-gradient(140deg,#FFEDE4,#FFF6F0); display: flex; align-items: center; justify-content: center; color: #FF520F; }
.feature-card h4 { margin: 0 0 8px; font-size: 18px; font-weight: 800; color: #153a5c; }
.feature-card p { margin: 0; font-size: 14px; line-height: 1.5; color: #5b6b7c; }

.about-final-stats { background: linear-gradient(150deg,#0F4475,#08233f); padding: 54px 0; }
.about-final-stats .section-inner { display: grid; grid-template-columns: repeat(4,1fr); gap: 20px; }
.about-final-stats .stat-item { text-align: center; color: #fff; }
.about-final-stats svg { color: #FF7A47; margin-bottom: 10px; }
.about-final-stats .num { display: block; font-family: 'Montserrat'; font-style: italic; font-weight: 900; font-size: clamp(28px,3.2vw,42px); }
.about-final-stats .lbl { font-size: 13px; font-weight: 600; color: #9fbfe0; margin-top: 6px; }

.ritfit-list { display: flex; flex-direction: column; gap: 18px; }
.ritfit-item { display: flex; align-items: flex-start; gap: 18px; }
.ritfit-no {
  flex: none; width: 40px; height: 40px; border-radius: 50%;
  background: linear-gradient(100deg,#FF520F,#EC7F55); color: #fff;
  font-family: 'Montserrat'; font-weight: 800; font-size: 15px;
  display: flex; align-items: center; justify-content: center;
}
.ritfit-text { font-size: 15.5px; line-height: 1.8; color: #212529; padding-top: 8px; }

/* Restore list bullets inside content cards (global reset sets list-style:none) */
.about-main .content-card ul { list-style: decimal; padding-left: 22px; }
.about-main .content-card ul li { margin-bottom: 4px; }

/* ===================== IQAC MEMBERS ===================== */
.iqac-members {
  position: relative;
  overflow: hidden;
  margin-bottom: 28px;
  padding: 44px clamp(20px,4vw,48px);
  border-radius: 26px;
  border: 1px solid #e6ebf1;
    background: radial-gradient(circle at 88% 6%, rgba(63, 125, 216, .10), transparent 42%), radial-gradient(circle at 6% 96%, rgba(15, 68, 117, .06), transparent 38%), linear-gradient(29deg, #e6ebf13d 0%, #ec7f5536 100%);
   max-width: 800px;
}
/* decorative dot grid */
.iqac-members::before {
  content: "";
  position: absolute;
  top: 26px; right: 34px;
  width: 128px; height: 78px;
  background-image: radial-gradient(#f56a35 1.6px, #f56a3400 1.6px);
  background-size: 15px 15px;
  opacity: .5;
  pointer-events: none;
}
/* decorative arc */
.iqac-members::after {
  content: "";
  position: absolute;
  top: -70px; right: -70px;
  width: 220px; height: 220px;
  border: 26px solid rgba(244, 109, 57, 0.21);
  border-radius: 50%;
  pointer-events: none;
}
.iqac-members > * { position: relative; z-index: 1; }
.iqac-members-head h3 { margin: 0 0 10px; font-weight: 900; font-size: clamp(26px,3vw,26px); color: #0F4475; letter-spacing: -1px; }
.iqac-members-head p { margin: 0 0 28px; max-width: 460px; font-size: 14.5px; line-height: 1.7; color: #212529; }
 
.iqac-lead-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-bottom: 22px; }
.iqac-lead-card { position: relative; background: #fff; border: 1px solid #e6ebf1; border-left: 4px solid #ff520f; border-radius: 16px; padding: 30px 30px 34px; box-shadow: 0 14px 30px rgba(15,68,117,.06); }
.iqac-badge { display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: 1.4px; text-transform: uppercase; color: #fff; background: #0F4475; padding: 7px 16px; border-radius: 7px; margin-bottom: 18px; }
.iqac-lead-card h4 { margin: 0; font-weight: 800; font-size: clamp(14px,1.9vw,15px); color: #123a5e; letter-spacing: -.3px; }
.iqac-rule { display: block; width: 34px; height: 3px; border-radius: 3px; background: #ff520f; margin: 14px 0 0; }
.iqac-lead-card p { margin: 14px 0 0; font-size: 14px; color: #212529; }

.iqac-coord-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; margin-bottom: 34px; }
.iqac-coord-card { background: #f4f7fb; border: 1px solid #e3eaf3; border-left: 4px solid #ff520f; border-radius: 14px; padding: 22px 22px 24px; }
.iqac-label { display: block; font-size: 11px; font-weight: 800; letter-spacing: 1.3px; text-transform: uppercase; color: #0F4475; margin-bottom: 10px; }
.iqac-coord-card .iqac-rule { margin: 0 0 14px; }
.iqac-coord-card h4 { margin: 0; font-weight: 800;font-size: 15px; color: #123a5e; }

.iqac-committee { margin-bottom: 34px; }
.iqac-tab { display: inline-block; background: #0F4475; color: #fff; font-size: 12px; font-weight: 800; letter-spacing: 1.3px; text-transform: uppercase; padding: 10px 22px; border-radius: 10px 10px 0 0; }
.iqac-committee-body { border: 1px solid #e6ebf1; border-top: 2px solid #0F4475; border-radius: 0 14px 14px 14px; padding: 4px 26px; box-shadow: 0 14px 30px rgba(15,68,117,.05); }
.iqac-row { display: flex; align-items: center; gap: 24px; padding: 20px 0; border-top: 1px solid #eef1f5; }
.iqac-row:first-child { border-top: none; }
.iqac-row .nm { flex: 0 0 34%; font-weight: 800; font-size: 15.5px; color: #123a5e; }
.iqac-row .dv { width: 1px; align-self: stretch; background: #e0e6ee; }
.iqac-row .rl { flex: 1; font-size: 14px; color: #212529; }

.iqac-rep-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
.iqac-rep-title { display: flex; align-items: center; gap: 12px; font-size: 12px; font-weight: 800; letter-spacing: 1.3px; text-transform: uppercase; color: #123a5e; margin-bottom: 14px; }
.iqac-rep-ic { width: 32px; height: 32px; border-radius: 50%; background: #0F4475; display: flex; align-items: center; justify-content: center; color: #fff; flex: none; }
.iqac-rep-item { display: flex; align-items: center; gap: 18px; padding: 16px 18px; border: 1px solid #e6ebf1; border-radius: 12px; margin-bottom: 12px; background: #fff; }
.iqac-rep-item .nm { font-weight: 800; font-size: 14.5px; color: #123a5e; }
.iqac-rep-item .dv { width: 1px; align-self: stretch; background: #e0e6ee; }
.iqac-rep-item .rl { flex: 1; font-size: 13px; color: #212529; }

@media (max-width: 1024px) {
  .iqac-lead-grid, .iqac-coord-grid, .iqac-rep-grid { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .iqac-row { flex-direction: column; align-items: flex-start; gap: 6px; }
  .iqac-row .dv, .iqac-rep-item .dv { display: none; }
  .iqac-row .nm, .iqac-rep-item .nm { flex: none; }
  .iqac-rep-item { flex-direction: column; align-items: flex-start; gap: 4px; }
}

/* ============ RESPONSIVE ============ */
@media (max-width: 1024px) {
  .hero-inner { grid-template-columns: 1fr; }
  .placements-head, .about-grid, .quantum-inner, .research-top, .incubation-inner { grid-template-columns: 1fr; }
  .stat-featured, .stat-card.paper, .stat-card.navy, .stat-card.wide, .stat-card.outline { grid-column: span 12; }
  .courses-list { grid-template-columns: 1fr; }
  .research-stats-grid { grid-template-columns: repeat(2,1fr); }
  .research-stats-grid > * { grid-column: span 1 !important; }
  .events-grid { grid-template-columns: 1fr; grid-template-rows: auto; height: auto; }
  .event-card { height: 320px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .nav-links { display: none; }
  .chairman-card { grid-template-columns: 1fr; }
  .profile-card { grid-template-columns: 1fr; }
  .profile-photo { max-width: 220px; }
  .feature-grid { grid-template-columns: repeat(3,1fr); }
  .about-final-stats .section-inner { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 640px) {
  .footer-grid { grid-template-columns: 1fr; }
  .incub-grid { grid-template-columns: 1fr 1fr; }
  .feature-grid { grid-template-columns: 1fr 1fr; }
  .chairman-stats { grid-template-columns: repeat(2,1fr); }
  .chairman-card { padding: 30px 24px; }
  .approval-list { grid-template-columns: 1fr; }
  .content-card { padding: 28px 22px; }
}

@media (max-width: 580px) {  
    .about-layout {
        padding: 45px 15px 45px;
    }
    .about-rit {
      padding: 1px;
    }
    .feature-grid {
        padding: 10px 0px;
    }
    .feature-card { 
        text-align: justify;
        padding: 16px 10px;
    }
    .feature-icon {
        margin: 10px 0;
    }
    .feature-card h4 {
      margin: 0 0 8px;
      font-size: 16px;
      font-weight: 600; 
    }
    .feature-card p
    .feature-card
    .feature-card-content {
        display: flex;
        justify-content: space-between;
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
      .profile-card { 
        padding: 0px; 
        margin-top: 20px;
    }
     .role-badge { 
        padding: 10px 25px; 
        margin: -20px 0px 20px 0px;
    }
      .chairman-card {
    padding: 30px 0px;
  }
  .rit_academics {
  padding: 0px;
}
}
@media (max-width: 414px) {  
    .about-layout {
        padding: 45px 15px 45px;
    }
    .about-rit {
      padding: 1px;
    }
    .feature-grid {
        padding: 10px 0px;
    }
    .feature-card { 
        text-align: justify;
        padding: 16px 10px;
    }
    .feature-icon {
        margin: 10px 0;
    }
    .feature-card h4 {
      margin: 0 0 8px;
      font-size: 16px;
      font-weight: 600; 
    }
    .feature-card p
    .feature-card h4
    .feature-card-content {
        display: flex;
        justify-content: space-between;
        display: grid;
        grid-template-columns: 1fr 1fr;
    } 
   .profile-card { 
        padding: 0px; 
        margin-top: 20px;
    }
    .role-badge { 
        padding: 6px 20px; 
        margin: -20px 0px 20px 0px;
    }
      .chairman-card {
    padding: 30px 0px;
  }
  .chairman-card p {
  margin: 0 0 -28px; 
  }
  .rit_academics {
  padding: 0px;
}
.eyebrow {
    padding: 6px 8px;
}
 
.panel-title {
    margin: 14px 0 5px;
     font-size: clamp(20px,2.8vw,36px); 
}
 .content-card {
       padding: 10px 0px;
  }
  .content-card p { 
  font-size: 14px;
  line-height: 1.4;
  color: #212529;
  font-weight:400;
}
.content-card h3 {
    font-weight:400;
}
.approval-list li {
    font-size: 12.5px;
  color: #212529;
  padding: 0;
  background: #F6F4EF;
  border-radius: 20px;
}
.content-card ul {
  margin-bottom:20px;
}
.content-card ul { 
  margin-top: 15px;
}
.sidebar-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 20px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid #ece7dd;
  font-weight: 600;
  font-size: 14px;
  color: #153a5c;
  transition: background .2s, color .2s, border-color .2s, transform .2s;
}
.rit_academics {
  padding:10px;
}
.page-hero {
  position: relative;
  background: #08233f;
  color: #fff;
  padding: 40px 0 40px;
  overflow: hidden;
}
 
.iqac-members-head h3 {
    font-weight: 700;
}
.iqac-lead-card h4 {
  margin: 0;
  font-weight: 600;
  font-size: clamp(16px,1.9vw,15px); 
  line-height: 1.3;
}
.panel-title {
  font-weight: 600;
}
.iqac-row .nm, .iqac-rep-item .nm {
          line-height: 0.6;
}
.iqac-label {
    display: block;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
    color: #0F4475;
    margin-bottom: 10px;
}
.iqac-row .nm, .iqac-rep-item .nm {
      font-weight: 700;
    font-size: 16px;
}
}

