/* =========================================================
   PLACEMENT 2023 PAGE — page-specific only.
   Loaded solely by placement-2023.php via $pageExtraCss.
   ========================================================= */

/* ---- Stat strip — overlaps the banner's bottom edge (same pattern
   as about.php's banner-fact-strip) ---- */
.p23-stat-strip{
  position:relative;
  z-index:5;
  margin-top:-46px;
  margin-bottom:56px;
}
.p23-stat-strip-inner{
  max-width:var(--container);
  margin:0 auto;
  background:#fff;
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-card);
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  padding:8px 12px;
}
.p23-stat-strip-inner li{
  display:flex;
  align-items:center;
  gap:14px;
  padding:20px 22px;
  border-right:1px solid var(--line);
}
.p23-stat-strip-inner li:last-child{ border-right:none; }
.p23-stat-icon{
  flex-shrink:0;
  width:44px; height:44px;
  border-radius:12px;
  background:var(--green-100);
  color:var(--green-700);
  display:flex;
  align-items:center;
  justify-content:center;
}
.p23-stat-icon svg{ width:21px; height:21px; }
.p23-stat-value{
  display:block;
  font-family:'Poppins',sans-serif;
  font-weight:800;
  font-size:1.25rem;
  color:var(--green-900);
  line-height:1.15;
}
.p23-stat-label{ font-size:.72rem; color:var(--ink-soft); font-weight:600; }

@media (max-width:900px){
  .p23-stat-strip-inner{ grid-template-columns:repeat(2, 1fr); }
  .p23-stat-strip-inner li:nth-child(2n){ border-right:none; }
  .p23-stat-strip-inner li{ border-bottom:1px solid var(--line); }
  .p23-stat-strip-inner li:nth-last-child(-n+2){ border-bottom:none; }
}
@media (max-width:560px){
  .p23-stat-strip-inner{ grid-template-columns:1fr; padding:4px 16px; }
  .p23-stat-strip-inner li{ border-right:none; }
}

/* ---- Section scaffolding ---- */
.p23-section{ padding:0 0 96px; }
.p23-kicker{
  display:inline-flex; align-items:center; gap:10px;
  font-size:.76rem; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:var(--green-700); margin-bottom:12px;
}
.p23-kicker::before{ content:''; width:22px; height:2px; background:var(--gold-500); }
.p23-heading{
  font-size:clamp(1.55rem, 2.4vw, 2.1rem);
  font-weight:800; color:var(--green-900); max-width:640px; margin:0 0 12px;
}
.p23-lede{
  max-width:640px;
  font-size:.98rem; line-height:1.7; color:var(--ink-soft);
  margin:0 0 44px;
}

/* ---- Student card grid ---- */
.p23-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));
  gap:22px;
}
.p23-card{
  position:relative;
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  padding:26px 20px 22px;
  text-align:center;
  box-shadow:var(--shadow-card);
  transition:transform .2s ease, box-shadow .2s ease;
}
.p23-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 42px -18px rgba(10,61,38,.35);
}
.p23-card-photo{
  width:88px; height:88px;
  margin:0 auto 16px;
  border-radius:50%;
  overflow:hidden;
  border:3px solid var(--green-100);
}
.p23-card-photo img{
  width:100%; height:100%;
  object-fit:cover;
  display:block;
}
.p23-card:hover .p23-card-photo{ border-color:var(--gold-500); }

.p23-card-name{
  font-size:.92rem;
  font-weight:800;
  color:var(--green-900);
  line-height:1.35;
  margin:0 0 6px;
}
.p23-card-stream{
  display:inline-block;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.03em;
  color:var(--green-700);
  background:var(--green-100);
  border-radius:999px;
  padding:3px 11px;
  margin-bottom:14px;
}
.p23-card-divider{
  width:32px; height:2px;
  margin:0 auto 14px;
  background:var(--gold-500);
  border-radius:2px;
}
.p23-card-company{ display:flex; flex-direction:column; gap:3px; }
.p23-card-company-label{
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ink-soft);
}
.p23-card-company-name{
  font-size:.88rem;
  font-weight:700;
  color:var(--green-800);
  line-height:1.35;
}
.p23-card-designation{
  font-size:.78rem;
  color:var(--ink-soft);
  line-height:1.4;
}

@media (max-width:480px){
  .p23-grid{ grid-template-columns:repeat(2, 1fr); gap:14px; }
  .p23-card{ padding:20px 14px 18px; }
}
