/* Shared public-site palette: navy for trust, sky blue for openness, coral for calls to action. */
:root { --navy:#102a52; --deep:#081d3b; --blue:#2077ca; --sky:#dff2ff; --sky-strong:#a9dcf8; --coral:#ef765c; --coral-dark:#bb4e3e; --cloud:#f5fbff; --line:#c8e3f5; --muted:#587391; }
body { background:var(--cloud); color:var(--navy); }
.site-header { background:rgba(250,253,255,.96); border-bottom-color:var(--line); }
.notice-bar { background:linear-gradient(90deg,var(--navy),#164f8e); }
.brand span,.nav-dropdown-toggle,.portal-access button,.portal-access a { color:var(--navy); }
.nav-flyout { border-color:var(--line); box-shadow:0 18px 42px rgba(8,29,59,.16); }
.nav-flyout a:hover,.nav-flyout button:hover { background:var(--sky); color:var(--navy); }
.login-button,.primary-button { background:linear-gradient(135deg,var(--navy),var(--blue)); box-shadow:0 10px 22px rgba(32,119,202,.2); }
.login-button:hover,.primary-button:hover { background:linear-gradient(135deg,#0a2142,#155caa); }
.applicant-login,.staff-login { border-color:var(--line); background:#eff9ff; }
.hero::after { background:linear-gradient(90deg,rgba(8,29,59,.88),rgba(16,42,82,.55),rgba(32,119,202,.2)); }
.hero-highlight { border-left-color:var(--coral); background:rgba(8,29,59,.5); }
.hero-dots button.is-active { background:var(--coral); }
.hero-arrow:hover { background:var(--coral); }
.announcement-rail { background:linear-gradient(135deg,#e7f6ff,#f7fcff); border-color:var(--line); }
.announcement-rail article + article { border-color:var(--line); }
.rail-label,.eyebrow { color:var(--coral-dark); }
.section,.programme-filters,.media-library { border-color:var(--line); }
.about-points article,.link-grid a,.pathway-grid article,.programme-grid article,.student-grid article,.media-grid article,.media-library-card,.principal-introduction { border-color:var(--line); background:linear-gradient(145deg,#fff,#f3faff); box-shadow:0 12px 28px rgba(14,68,118,.06); }
.link-grid a:hover,.programme-grid article:hover { border-color:var(--coral); transform:translateY(-3px); }
.programme-filters button.is-active,.programme-filters button:hover { background:var(--navy); border-color:var(--navy); }
.admissions-content { background:linear-gradient(150deg,#f5fbff,#e5f5ff); }
.admission-checklist-section,.research-section { background:linear-gradient(135deg,var(--navy),#185eaa); }
.student-login-card { background:linear-gradient(135deg,var(--navy),#246fba) !important; }
.contact-section { background:#edf8ff; }
.whatsapp-float { background:#128a60; }
@media (max-width: 760px) { .site-header { border-bottom-color:var(--line); } .nav-flyout { background:#fff; } }
