/* SPPS — About page additions (works alongside home.css) */
.story-art{position:relative}
.story-img{min-height:400px;border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}
.story-img:hover img{transform:scale(1.04)}
.story-tag{position:absolute;right:-8px;bottom:24px;background:#fff;border-radius:16px;padding:14px 20px;box-shadow:var(--shadow);border-left:4px solid var(--secondary)}
.story-tag b{display:block;font-family:var(--serif);font-size:1.6rem;color:var(--secondary);line-height:1}
.story-tag span{font-size:.78rem;color:var(--muted)}
.story-q{margin:20px 0 14px;padding:18px 22px;border-left:4px solid var(--secondary);background:var(--mauve-tint);border-radius:0 14px 14px 0;
  font-family:var(--serif);font-size:1.2rem;line-height:1.45;color:var(--primary)}
.story-end{margin:0;color:#45454f;font-weight:600}

.phil{display:grid;grid-template-columns:1fr;gap:22px}

.vm{display:grid;grid-template-columns:1fr;gap:22px}
.vm-card{border-radius:22px;padding:32px 28px;position:relative;overflow:hidden;border:1px solid var(--line);transition:transform .25s,box-shadow .25s}
.vm-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.vm-card .f-ico{width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;background:#fff}
.vm-card h3{font-size:1.45rem;margin-bottom:10px}
.vm-card p{margin:0;color:#45454f}
.vm-card.vision{background:var(--primary-tint)}
.vm-card.vision .f-ico{color:var(--primary)}
.vm-card.mission{background:var(--mauve-tint)}
.vm-card.mission .f-ico{color:var(--secondary)}
.vm-card::after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-60px;top:-60px;background:rgba(255,255,255,.55)}

.values-title{text-align:center;margin:48px 0 24px;font-size:1.5rem}
.values{display:grid;grid-template-columns:1fr;gap:16px}
.value{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px 22px;transition:transform .2s,box-shadow .2s;border-top:3px solid var(--sky)}
.value:nth-child(2n){border-top-color:var(--secondary)}
.value:nth-child(3n){border-top-color:var(--primary)}
.value:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.v-num{font-family:var(--serif);font-weight:700;color:var(--lmauve);font-size:.95rem}
.value h4{font-family:var(--serif);color:var(--primary);font-size:1.2rem;margin:4px 0 8px}
.value p{margin:0;color:var(--muted);font-size:.93rem}

.lead-img{min-height:380px;border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}
.lead-img.has-img img{object-position:center 30%}

.glance{display:grid;grid-template-columns:1fr;gap:14px}
.g-item{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);padding:20px 22px;display:flex;flex-direction:column;gap:6px}
.g-k{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--lblue)}
.g-v{font-family:var(--serif);color:#fff;font-size:1.7rem;font-weight:600;line-height:1.15}
.g-v.sm{font-size:1.12rem}
.g-cta{justify-content:center;align-items:flex-start;background:transparent;border-style:dashed}

@media (min-width:721px){
  .vm{grid-template-columns:1fr 1fr}
  .values{grid-template-columns:repeat(2,1fr)}
  .glance{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:960px){
  .phil{grid-template-columns:1fr 1.1fr;gap:56px;align-items:start}
  .values{grid-template-columns:repeat(5,1fr)}
  .glance{grid-template-columns:repeat(4,1fr)}
  .story-img{min-height:520px}
  .lead-img{min-height:440px}
}
@media (max-width:720px){ .story-tag{right:10px} }

/* ---- Our Institutions ---- */
.insts{position:relative;overflow:hidden}
.inst-grid{display:grid;grid-template-columns:1fr;gap:16px}
.inst{position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px 22px 22px;display:flex;flex-direction:column;gap:10px;
  transition:transform .25s,box-shadow .25s,border-color .25s}
.inst:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:var(--lmauve)}
.inst-ico{width:50px;height:50px;border-radius:14px;background:var(--sky-tint);color:var(--royal);display:flex;align-items:center;justify-content:center}
.inst:nth-child(2n) .inst-ico{background:var(--mauve-tint);color:var(--secondary)}
.inst-ico svg{width:26px;height:26px}
.inst h3{font-size:1.18rem;line-height:1.3;margin:4px 0 0}
.inst-meta{display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:.9rem}
.inst-board{align-self:flex-start;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary);background:var(--primary-tint);padding:4px 10px;border-radius:999px}
.inst-loc{margin-top:auto;padding-top:10px;border-top:1px dashed var(--line);display:flex;gap:6px;align-items:center;color:var(--royal);font-weight:600;font-size:.86rem}
.inst-loc svg{width:16px;height:16px;color:var(--secondary)}
.inst-here{background:linear-gradient(150deg,var(--primary),#3a3794 60%,var(--secondary) 140%);border-color:transparent;color:#fff}
.inst-here h3{color:#fff}
.inst-here .inst-meta{color:#dcdaf3}
.inst-here .inst-board{background:rgba(255,255,255,.16);color:#fff}
.inst-here .inst-ico{background:rgba(255,255,255,.14)!important;color:#fff!important}
.inst-here .inst-loc{color:#fff;border-top-color:rgba(255,255,255,.25)}
.inst-here .inst-loc svg{color:var(--lmauve)}
.inst-here-tag{position:absolute;top:16px;right:16px;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#fff;color:var(--secondary);padding:4px 10px;border-radius:999px}
.techno{margin-top:24px;display:grid;grid-template-columns:1fr;gap:18px;align-items:center;padding:28px;border-radius:22px;background:#fff;border:1px solid var(--line);
  border-left:5px solid var(--secondary);box-shadow:var(--shadow-sm)}
.techno-ico{width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,var(--secondary),var(--primary));color:#fff;display:flex;align-items:center;justify-content:center}
.techno-ico svg{width:32px;height:32px}
.techno-k{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--secondary)}
.techno h3{font-size:1.45rem;margin:4px 0 8px}
.techno p{margin:0;color:#4a4a55}
@media (min-width:721px){ .inst-grid{grid-template-columns:repeat(2,1fr)} .techno{grid-template-columns:auto 1fr} }
@media (min-width:960px){ .inst-grid{grid-template-columns:repeat(5,1fr)} }

/* ---- Faculty ---- */
.fac-photo{position:relative;margin:0 0 10px;border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}
.fac-photo img{display:block;width:100%;height:auto;transition:transform 1.2s}
.fac-photo:hover img{transform:scale(1.03)}
.fac-photo figcaption{position:absolute;left:16px;bottom:16px;background:rgba(255,255,255,.95);color:var(--primary);font-weight:700;font-size:.8rem;padding:8px 14px;border-radius:999px}
.fac-grid{display:grid;grid-template-columns:1fr;gap:14px}
.fac-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 20px;transition:transform .25s,box-shadow .25s}
.fac-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.fac-card .f-ico{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--sky-tint);color:var(--royal);margin-bottom:14px}
.fac-card:nth-child(2n) .f-ico{background:var(--mauve-tint);color:var(--secondary)}
.fac-n{position:absolute;right:16px;top:12px;font-family:var(--serif);font-weight:700;color:var(--lmauve);font-size:.95rem}
.fac-card h4{font-family:var(--serif);color:var(--primary);font-size:1.15rem;margin:0 0 6px}
.fac-card p{margin:0;color:var(--muted);font-size:.9rem}
/* ---- Alumni ---- */
.alum-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:start}
.alum h2{font-size:clamp(1.9rem,4.4vw,2.9rem)}
.alum-lede{color:#45454f;margin:16px 0 22px}
.alum-pts{display:grid;gap:12px}
.alum-pts>div{display:grid;grid-template-columns:44px 1fr;column-gap:12px;align-items:center;padding:14px 16px;background:var(--bg);border:1px solid var(--line);border-radius:16px}
.alum-pts span{grid-row:span 2;width:44px;height:44px;border-radius:12px;background:var(--mauve-tint);display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.alum-pts b{color:var(--primary)}
.alum-pts small{color:var(--muted)}
.alum-form{border-radius:24px!important;padding:30px!important;position:relative;overflow:hidden;box-shadow:0 40px 80px -40px rgba(46,43,131,.45)!important}
.alum-form::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--primary),var(--secondary),var(--sky))}
.alum-form-head{margin-bottom:18px}
.alum-form-head b{display:block;font-family:var(--serif);color:var(--primary);font-size:1.3rem}
.alum-form-head small{color:var(--muted)}
@media (min-width:721px){ .fac-grid{grid-template-columns:repeat(2,1fr)} }
@media (min-width:960px){ .fac-grid{grid-template-columns:repeat(5,1fr)} .alum-grid{grid-template-columns:.9fr 1.1fr;gap:56px} }
