/* ── Cards ── */

/* Feature card */
.feature-card{background:#fff;border:1px solid var(--color-border-subtle);border-radius:var(--radius-2xl);padding:var(--space-7);transition:box-shadow var(--dur-normal),transform var(--dur-normal)}
.feature-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}
.feature-icon{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--color-blue-100);color:var(--color-brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-5)}
.feature-icon svg{width:26px;height:26px}
.feature-title{font-size:var(--text-h5);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-3)}
.feature-description{font-size:var(--text-body-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}

/* Stat card */
.stat-card{background:var(--color-brand-primary);border-radius:var(--radius-2xl);padding:var(--space-7) var(--space-6);text-align:center;color:#fff}
.stat-value{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,3.5rem);font-weight:900;color:#fff;line-height:1;margin-bottom:var(--space-3)}
.stat-label{font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.7)}

/* Campus card */
.campus-card{background:#fff;border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border-subtle);transition:box-shadow var(--dur-normal),transform var(--dur-normal)}
.campus-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}
.campus-card-image{height:220px;position:relative;overflow:hidden;background:var(--color-blue-100)}
.campus-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.campus-card:hover .campus-card-image img{transform:scale(1.05)}
.campus-card-badge{position:absolute;top:var(--space-4);left:var(--space-4)}
.campus-card-body{padding:var(--space-6)}
.campus-card-location{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-3)}
.campus-card-location svg{width:12px;height:12px;color:var(--color-brand-primary)}
.campus-card-title{font-size:var(--text-h5);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-3);line-height:var(--leading-snug)}
.campus-card-description{font-size:var(--text-body-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-5)}

/* Technical programme card */
.tech-card{background:#fff;border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border-subtle);transition:box-shadow var(--dur-normal),transform var(--dur-normal);display:flex;flex-direction:column}
.tech-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}
.tech-card-img{height:180px;overflow:hidden;background:var(--color-grey-100)}
.tech-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.tech-card:hover .tech-card-img img{transform:scale(1.05)}
.tech-card-body{padding:var(--space-5);flex:1;display:flex;flex-direction:column}
.tech-card-code{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand-accent);margin-bottom:var(--space-2)}
.tech-card-title{font-size:1rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-3);line-height:1.3}
.tech-card-desc{font-size:.8125rem;color:var(--color-text-secondary);line-height:var(--leading-relaxed);flex:1}

/* Achievement card */
.achievement-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);padding:var(--space-6);transition:background var(--dur-normal)}
.achievement-card:hover{background:rgba(255,255,255,.1)}

/* Info card */
.info-card{background:#fff;border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm);border-left:4px solid var(--color-brand-primary)}

/* Campus feature pill */
.campus-feature-pill{background:var(--color-blue-50);color:var(--color-blue-700);padding:.3rem .8rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600}
