/* Counseling Centre — public Phase 3 */
.cp-center{--cp-indigo:#263e83;--cp-tint:#eaf1ff;color:var(--bs-body-color,#23314a)}.cp-hero{border-radius:26px;padding:clamp(24px,5vw,56px);background:linear-gradient(126deg,#172c65,#365eb0);color:#fff}.cp-eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:.82rem;font-weight:750;margin-bottom:12px}.cp-hero h1{max-width:800px;font-size:clamp(1.9rem,4.5vw,3.2rem);font-weight:800}.cp-hero p{max-width:650px;opacity:.95;line-height:1.7}.cp-hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.cp-link{color:#fff;text-decoration:underline;font-weight:700}.cp-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.cp-card,.cp-event-card,.cp-history-item{border:1px solid var(--bs-border-color,#d8e0ed);background:var(--bs-body-bg,#fff);border-radius:22px;padding:26px;box-shadow:0 8px 32px rgba(25,44,88,.07)}.cp-card h2,.cp-section h2{font-weight:800;font-size:1.5rem;margin:15px 0}.cp-card p,.cp-event-card p{line-height:1.65}.cp-icon{display:inline-flex;width:50px;height:50px;align-items:center;justify-content:center;border-radius:16px;background:#e8efff;color:#173b8b;font-size:1.5rem}.cp-form{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.cp-form textarea,.cp-form select{width:100%;border-radius:12px}.cp-help,.cp-muted{color:var(--bs-secondary-color,#5b6575);font-size:.91rem}.cp-remote{background:linear-gradient(150deg,var(--bs-body-bg,#fff),rgba(43,113,222,.07))}.cp-remote-options{display:flex;gap:12px;flex-wrap:wrap}.cp-event-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(275px,100%),1fr));gap:18px}.cp-event-card{padding:0;overflow:hidden}.cp-cover img{width:100%;height:190px;object-fit:cover}.cp-event-body{padding:22px}.cp-event-body h3{font-size:1.2rem;font-weight:750}.cp-date{font-size:.85rem;color:var(--bs-primary,#3863b1);font-weight:750}.cp-detail-cover{max-width:100%;max-height:440px;object-fit:contain;border-radius:16px;margin-bottom:20px}.cp-description{white-space:normal}.cp-details{display:flex;gap:28px;flex-wrap:wrap}.cp-details dt{font-size:.85rem;color:var(--bs-secondary-color,#667)}.cp-details dd{font-weight:700}.cp-history{display:grid;gap:12px}.cp-history-item{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:18px 22px}.cp-history-item form{flex-shrink:0}@media(max-width:767px){.cp-grid{grid-template-columns:1fr}.cp-history-item{align-items:flex-start;flex-direction:column}.cp-card{padding:20px}.cp-hero{border-radius:18px}}

/* Phase 6: preserve readable appointment details on narrow displays. */
.cp-history-item>div{min-width:0;overflow-wrap:anywhere}.cp-history-item p{overflow-wrap:anywhere}
.cp-history-item button,.cp-remote-options .btn{min-height:44px}
@media(max-width:480px){.cp-remote-options{flex-direction:column;align-items:stretch}.cp-remote-options .btn{width:100%}.cp-history-item{padding:16px}.cp-hero-actions>.btn{width:100%;text-align:center}}
