/* Server-rendered content and validated form states. */
.empty-state { padding: 40px 24px; text-align: center; color: var(--text-light, #667085); }
.article-body { overflow-wrap: anywhere; }
.article-body img, .article-body video { max-width: 100%; height: auto; }
.article-body iframe { max-width: 100%; }
.article-body table { display: block; max-width: 100%; overflow-x: auto; }
.validation-summary-errors, .field-validation-error { color: #b42318; }
.validation-summary-valid, .field-validation-valid { display: none; }
.input-validation-error { border-color: #b42318 !important; }
.form-status { margin-bottom: 20px; padding: 14px 18px; border-radius: 8px; background: #f1f5f9; }
.form-status.success { color: #17653a; background: #edf8f0; }
.captcha-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.captcha-row input { flex: 1; min-width: 120px; }
.captcha-row img { cursor: pointer; }
.news-item-link, .notice-item-link { color: inherit; text-decoration: none; }
.news-list, .news-sidebar, .news-content, .news-card-body { min-width:0; overflow-wrap:anywhere; }
.hero-slide-bg img { width:100%; height:100%; object-fit:cover; }
.gallery-item[type=button] { padding:0; border:0; font:inherit; text-align:left; background:transparent; }
.gallery-caption { display:block; }
#campus-album { scroll-margin-top:calc(var(--nav-height) + 24px); }
.news-tools { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; margin-bottom:36px; }
.news-tools .gallery-filters { margin-bottom:0; justify-content:flex-start; }
.news-search { display:flex; gap:8px; max-width:100%; }
.news-search input { min-width:0; max-width:260px; border:1px solid var(--border); border-radius:999px; padding:10px 16px; font:inherit; }
#news-count { color:var(--text-muted); margin-bottom:22px; }
a.news-card { color:inherit; display:block; }
.article-breadcrumb { margin-bottom:32px; color:var(--text-muted); }
.related-list { max-width:860px; margin:0 auto; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.captcha-row button { background:#fff; border:1px solid #dde3eb; border-radius:6px; padding:4px; cursor:pointer; }
:focus-visible { outline:3px solid var(--accent,#d4a853); outline-offset:4px; }
@media(max-width:640px) { .news-search { width:100%; } .news-search input { flex:1; } }

/* Client review 2026-10-27: navigation, admissions and news-image alignment. */
.nav .container { gap:16px; }
.nav-logo { flex-shrink:0; }
.nav-links { gap:2px; }
.nav-links a { flex-shrink:0; white-space:nowrap; padding:0 12px; font-size:1rem; }
.steps-flow { grid-template-columns:repeat(3,minmax(0,1fr)); }
.steps-flow .step-item { display:flex; flex-direction:column; align-items:center; }
.tuition-table { min-width:1100px; }
.tuition-table th, .tuition-table td { padding:14px 12px; }
.tuition-table th { white-space:nowrap; }
.tuition-table td { white-space:nowrap; }
.tuition-table .bedding-note { display:block; font-size:.85em; font-weight:400; white-space:nowrap; }
.article-cover img { display:block; width:100%; height:auto; }
.article-body img { display:block; margin-left:auto; margin-right:auto; }
.feature-detail-image img.graduate-results { object-fit:contain; background:#fff; }
.feature-detail-image:hover img.graduate-results { transform:none; }
@media(min-width:1025px) and (max-width:1200px) {
  .nav-links a { padding:0 8px; font-size:.9rem; }
  .nav-logo .logo-img { height:40px; }
}
@media(max-width:1024px) {
  .nav-links { display:none; position:absolute; top:var(--nav-height); left:0; right:0; background:#fff; flex-direction:column; box-shadow:var(--shadow-lg); padding:8px 0; height:auto; }
  .nav-links.active { display:flex; }
  .nav-links a { padding:14px 20px; border-bottom:1px solid var(--border); height:auto; }
  .nav-links a::after { display:none; }
  .nav-toggle { display:flex; }
}
@media(max-width:768px) { .steps-flow { grid-template-columns:1fr; } }
