/* Monarch University — 2026 editorial university UI upgrade */

:root {
  --mu-ink: #1c1d2b;
  --mu-ink-soft: #55586a;
  --mu-primary: #29247a;
  --mu-primary-deep: #171542;
  --mu-primary-soft: #ecebff;
  --mu-gold: #d7a62f;
  --mu-gold-soft: #f4e5b5;
  --mu-oat: #f5f2ec;
  --mu-paper: #fff;
  --mu-line: #ddd9d1;
  --mu-success: #238153;
  --mu-shadow-sm: 0 8px 24px rgba(23, 21, 66, .08);
  --mu-shadow-lg: 0 22px 65px rgba(23, 21, 66, .16);
  --mu-radius-sm: 5px;
  --mu-radius: 5px;
  --mu-radius-lg: 5px;
  --mu-shell: 1240px;
  --mu-serif: "Bricolage Grotesque", "Hanken Grotesk", Georgia, serif;
  --mu-sans: "Hanken Grotesk", Arial, sans-serif;
}

html {
  overflow-x: clip;
  scroll-behavior: smooth;
}
body {
  background: var(--mu-paper) !important;
  color: var(--mu-ink) !important;
  font-family: var(--mu-sans) !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
}

body :where(p, li, input, select, textarea, button) { font-family: var(--mu-sans); }
body :where(h1, h2, .h0, .h1, .h2) {
  color: var(--mu-primary-deep);
  font-family: var(--mu-serif) !important;
  font-weight: 400 !important;
  letter-spacing: -.035em !important;
}
body :where(h3, h4, h5, h6, .h3, .h4, .h5, .h6) {
  font-family: var(--mu-serif) !important;
  letter-spacing: -.02em !important;
}
body :where(p, li) { color: inherit; }
img { background-color: #e9e6df; }
a { text-underline-offset: .2em; }

.mu-shell,
.container {
  box-sizing: border-box;
}
.mu-shell {
  margin-inline: auto;
  max-width: var(--mu-shell);
  padding-inline: 28px;
  width: 100%;
}
.mu-visually-hidden {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.mu-eyebrow,
.preheading,
.outline .preheading,
.label-font {
  color: var(--mu-primary) !important;
  font-family: var(--mu-sans) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .13em !important;
  line-height: 1.3 !important;
  text-transform: uppercase !important;
}
.mu-eyebrow { margin: 0 0 14px; }

/* Accessibility and interaction */
.skip-link {
  background: var(--mu-gold) !important;
  border-radius: 0 0 var(--mu-radius-sm) 0;
  color: #161325 !important;
  font-weight: 700;
  padding: 12px 18px !important;
}
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--mu-gold) !important;
  outline-offset: 3px !important;
}
button, a { -webkit-tap-highlight-color: rgba(41, 36, 122, .14); }
.animate,
.fade-up { opacity: 1 !important; transform: none !important; }

/* Standard university header */
.header {
  background: #fff !important;
  box-shadow: 0 1px 0 rgba(23, 21, 66, .1) !important;
  left: 0 !important;
  margin: 0 !important;
  position: sticky !important;
  right: 0 !important;
  top: 0 !important;
  transition: box-shadow .2s ease !important;
  width: 100% !important;
  z-index: 1000 !important;
}
.header.mu-header--scrolled { box-shadow: 0 10px 35px rgba(23, 21, 66, .12) !important; }
.mu-utility {
  background: var(--mu-primary-deep);
  color: #fff;
  min-height: 38px;
}
.mu-utility__inner {
  align-items: center;
  display: flex;
  justify-content: space-between;
  min-height: 38px;
}
.mu-utility__status {
  align-items: center;
  color: rgba(255,255,255,.82) !important;
  display: flex;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .02em;
  margin: 0;
}
.mu-utility__status span {
  background: var(--mu-gold);
  border-radius: 50%;
  height: 7px;
  margin-right: 9px;
  width: 7px;
}
.mu-utility__nav { align-items: center; display: flex; gap: 24px; }
.mu-utility__nav a {
  color: rgba(255,255,255,.9) !important;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
}
.mu-utility__nav a:hover { color: var(--mu-gold-soft) !important; }
.header__container {
  background: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 auto !important;
  max-width: var(--mu-shell) !important;
  min-height: 84px !important;
  padding: 0 28px !important;
  width: 100% !important;
}
.header__row { align-items: center !important; min-height: 84px !important; }
.header__logo { height: 50px !important; margin-right: 12px !important; }
.header__logo-link { min-height: 52px; }
.header__logo-name {
  color: var(--mu-primary-deep) !important;
  font-family: var(--mu-serif) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: -.015em !important;
}
.header__logo-sub {
  color: var(--mu-primary) !important;
  font-size: 9px !important;
  letter-spacing: .2em !important;
}
.header__link,
.header__search-link {
  color: var(--mu-ink) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
.header__item { position: relative; }
.header__item > .header__link::after {
  background: var(--mu-primary);
  bottom: -9px;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .2s ease;
  width: 100%;
}
.header__item:hover > .header__link::after,
.header__link[aria-current="page"]::after { transform: scaleX(1); }
.header__menu > .header__item:hover,
.header__menu > .header__item:focus-within { background-color: transparent; }
.header__button {
  background: var(--mu-primary) !important;
  border: 1px solid var(--mu-primary) !important;
  border-radius: 999px !important;
  min-height: 46px !important;
}
.header__button .btn__label { color: #fff !important; font-size: 13px !important; font-weight: 700 !important; }
.header__button .btn__icon { background: var(--mu-gold) !important; color: var(--mu-primary-deep) !important; }
.header__sub-menu {
  background: #fff !important;
  border: 1px solid var(--mu-line) !important;
  border-radius: 0 0 var(--mu-radius) var(--mu-radius) !important;
  box-shadow: var(--mu-shadow-lg) !important;
  max-height: min(68vh, 620px) !important;
  overflow-y: auto !important;
}
.header__sub-menu-link { color: var(--mu-ink) !important; }
.header__sub-menu-link:hover { background: var(--mu-oat) !important; color: var(--mu-primary) !important; }
.header-overlay { background: rgba(12, 11, 36, .4) !important; }

/* Buttons */
.btn { min-height: 46px; }
.btn__label {
  align-items: center !important;
  border-radius: 999px !important;
  display: flex !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  min-height: 46px !important;
  padding-inline: 22px !important;
}
.btn__icon {
  height: 46px !important;
  min-width: 46px !important;
  width: 46px !important;
}
.btn--primary .btn__label,
.btn--primary .btn__icon { background: var(--mu-primary) !important; color: #fff !important; }
.btn:hover .btn__icon { transform: translateX(3px); }

/* Homepage hero */
.home-hero--alternative {
  background: var(--mu-primary-deep) !important;
  height: clamp(640px, 76vh, 820px) !important;
  margin: 0 !important;
  min-height: 640px !important;
  overflow: hidden !important;
  position: relative !important;
}
.home-hero--alternative::before {
  background: linear-gradient(90deg, rgba(14,13,45,.91) 0%, rgba(14,13,45,.73) 43%, rgba(14,13,45,.14) 76%, rgba(14,13,45,.04) 100%);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 2;
}
.home-hero__swiper-wrapper,
.home-hero__swiper-wrapper .swiper-slide,
.home-hero__image {
  height: 100% !important;
  inset: 0 !important;
  position: absolute !important;
  width: 100% !important;
}
.home-hero__image { object-fit: cover !important; object-position: center 44% !important; }
.home-hero__container {
  align-items: flex-start !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  justify-content: flex-end !important;
  margin: 0 auto !important;
  max-width: var(--mu-shell) !important;
  padding: 0 28px 88px !important;
  position: relative !important;
  width: 100% !important;
  z-index: 4 !important;
}
.home-hero__heading {
  color: #fff !important;
  font-size: clamp(52px, 6.4vw, 88px) !important;
  line-height: .96 !important;
  margin: 0 0 28px !important;
  max-width: 780px !important;
  text-align: left !important;
  width: 100% !important;
}
.home-hero__heading span { display: block; }
.home-hero__heading span:last-child { color: var(--mu-gold-soft) !important; }
.home-hero__inner-container {
  align-items: flex-start !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 28px !important;
  justify-content: flex-start !important;
  max-width: 780px !important;
  width: 100% !important;
}
.home-hero__content {
  border-left: 3px solid var(--mu-gold) !important;
  margin: 0 !important;
  max-width: 610px !important;
  padding-left: 20px !important;
}
.home-hero__content p { color: rgba(255,255,255,.92) !important; font-size: 19px !important; line-height: 1.55 !important; margin: 0 !important; }
.mu-hero-actions { align-items: center; display: flex; flex: 0 0 auto; gap: 12px; justify-content: flex-start; margin-left: 0; }
.mu-hero-action {
  align-items: center;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 999px;
  color: #fff !important;
  display: inline-flex;
  font-size: 14px;
  font-weight: 700;
  gap: 14px;
  justify-content: center;
  min-height: 50px;
  padding: 0 22px;
  text-decoration: none;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.mu-hero-action--primary { background: var(--mu-gold); border-color: var(--mu-gold); color: var(--mu-primary-deep) !important; }
.mu-hero-action--primary:hover { background: #edc863; border-color: #edc863; }
.mu-hero-action--secondary:hover { background: #fff; color: var(--mu-primary-deep) !important; }
.home-hero__pagination,
.home-hero__arrows,
.home-hero__outline-svg { display: none !important; }

/* High-intent pathway bar */
.mu-pathways {
  background: #fff;
  border-bottom: 1px solid var(--mu-line);
  margin: 0;
  position: relative;
  width: 100%;
  z-index: 1;
}
.mu-pathways__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-inline: auto;
  max-width: var(--mu-shell);
  padding: 0 28px;
}
.mu-pathways a {
  color: var(--mu-ink) !important;
  min-height: 142px;
  padding: 25px 26px;
  position: relative;
  text-decoration: none;
  transition: background .2s ease, color .2s ease;
}
.mu-pathways a + a { border-left: 1px solid var(--mu-line); }
.mu-pathways a:first-child { border-left: 1px solid var(--mu-line); }
.mu-pathways a:last-child { border-right: 1px solid var(--mu-line); }
.mu-pathways a:hover { background: var(--mu-primary); color: #fff !important; }
.mu-pathways span { color: var(--mu-primary); display: block; font-size: 11px; font-weight: 700; letter-spacing: .12em; margin-bottom: 16px; }
.mu-pathways strong { display: block; font-size: 18px; line-height: 1.25; margin-bottom: 7px; }
.mu-pathways small { color: var(--mu-ink-soft); display: block; font-size: 13px; line-height: 1.4; }
.mu-pathways a:hover :where(span, small) { color: rgba(255,255,255,.78); }

/* Verified facts */
.mu-facts { background: var(--mu-oat); padding: 94px 0 78px; }
.mu-facts--compact { padding: 68px 0; }
.mu-facts__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mu-facts__grid article { border-left: 1px solid #cbc6bc; min-height: 130px; padding: 5px 28px; }
.mu-facts__grid article:last-child { border-right: 1px solid #cbc6bc; }
.mu-facts__grid strong {
  color: var(--mu-primary-deep);
  display: block;
  font-family: var(--mu-serif);
  font-size: clamp(37px, 4vw, 58px);
  font-weight: 400;
  letter-spacing: -.04em;
  line-height: 1;
  margin-bottom: 16px;
}
.mu-facts__grid span { color: var(--mu-ink-soft); display: block; font-size: 14px; line-height: 1.45; max-width: 210px; }
.mu-facts__source { color: #696b77 !important; font-size: 12px; margin: 26px 28px 0; }
.mu-facts__source a { color: var(--mu-primary) !important; font-weight: 700; }

/* Consistent section headings */
.mu-section-heading { align-items: end; display: grid; gap: 50px; grid-template-columns: 1.2fr .8fr; margin-bottom: 46px; }
.mu-section-heading h2 {
  font-size: clamp(40px, 5vw, 64px);
  line-height: 1.03;
  margin: 0;
  max-width: 720px;
}
.mu-section-heading > p { color: var(--mu-ink-soft) !important; font-size: 17px; margin: 0; }

/* Homepage content cards */
.home-page-cards {
  background: #fff !important;
  margin: 0 !important;
  padding: 96px 0 !important;
}
.home-page-cards__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; }
.home-page-cards__preheading { margin-bottom: 12px !important; }
.home-page-cards__heading {
  color: var(--mu-primary-deep) !important;
  font-size: clamp(42px, 5vw, 66px) !important;
  line-height: 1 !important;
  margin: 0 auto 46px !important;
  max-width: 780px !important;
}
.home .home-page-cards__row {
  display: grid !important;
  gap: 24px !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  margin: 0 !important;
}
.home .home-page-cards__col { display: block !important; max-width: none !important; padding: 0 !important; width: auto !important; }
.home .home-page-cards__card {
  border-radius: var(--mu-radius) !important;
  box-shadow: none !important;
  height: 430px !important;
  min-height: 430px !important;
  overflow: hidden !important;
}
.home .home-page-cards__card::after { background: linear-gradient(0deg, rgba(17,15,53,.92) 0%, rgba(17,15,53,.12) 68%); content: ""; inset: 0; position: absolute; z-index: 1; }
.home .page-card__image,
.home .page-card__image img { height: 100% !important; min-height: 100% !important; object-fit: cover !important; width: 100% !important; }
.home .page-card__overlay { display: none !important; }
.home .page-card__body { bottom: 0 !important; padding: 30px !important; top: auto !important; z-index: 3 !important; }
.home .page-card__preheading { color: var(--mu-gold-soft) !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .12em !important; text-transform: uppercase !important; }
.home .page-card__heading { color: #fff !important; font-size: 28px !important; line-height: 1.08 !important; }
.home .page-card__content { max-width: 470px !important; }
.home .page-card__content p { color: rgba(255,255,255,.82) !important; font-size: 14px !important; line-height: 1.5 !important; }
.home .page-card__icon { background: var(--mu-gold) !important; bottom: 28px !important; color: var(--mu-primary-deep) !important; right: 28px !important; z-index: 4 !important; }
.home-page-cards__bottom-svg { display: none !important; }

/* Faculty editorial splits */
.home .media-textarea { background: var(--mu-oat) !important; margin: 0 !important; padding: 58px 0 !important; }
.home .media-textarea + .media-textarea { padding-top: 10px !important; }
.home .media-textarea__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; }
.home .media-textarea__row {
  align-items: stretch !important;
  display: grid !important;
  gap: 0 !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.home .media-textarea__col { max-width: none !important; padding: 0 !important; width: auto !important; }
.home .media-textarea__figure,
.home .media-textarea__image { border-radius: 0 !important; height: 100% !important; min-height: 520px !important; object-fit: cover !important; width: 100% !important; }
.home .media-textarea__wrap--parent {
  background: #fff !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  justify-content: center !important;
  padding: clamp(38px, 5vw, 72px) !important;
}
.home .media-textarea__heading { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(38px, 4vw, 56px) !important; font-weight: 400 !important; line-height: 1.02 !important; }
.home .media-textarea__content p { color: var(--mu-ink-soft) !important; font-size: 16px !important; line-height: 1.65 !important; }
.home .media-textarea__row--right .media-textarea__col--media { order: 2 !important; }

/* Student experience */
.mu-experience { background: #fff; padding: 108px 0; }
.mu-experience__grid { display: grid; gap: 22px; grid-template-columns: 1.25fr .875fr .875fr; }
.mu-experience-card { background: var(--mu-oat); min-height: 520px; overflow: hidden; position: relative; }
.mu-experience-card img { height: 300px; object-fit: cover; width: 100%; }
.mu-experience-card--feature img { height: 100%; inset: 0; position: absolute; }
.mu-experience-card--feature::after { background: linear-gradient(0deg, rgba(16,14,50,.95), rgba(16,14,50,.04) 72%); content: ""; inset: 0; position: absolute; }
.mu-experience-card div { padding: 26px 28px 30px; }
.mu-experience-card--feature div { bottom: 0; color: #fff; padding: 34px; position: absolute; z-index: 2; }
.mu-experience-card span { color: var(--mu-primary); display: block; font-size: 11px; font-weight: 700; letter-spacing: .12em; margin-bottom: 10px; text-transform: uppercase; }
.mu-experience-card--feature span { color: var(--mu-gold-soft); }
.mu-experience-card h3 { color: var(--mu-primary-deep); font-size: 24px; line-height: 1.15; margin: 0 0 12px; }
.mu-experience-card--feature h3 { color: #fff; font-family: var(--mu-serif) !important; font-size: 34px; font-weight: 400; }
.mu-experience-card p { color: var(--mu-ink-soft) !important; font-size: 14px; line-height: 1.5; margin: 0; }
.mu-experience-card--feature p { color: rgba(255,255,255,.82) !important; }
.mu-text-link { color: var(--mu-primary) !important; display: inline-flex; font-weight: 700; gap: 10px; margin-top: 30px; text-decoration: none; }
.mu-text-link:hover { text-decoration: underline; }

/* Homepage CTA and news */
.home .cta {
  background: var(--mu-oat) !important;
  margin: 0 !important;
  padding: 96px 0 !important;
}
.home .cta__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; }
.home .cta__row { align-items: stretch !important; display: grid !important; grid-template-columns: .92fr 1.08fr !important; margin: 0 !important; }
.home .cta__col { max-width: none !important; padding: 0 !important; width: auto !important; }
.home .cta__col--text { background: var(--mu-primary-deep) !important; order: 1 !important; position: static !important; }
.home .cta__col--image { order: 2 !important; position: static !important; }
.home .cta__outer { display: flex !important; flex-direction: column !important; justify-content: center !important; min-height: 520px !important; padding: 68px clamp(36px, 5vw, 72px) !important; }
.home .cta__outer { background: transparent !important; box-sizing: border-box !important; position: static !important; width: 100% !important; }
.home .cta__wrap { position: static !important; }
.home .cta__heading { color: #fff !important; font-size: clamp(42px, 4vw, 62px) !important; line-height: 1 !important; }
.home .cta__content p { color: rgba(255,255,255,.8) !important; font-size: 17px !important; }
.home .cta__figure,
.home .cta__image { border-radius: 0 !important; height: 100% !important; min-height: 520px !important; object-fit: cover !important; width: 100% !important; }
.featured-news {
  background: #fff !important;
  margin: 0 !important;
  padding: 108px 0 !important;
}
.featured-news__top-svg { display: none !important; }
.featured-news__inner-container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; }
.featured-news__heading { color: var(--mu-primary-deep) !important; font-size: clamp(42px, 5vw, 64px) !important; line-height: 1 !important; max-width: 680px !important; }
.featured-news__cards { display: grid !important; gap: 24px !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; margin-top: 42px !important; }
.featured-news__col--card { max-width: none !important; padding: 0 !important; width: auto !important; }
.featured-news .news-card { border-bottom: 1px solid var(--mu-line); display: block !important; min-height: 100%; padding-bottom: 24px; position: relative; }
.featured-news .news-card__figure { height: 240px !important; margin-bottom: 22px !important; overflow: hidden !important; width: 100% !important; }
.featured-news .news-card__image { height: 100% !important; object-fit: cover !important; transition: transform .3s ease; width: 100% !important; }
.featured-news .news-card:hover .news-card__image { transform: scale(1.025); }
.featured-news .news-card__body { padding: 0 !important; width: 100% !important; }
.featured-news .news-card__category { color: var(--mu-primary) !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .11em !important; text-transform: uppercase !important; }
.featured-news .news-card__heading { color: var(--mu-ink) !important; font-size: 22px !important; line-height: 1.2 !important; margin-top: 10px !important; }

/* General page heroes */
.hero--general {
  background: var(--mu-oat) !important;
  margin: 0 !important;
  padding: 72px 0 !important;
}
.hero--general .hero__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; }
.hero--general .hero__row { align-items: stretch !important; display: grid !important; gap: 70px !important; grid-template-columns: .9fr 1.1fr !important; }
.hero--general .hero__col { max-width: none !important; padding: 0 !important; width: auto !important; }
.hero--general .hero__wrap--content { display: flex !important; flex-direction: column !important; height: 100% !important; justify-content: center !important; }
.hero--general .hero__outline { align-self: flex-start; border-color: var(--mu-primary) !important; margin-bottom: 24px !important; }
.hero--general .hero__heading { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(50px, 6vw, 78px) !important; font-weight: 400 !important; letter-spacing: -.035em !important; line-height: .98 !important; margin-bottom: 20px !important; }
.hero--general .hero__content p { color: var(--mu-ink-soft) !important; font-size: 18px !important; }
.hero--general .hero__figure { height: 460px !important; margin: 0 !important; overflow: hidden !important; }
.hero--general .hero__image { height: 100% !important; object-fit: cover !important; width: 100% !important; }

/* Programme finder and faculty archive */
.mu-programme-finder { background: var(--mu-primary-deep); color: #fff; padding: 76px 0; }
.mu-programme-finder__inner { align-items: end; display: grid; gap: 80px; grid-template-columns: 1fr .8fr; }
.mu-programme-finder h2 { color: #fff !important; font-size: clamp(40px, 4.5vw, 60px); line-height: 1.02; margin: 0 0 18px; }
.mu-programme-finder p { color: rgba(255,255,255,.76) !important; margin: 0; }
.mu-programme-finder .mu-eyebrow { color: var(--mu-gold-soft) !important; }
.mu-programme-search label { color: #fff; display: block; font-size: 13px; font-weight: 700; margin-bottom: 10px; }
.mu-programme-search__field { align-items: center; background: #fff; display: flex; min-height: 58px; padding: 0 18px; }
.mu-programme-search__field svg { fill: none; height: 22px; margin-right: 12px; stroke: var(--mu-primary); stroke-linecap: round; stroke-width: 2; width: 22px; }
.mu-programme-search input { background: transparent; border: 0 !important; color: var(--mu-ink); font-size: 16px; min-height: 56px; outline: 0; padding: 0; width: 100%; }
.mu-programme-search__status { color: rgba(255,255,255,.72) !important; font-size: 12px !important; margin-top: 9px !important; }
.academic-faculty-split {
  background: #fff !important;
  margin: 0 !important;
  padding: 94px 0 !important;
}
.academic-faculty-split--sciences { background: var(--mu-oat) !important; }
.academic-faculty-split__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; }
.academic-faculty-split__grid { align-items: center !important; gap: 72px !important; }
.academic-faculty-split__media { min-width: 0; }
.academic-faculty-split__figure { height: 560px !important; overflow: hidden !important; }
.academic-faculty-split__image { height: 100% !important; object-fit: cover !important; width: 100% !important; }
.academic-faculty-split__eyebrow { color: var(--mu-primary) !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: .12em !important; text-transform: uppercase !important; }
.academic-faculty-split__heading { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(40px, 4.4vw, 61px) !important; font-weight: 400 !important; line-height: 1 !important; }
.academic-faculty-split__summary { color: var(--mu-ink-soft) !important; font-size: 15px !important; }
.academic-programme-list { display: grid !important; gap: 0 22px !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.academic-programme-list li { border-color: var(--mu-line) !important; }
.academic-programme-list a { color: var(--mu-ink) !important; font-size: 14px !important; font-weight: 600 !important; min-height: 62px; padding: 15px 4px !important; }
.academic-programme-list a::after { color: var(--mu-primary) !important; content: "→" !important; font-size: 16px !important; }
.academic-programme-list a:hover { color: var(--mu-primary) !important; }
.academic-programme-list li[hidden] { display: none !important; }
.academic-faculty-split[hidden] { display: none !important; }
.academic-programs-page .page-cards { display: none !important; }
.academic-programs-page .cta {
  background: var(--mu-primary-deep) !important;
  margin: 0 !important;
  padding: 0 !important;
}
.academic-programs-page .cta__container { max-width: none !important; padding: 0 !important; width: 100% !important; }
.academic-programs-page .cta__row { align-items: stretch !important; display: grid !important; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr) !important; margin: 0 !important; }
.academic-programs-page .cta__col { max-width: none !important; padding: 0 !important; width: auto !important; }
.academic-programs-page .cta__outer { display: flex !important; flex-direction: column !important; justify-content: center !important; min-height: 540px !important; padding: clamp(54px, 8vw, 112px) max(28px, calc((100vw - var(--mu-shell)) / 2)) !important; }
.academic-programs-page .cta__heading { color: #fff !important; font-family: var(--mu-serif) !important; font-size: clamp(43px, 5vw, 67px) !important; font-weight: 400 !important; line-height: .98 !important; }
.academic-programs-page .cta__content p { color: rgba(255,255,255,.76) !important; font-size: 17px !important; line-height: 1.65 !important; }
.academic-programs-page .cta__button { margin-top: 24px !important; }
.academic-programs-page .cta__figure { height: 100% !important; margin: 0 !important; min-height: 540px !important; overflow: hidden !important; }
.academic-programs-page .cta__image { height: 100% !important; object-fit: cover !important; width: 100% !important; }

/* Shared content and programme detail pages */
.general-content {
  background: #fff !important;
  margin: 0 !important;
  padding: 86px 0 !important;
}
.general-content__container { max-width: 920px !important; padding-inline: 28px !important; }
.general-content__heading { color: var(--mu-primary-deep) !important; font-size: clamp(38px, 4vw, 56px) !important; line-height: 1.04 !important; margin-bottom: 28px !important; }
.general-content__content :where(p, li) { color: var(--mu-ink-soft) !important; font-size: 17px !important; line-height: 1.75 !important; }
.general-content__content li + li { margin-top: 12px !important; }
.program-detail .general-content__container { max-width: 1050px !important; }
.program-detail .general-content__content > p:first-child { color: var(--mu-primary) !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: .08em !important; text-transform: uppercase !important; }
.program-detail .general-content__content > p:last-child { background: var(--mu-oat); border-left: 4px solid var(--mu-gold); color: var(--mu-ink) !important; margin-top: 32px; padding: 22px 24px; }
.monarch-media-split,
.monarch-related-links,
.monarch-apply-cta { margin: 0 !important; padding: 94px 0 !important; }
.monarch-media-split { background: var(--mu-oat) !important; }
.monarch-media-split__container,
.monarch-related-links__container,
.monarch-apply-cta__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; width: 100% !important; }
.monarch-media-split__grid { align-items: stretch !important; gap: 0 !important; }
.monarch-media-split__figure { border-radius: 0 !important; min-height: 560px !important; }
.monarch-media-split__image { height: 100% !important; object-fit: cover !important; }
.monarch-media-split__content { background: #fff !important; display: flex !important; flex-direction: column !important; justify-content: center !important; padding: clamp(38px, 5vw, 72px) !important; }
.monarch-media-split__heading { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(40px, 4vw, 57px) !important; font-weight: 400 !important; line-height: 1.02 !important; }
.monarch-media-split__text :where(p, li) { color: var(--mu-ink-soft) !important; font-size: 16px !important; line-height: 1.65 !important; }
.monarch-related-links { background: #fff !important; }
.monarch-related-links__kicker { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(38px, 4vw, 56px) !important; font-weight: 400 !important; letter-spacing: -.03em !important; line-height: 1 !important; margin-bottom: 40px !important; text-transform: none !important; }
.monarch-related-links__grid { gap: 22px !important; }
.monarch-related-card { border-radius: 0 !important; min-height: 390px !important; }
.monarch-related-card__title { font-size: 24px !important; }
.monarch-related-card__arrow { background: var(--mu-gold) !important; color: var(--mu-primary-deep) !important; }
.monarch-apply-cta { background: var(--mu-oat) !important; }
.monarch-apply-cta__grid { gap: 0 !important; }
.monarch-apply-cta__panel { background: var(--mu-primary-deep) !important; border-radius: 0 !important; padding: clamp(42px, 5vw, 72px) !important; }
.monarch-apply-cta__heading { color: #fff !important; font-size: clamp(42px, 4vw, 60px) !important; }
.monarch-apply-cta__figure { border-radius: 0 !important; min-height: 500px !important; }

/* About page */
.monarch-purpose,
.monarch-leadership,
.monarch-campus-gallery,
.monarch-event-gallery { margin: 0 !important; padding: 105px 0 !important; }
.monarch-purpose__container,
.monarch-leadership__container,
.monarch-campus-gallery__container,
.monarch-event-gallery__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; width: 100% !important; }
.monarch-leadership__intro { margin-left: 0 !important; margin-right: 0 !important; text-align: left !important; }
.monarch-leadership__eyebrow { text-align: left !important; }
.monarch-purpose__heading,
.monarch-leadership__kicker,
.monarch-campus-gallery__heading,
.monarch-event-gallery__intro h2 { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(43px, 5vw, 66px) !important; font-weight: 400 !important; line-height: 1 !important; }
.monarch-leadership__kicker { margin: 0 !important; max-width: 850px !important; text-align: left !important; }
.monarch-purpose__grid { gap: 1px !important; }
.monarch-purpose__card { border-radius: 0 !important; box-shadow: inset 0 0 0 1px var(--mu-line); min-height: 360px !important; padding: 34px !important; }
.monarch-purpose__card--values { background: var(--mu-primary-deep) !important; }
.monarch-purpose__number { color: var(--mu-primary) !important; font-family: var(--mu-serif) !important; }
.monarch-leadership__profile { border: 1px solid var(--mu-line); gap: 0 !important; margin-bottom: 34px !important; }
.monarch-leadership__figure { border-radius: 0 !important; min-height: 580px !important; }
.monarch-leadership__content { background: var(--mu-oat) !important; padding: clamp(38px, 5vw, 72px) !important; }
.monarch-leadership__name { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(35px, 4vw, 52px) !important; font-weight: 400 !important; line-height: 1 !important; }
.monarch-leadership__details summary { color: var(--mu-primary) !important; font-weight: 700 !important; }
.monarch-campus-gallery { background: var(--mu-primary-deep) !important; }
.monarch-campus-gallery__heading { color: #fff !important; }
.monarch-campus-gallery__grid { gap: 12px !important; }
.monarch-campus-gallery__item { border-radius: 0 !important; }
.monarch-campus-gallery__item img { filter: saturate(.9); }
.monarch-campus-gallery__item figcaption { background: linear-gradient(transparent, rgba(9,8,30,.9)) !important; }

/* Admissions */
.mu-admissions-notice { background: var(--mu-gold-soft); border-block: 1px solid #d8c17b; }
.mu-admissions-notice__inner { align-items: center; display: grid; gap: 24px; grid-template-columns: auto 1fr auto; min-height: 110px; }
.mu-admissions-notice strong { color: var(--mu-primary-deep); font-size: 18px; }
.mu-admissions-notice p { color: #504a39 !important; font-size: 14px; line-height: 1.45; margin: 0; }
.mu-admissions-notice a { color: var(--mu-primary) !important; font-size: 14px; font-weight: 700; }
.mu-form-section { background: #fff !important; margin: 0 !important; padding: 92px 0 !important; }
.mu-form-section__container { align-items: start !important; display: grid !important; gap: 80px !important; grid-template-columns: .75fr 1.25fr !important; max-width: 1080px !important; padding-inline: 28px !important; }
.mu-form-section__intro { position: sticky; top: 150px; }
.mu-form-section__heading { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(42px, 5vw, 61px) !important; font-weight: 400 !important; line-height: 1 !important; }
.mu-form-section__text { color: var(--mu-ink-soft) !important; font-size: 16px !important; }
.mu-form-section__form,
.contact-hero__form-container form {
  background: var(--mu-oat) !important;
  border: 1px solid var(--mu-line) !important;
  border-radius: 0 !important;
  padding: clamp(28px, 4vw, 48px) !important;
}
.form-field { margin-bottom: 22px !important; }
.form-field label { color: var(--mu-ink) !important; display: block !important; font-size: 13px !important; font-weight: 700 !important; margin-bottom: 8px !important; text-transform: none !important; }
.form-field :where(input, select, textarea) {
  background: #fff !important;
  border: 1px solid #c9c5bd !important;
  border-radius: 4px !important;
  color: var(--mu-ink) !important;
  font-size: 16px !important;
  min-height: 52px !important;
  padding: 12px 14px !important;
}
.form-field textarea { min-height: 140px !important; }
.form-field :where(input, select, textarea):focus { border-color: var(--mu-primary) !important; box-shadow: 0 0 0 3px rgba(41,36,122,.12) !important; outline: 0 !important; }
.submitButtonWrapper button {
  background: var(--mu-primary) !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #fff !important;
  cursor: pointer;
  font-size: 14px !important;
  font-weight: 700 !important;
  min-height: 50px !important;
  padding: 0 24px !important;
}
.submitButtonWrapper button:hover { background: var(--mu-primary-deep) !important; }

/* Contact */
.contact-hero { background: var(--mu-primary-deep) !important; margin: 0 !important; padding: 84px 0 104px !important; }
.contact-hero__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; }
.contact-hero__row { align-items: start !important; display: grid !important; gap: 72px !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; margin: 0 !important; }
.contact-hero__row > [class*="col-"] { max-width: none !important; padding: 0 !important; width: auto !important; }
.contact-hero__col { max-width: none !important; padding: 0 !important; width: auto !important; }
.contact-hero__wrap--text { margin-bottom: 68px !important; padding: 112px 0 96px !important; }
.contact-hero__preheading { margin-bottom: 20px !important; }
.contact-hero__preheading .preheading { color: #fff !important; }
.contact-hero__heading { color: #fff !important; font-size: clamp(54px, 7vw, 84px) !important; line-height: .96 !important; margin: 0 !important; text-align: left !important; }
.contact-hero__col--content { align-self: end !important; max-width: 560px !important; }
.contact-hero__content p { color: rgba(255,255,255,.8) !important; font-size: 17px !important; }
.contact-hero__form-container form { background: #fff !important; border: 0 !important; box-shadow: var(--mu-shadow-lg) !important; padding: clamp(32px, 4vw, 54px) !important; width: 100% !important; }
.contact-hero__wrap--contact { background: rgba(255,255,255,.07) !important; border: 1px solid rgba(255,255,255,.15); min-height: 100% !important; padding: clamp(34px, 4vw, 50px) !important; }
.contact-hero__content--label p { color: var(--mu-gold-soft) !important; }
.contact-hero__contact-link { margin: 0 0 12px !important; }
.contact-hero__contact-link a { color: #fff !important; font-size: clamp(16px, 1.6vw, 22px) !important; overflow-wrap: anywhere !important; }
.contact-hero__content--address p { color: rgba(255,255,255,.78) !important; }
.contact-hero__button .btn__label { color: #fff !important; }
.contact-hero__socials { display: flex !important; gap: 10px !important; margin-top: 18px !important; }
.contact-hero__socials .social-links__social {
  align-items: center !important;
  border: 1px solid rgba(255,255,255,.3) !important;
  border-radius: 50% !important;
  color: #fff !important;
  display: inline-flex !important;
  flex: 0 0 44px !important;
  height: 44px !important;
  justify-content: center !important;
  margin: 0 !important;
  min-width: 44px !important;
  transition: background-color .22s ease, border-color .22s ease, color .22s ease, transform .22s ease !important;
  width: 44px !important;
}
.contact-hero__socials .social-links__social :where(svg, path) { fill: currentColor !important; }
.mu-contact-routes { background: var(--mu-oat); padding: 104px 0; }
.mu-contact-routes__grid { border: 1px solid var(--mu-line); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mu-contact-routes__grid article { background: #fff; min-height: 330px; padding: 38px 34px; }
.mu-contact-routes__grid article + article { border-left: 1px solid var(--mu-line); }
.mu-contact-routes__grid article > span { color: var(--mu-primary); display: block; font-size: 11px; font-weight: 700; letter-spacing: .14em; margin-bottom: 62px; }
.mu-contact-routes__grid h3 { color: var(--mu-primary-deep); font-size: 24px; line-height: 1.15; margin: 0 0 14px; }
.mu-contact-routes__grid p { color: var(--mu-ink-soft) !important; font-size: 15px; line-height: 1.6; margin: 0 0 26px; }
.mu-contact-routes__grid a { color: var(--mu-primary) !important; font-size: 14px; font-weight: 700; text-decoration: none; }
.mu-contact-routes__grid a:hover { text-decoration: underline; }
.page-template-page-contact .monarch-related-links { margin: 0 !important; padding: 104px 0 !important; }

/* Homepage FAQ uses the same component language as every FAQ page */
.mu-home-faq { background: #fff !important; margin: 0 !important; padding: 104px 0 !important; }
.mu-home-faq .faqs__container { max-width: 1000px !important; }
.mu-home-faq .faqs__card { background: var(--mu-oat) !important; }
.mu-home-faq__summary { color: var(--mu-ink-soft) !important; font-size: 16px; line-height: 1.65; margin: -8px 0 32px; max-width: 660px; }
.mu-home-faq .mu-text-link { margin-top: 28px; }
.mu-faq-toggle { border: 1px solid var(--mu-primary); border-radius: 50%; flex: 0 0 44px; height: 44px; position: relative; transition: background-color .22s ease, transform .3s cubic-bezier(.22,1,.36,1); width: 44px; }
.mu-faq-toggle::before,
.mu-faq-toggle::after { background: var(--mu-primary); content: ""; height: 2px; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); width: 12px; }
.mu-faq-toggle::after { transform: translate(-50%, -50%) rotate(90deg); transition: transform .22s ease; }
.faq__title[aria-expanded="true"] .mu-faq-toggle { background: var(--mu-primary); transform: rotate(180deg); }
.faq__title[aria-expanded="true"] .mu-faq-toggle::before,
.faq__title[aria-expanded="true"] .mu-faq-toggle::after { background: #fff; }
.faq__title[aria-expanded="true"] .mu-faq-toggle::after { transform: translate(-50%, -50%) rotate(0); }

/* Third-party cookie control: compact, readable and finger-friendly. */
#cookiescript_badge {
  align-items: center !important;
  border: 1px solid rgba(23,21,66,.14) !important;
  border-radius: 999px !important;
  bottom: 12px !important;
  box-shadow: 0 10px 30px rgba(23,21,66,.18) !important;
  display: inline-flex !important;
  font: 700 12px/1 var(--mu-sans) !important;
  justify-content: center !important;
  left: auto !important;
  min-height: 44px !important;
  padding: 0 18px !important;
  right: 12px !important;
  transition: box-shadow .2s ease, transform .2s ease !important;
  width: auto !important;
}
body.mobile-menu-open #cookiescript_badge { bottom: 102px !important; }

/* News archive and articles */
.simple-hero {
  background: var(--mu-oat) !important;
  margin: 0 !important;
  min-height: 390px !important;
  overflow: hidden !important;
  padding: 94px 0 !important;
  position: relative !important;
}
.simple-hero__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; position: relative !important; z-index: 1 !important; }
.simple-hero__heading { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(58px, 8vw, 94px) !important; font-weight: 400 !important; letter-spacing: -.045em !important; line-height: .94 !important; margin: 0 0 24px !important; }
.simple-hero__content { display: block !important; max-width: 620px !important; }
.simple-hero__content p { color: var(--mu-ink-soft) !important; font-size: 19px !important; line-height: 1.55 !important; }
.simple-hero__outline-svg { bottom: -120px !important; height: 520px !important; opacity: .2 !important; position: absolute !important; right: 0 !important; width: 390px !important; }
.archive { background: #fff !important; margin: 0 !important; padding: 90px 0 110px !important; }
.archive__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; }
.archive__heading { color: var(--mu-primary-deep) !important; font-size: clamp(50px, 6vw, 76px) !important; line-height: 1 !important; }
.archive__top,
.archive__bottom { display: grid !important; gap: 26px !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.archive__top--left,
.archive__top--right,
.archive__col--card { max-width: none !important; padding: 0 !important; width: auto !important; }
.archive__top--left { grid-column: span 2 !important; }
.archive__top--right .row-2 { display: grid !important; gap: 26px !important; grid-template-columns: 1fr !important; }
.archive .news-card { border-bottom: 1px solid var(--mu-line); display: block !important; padding-bottom: 22px; position: relative; }
.archive .news-card__figure { height: 250px !important; margin-bottom: 20px !important; overflow: hidden !important; width: 100% !important; }
.archive .news-card--main .news-card__figure { height: 290px !important; }
.archive__top--left .news-card__figure { height: 520px !important; }
.archive .news-card__image { height: 100% !important; object-fit: cover !important; transition: transform .3s ease; width: 100% !important; }
.archive .news-card:hover .news-card__image { transform: scale(1.025); }
.archive .news-card__body { padding: 0 !important; width: 100% !important; }
.archive .news-card__category { color: var(--mu-primary) !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .11em !important; text-transform: uppercase !important; }
.archive .news-card__heading { color: var(--mu-ink) !important; font-size: 22px !important; line-height: 1.2 !important; margin-top: 9px !important; }
.archive__top--left .news-card__heading { font-family: var(--mu-serif) !important; font-size: 38px !important; font-weight: 400 !important; }
.archive__row { margin: 0 !important; }
.archive__bottom { margin-top: 62px !important; }
.monarch-event-gallery { background: var(--mu-oat) !important; }
.monarch-event-gallery__intro { margin-bottom: 42px !important; max-width: 780px !important; }
.monarch-event-gallery__intro p:last-child { color: var(--mu-ink-soft) !important; font-size: 17px !important; }
.monarch-event-gallery__grid { display: grid !important; gap: 12px !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
.monarch-event-gallery__item { aspect-ratio: 4 / 3 !important; margin: 0 !important; min-height: 0 !important; overflow: hidden !important; position: relative !important; }
.monarch-event-gallery__item--wide { aspect-ratio: 2 / 1 !important; grid-column: span 2 !important; }
.monarch-event-gallery__item img { height: 100% !important; inset: 0 !important; object-fit: cover !important; position: absolute !important; width: 100% !important; }
.monarch-article-hero { background: var(--mu-oat) !important; padding: 80px 0 0 !important; }
.monarch-article-hero__container,
.monarch-article-content__container { max-width: 940px !important; padding-inline: 28px !important; }
.monarch-article-hero__title { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(48px, 7vw, 82px) !important; font-weight: 400 !important; line-height: .98 !important; }
.monarch-article-hero__summary { color: var(--mu-ink-soft) !important; font-size: 19px !important; }
.monarch-article-hero__figure { max-width: var(--mu-shell) !important; }
.monarch-article-hero__image { height: clamp(420px, 58vw, 720px) !important; }
.monarch-article-content { padding: 90px 0 !important; }
.monarch-article-content__container > :where(p, ul, ol) { color: var(--mu-ink-soft) !important; font-size: 18px !important; line-height: 1.8 !important; }

/* FAQ */
.faqs { background: #fff !important; margin: 0 !important; padding: 86px 0 110px !important; }
.faqs__container { max-width: 1000px !important; padding-inline: 28px !important; }
.faqs__card { background: var(--mu-oat) !important; border: 1px solid var(--mu-line) !important; border-radius: 0 !important; padding: clamp(30px, 5vw, 58px) !important; }
.faqs__heading { color: var(--mu-primary-deep) !important; font-family: var(--mu-serif) !important; font-size: clamp(40px, 5vw, 58px) !important; font-weight: 400 !important; }
.faq { background: #fff !important; border: 1px solid var(--mu-line) !important; border-radius: 0 !important; }
.faq__title { min-height: 62px !important; padding: 17px 20px !important; }
.faq__question { color: var(--mu-ink) !important; font-size: 15px !important; font-weight: 700 !important; }
.faq__content { padding: 0 20px 20px !important; }
.faq__content p { color: var(--mu-ink-soft) !important; font-size: 15px !important; }

/* Programme FAQs use the same 1,000px card and 800px accordion measure as the
   home and about pages, overriding legacy programme-only width rules. */
body.academic-programs-page .faqs .faqs__container,
body.program-detail .general-content > .faqs .faqs__container {
  margin-inline: auto !important;
  max-width: 1000px !important;
  padding-inline: 28px !important;
  width: 100% !important;
}
body.academic-programs-page .faqs .faqs__card,
body.program-detail .general-content > .faqs .faqs__card {
  padding: clamp(30px, 5vw, 58px) !important;
}
body.academic-programs-page .faqs .faqs__items,
body.program-detail .general-content > .faqs .faqs__items {
  margin-inline: auto !important;
  max-width: 800px !important;
  width: 100% !important;
}

/* Legal pages */
.privacy-policy .general-content__container,
.terms-conditions .general-content__container,
.cookie-policy .general-content__container { max-width: 860px !important; }

/* Footer */
.main-footer { background: #0e0d23 !important; }
.top-footer { background: #0e0d23 !important; padding: 76px 0 56px !important; }
.top-footer__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; }
.top-footer__row { gap: 0 !important; }
.top-footer__subscribe { padding-right: 50px !important; }
.top-footer__heading--subscribe { color: #fff !important; font-family: var(--mu-serif) !important; font-size: 30px !important; font-weight: 400 !important; }
.top-footer__text { color: rgba(255,255,255,.62) !important; font-size: 14px !important; }
.mu-footer-address { color: rgba(255,255,255,.62); display: flex; flex-direction: column; font-size: 13px; font-style: normal; gap: 3px; margin: 28px 0 4px; }
.mu-footer-address strong { color: #fff; font-size: 14px; }
.mu-footer-address a { color: var(--mu-gold-soft) !important; overflow-wrap: anywhere; }
.top-footer__heading { color: rgba(255,255,255,.52) !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .12em !important; text-transform: uppercase !important; }
.top-footer__link { color: #fff !important; }
.top-footer__link p { color: rgba(255,255,255,.82) !important; font-size: 14px !important; }
.top-footer__link:hover p { color: var(--mu-gold-soft) !important; }
.bottom-footer { background: #090817 !important; border-top: 1px solid rgba(255,255,255,.1) !important; }
.bottom-footer__container { max-width: var(--mu-shell) !important; padding-inline: 28px !important; }

/* Search overlay */
.mu-search { backdrop-filter: blur(8px); background: rgba(12,11,36,.74) !important; }
.mu-search__panel { border-radius: var(--mu-radius) !important; box-shadow: var(--mu-shadow-lg) !important; }
.mu-search__input { font-size: 19px !important; }

/* Professional motion and interaction system */
.mu-motion-ready .mu-reveal {
  opacity: 0;
  transform: translate3d(var(--mu-reveal-x, 0), 18px, 0);
  transition: opacity .62s cubic-bezier(.22,1,.36,1) var(--mu-reveal-delay, 0ms), transform .62s cubic-bezier(.22,1,.36,1) var(--mu-reveal-delay, 0ms);
}
.mu-motion-ready .mu-reveal.is-visible { opacity: 1; transform: translate3d(0, 0, 0); }
.home-hero__heading,
.home-hero__content,
.mu-hero-actions { animation: mu-hero-enter .72s cubic-bezier(.22,1,.36,1) both; }
.home-hero__content { animation-delay: .12s; }
.mu-hero-actions { animation-delay: .2s; }
.home-hero__image { animation: mu-hero-image-settle 1.45s cubic-bezier(.22,1,.36,1) both; }
@keyframes mu-hero-enter {
  from { opacity: 0; transform: translate3d(0, 22px, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes mu-hero-image-settle {
  from { opacity: .78; transform: scale(1.045); }
  to { opacity: 1; transform: scale(1); }
}
.mu-hero-action span { display: inline-block; transition: transform .22s ease; }
.mu-pathways a::after {
  background: var(--mu-gold);
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .28s cubic-bezier(.22,1,.36,1);
}
.home-page-cards__card,
.mu-experience-card,
.monarch-related-card,
.archive .news-card,
.featured-news .news-card,
.mu-contact-routes__grid article { transition: border-color .24s ease, box-shadow .24s ease, transform .24s ease, background-color .24s ease !important; }
.home-page-cards__image,
.mu-experience-card img,
.monarch-related-card__image,
.archive .news-card__image,
.featured-news .news-card__image,
.monarch-campus-gallery__item img,
.monarch-event-gallery__item img,
.monarch-leadership__image,
.hero--general .hero__image { transition: transform .65s cubic-bezier(.22,1,.36,1), filter .35s ease !important; }
.academic-programme-list a,
.top-footer__link,
.mu-text-link { transition: color .2s ease, transform .2s ease !important; }
.faq { transition: border-color .22s ease, box-shadow .22s ease !important; }
.faq:has(.faq__title[aria-expanded="true"]) { border-color: rgba(41,36,122,.38) !important; box-shadow: 0 10px 30px rgba(23,21,66,.07) !important; }
.faq__title[aria-expanded="true"] { color: var(--mu-primary) !important; }

@media (hover: hover) and (pointer: fine) {
  .home-page-cards__card:hover,
  .mu-experience-card:hover,
  .monarch-related-card:hover,
  .archive .news-card:hover,
  .featured-news .news-card:hover { box-shadow: var(--mu-shadow-lg) !important; transform: translate3d(0, -4px, 0) !important; }
  .home-page-cards__card:hover .home-page-cards__image,
  .mu-experience-card:hover img,
  .monarch-related-card:hover .monarch-related-card__image,
  .archive .news-card:hover .news-card__image,
  .featured-news .news-card:hover .news-card__image,
  .monarch-campus-gallery__item:hover img,
  .monarch-event-gallery__item:hover img { transform: scale(1.035) !important; }
  .monarch-leadership__profile:hover .monarch-leadership__image,
  .hero--general:hover .hero__image { transform: scale(1.018) !important; }
  .mu-contact-routes__grid article:hover { background: var(--mu-primary-deep); transform: translate3d(0, -4px, 0) !important; }
  .mu-contact-routes__grid article:hover :where(h3, p, a) { color: #fff !important; }
  .mu-contact-routes__grid article:hover > span { color: var(--mu-gold-soft); }
  .contact-hero__socials .social-links__social:hover { background: var(--mu-gold); border-color: var(--mu-gold) !important; color: var(--mu-primary-deep) !important; transform: translateY(-2px); }
  .mu-hero-action:hover span { transform: translateX(4px); }
  .mu-pathways a:hover::after { transform: scaleX(1); }
  #cookiescript_badge:hover { box-shadow: 0 14px 34px rgba(23,21,66,.24) !important; transform: translateY(-2px); }
  .academic-programme-list a:hover,
  .mu-text-link:hover { transform: translateX(4px); }
  .faq:hover { border-color: rgba(41,36,122,.28) !important; }
}

@media (max-width: 1100px) {
  .mu-utility__status { display: none; }
  .mu-utility__inner { justify-content: flex-end; }
  .header__container { min-height: 76px !important; }
  .header__row { min-height: 76px !important; }
  .header__logo { height: 44px !important; }
  .header__menu { gap: 18px !important; }
  .header__link { font-size: 13px !important; }
  .mu-pathways__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mu-pathways a:nth-child(3) { border-left: 1px solid var(--mu-line); border-top: 1px solid var(--mu-line); }
  .mu-pathways a:nth-child(4) { border-top: 1px solid var(--mu-line); }
  .mu-facts__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mu-facts__grid article:nth-child(n+3) { border-top: 1px solid #cbc6bc; padding-top: 28px; }
  .mu-facts__grid article:nth-child(2) { border-right: 1px solid #cbc6bc; }
  .mu-experience__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mu-experience-card--feature { grid-row: span 2; }
  .mu-programme-finder__inner { gap: 45px; }
  .archive__top,
  .archive__bottom { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .archive__top--left { grid-column: span 2 !important; }
}

@media (max-width: 1024px) {
  body { font-size: 16px !important; }
  .mu-utility { display: none; }
  .header__container,
  .header__row { min-height: 70px !important; }
  .header__container { padding-inline: 20px !important; }
  .header__row { margin-inline: 0 !important; width: 100% !important; }
  .header__col { padding-inline: 0 !important; }
  .header__menu { display: none !important; }
  .header__mobile { height: 44px !important; min-width: 44px !important; width: 44px !important; }
  .home-hero--alternative { height: 690px !important; min-height: 690px !important; }
  .home-hero__container { padding-bottom: 64px !important; }
  .home-hero__inner-container { align-items: flex-start !important; flex-direction: column !important; gap: 28px !important; }
  .mu-section-heading { align-items: start; gap: 22px; grid-template-columns: 1fr; }
  .home .media-textarea__row,
  .home .cta__row,
  .hero--general .hero__row,
  .academic-programs-page .cta__row,
  .monarch-media-split__grid,
  .monarch-apply-cta__grid { grid-template-columns: 1fr !important; }
  .home .media-textarea__row--right .media-textarea__col--media { order: 0 !important; }
  .home .media-textarea__figure,
  .home .media-textarea__image { min-height: 420px !important; }
  .home .cta__outer { min-height: 0 !important; padding: 58px 36px !important; }
  .home .cta__figure,
  .home .cta__image { min-height: 420px !important; }
  .hero--general .hero__row { gap: 40px !important; }
  .hero--general .hero__figure { height: 420px !important; }
  .mu-programme-finder__inner { align-items: start; grid-template-columns: 1fr; }
  .academic-faculty-split__grid { gap: 42px !important; grid-template-columns: 1fr !important; }
  .academic-faculty-split--sciences .academic-faculty-split__media { order: -1 !important; }
  .academic-faculty-split__figure { height: 420px !important; }
  .academic-programs-page .cta__outer { min-height: 0 !important; padding: 72px 28px !important; }
  .academic-programs-page .cta__figure { min-height: 430px !important; }
  .monarch-media-split__figure,
  .monarch-apply-cta__figure { min-height: 420px !important; }
  .monarch-media-split--image-right .monarch-media-split__figure { order: 0 !important; }
  .monarch-leadership__profile { grid-template-columns: 1fr !important; }
  .monarch-leadership__profile--reverse .monarch-leadership__figure { order: 0 !important; }
  .mu-form-section__container { gap: 42px !important; grid-template-columns: 1fr !important; }
  .mu-form-section__intro { position: static; }
  .mu-admissions-notice__inner { align-items: start; grid-template-columns: 1fr; padding-block: 28px; }
  .contact-hero__row { gap: 34px !important; grid-template-columns: 1fr !important; }
  .contact-hero__col--content { max-width: 660px !important; }
  .mu-contact-routes__grid { grid-template-columns: 1fr !important; }
  .mu-contact-routes__grid article { min-height: 0; }
  .mu-contact-routes__grid article + article { border-left: 0; border-top: 1px solid var(--mu-line); }
  .mu-contact-routes__grid article > span { margin-bottom: 34px; }
}

@media (max-width: 767px) {
  .mu-shell { padding-inline: 18px; }
  .header__logo { height: 39px !important; }
  .header__logo-name { font-size: 15px !important; }
  .header__logo-sub { font-size: 8px !important; }
  .mobile-menu {
    background: var(--mu-primary-deep) !important;
    left: 0 !important;
    overscroll-behavior: contain;
    right: auto !important;
    top: 70px !important;
    transform: translate3d(100%, 0, 0) !important;
    transition: transform .42s cubic-bezier(.22,1,.36,1), visibility 0s linear .42s !important;
    visibility: hidden !important;
    width: 100% !important;
  }
  body.mobile-menu-open { overflow: visible !important; }
  .mobile-menu.mobile-menu--active {
    transform: translate3d(0, 0, 0) !important;
    transition-delay: 0s !important;
    visibility: visible !important;
  }
  .mobile-menu__link { color: #fff !important; font-size: 19px !important; min-height: 52px !important; }
  .mobile-menu__arrow-wrap { align-items: center !important; display: flex !important; height: 44px !important; justify-content: center !important; min-width: 44px !important; }
  .mobile-menu__arrow { transition: transform .28s cubic-bezier(.22,1,.36,1) !important; }
  .mobile-menu__item--active > .mobile-menu__arrow-wrap .mobile-menu__arrow { transform: rotate(180deg) !important; }
  .mobile-menu--active .mobile-menu__item { animation: mu-mobile-menu-item .42s cubic-bezier(.22,1,.36,1) both; }
  .mobile-menu--active .mobile-menu__item:nth-child(2) { animation-delay: .04s; }
  .mobile-menu--active .mobile-menu__item:nth-child(3) { animation-delay: .08s; }
  .mobile-menu--active .mobile-menu__item:nth-child(4) { animation-delay: .12s; }
  .mobile-menu__button { margin: 20px !important; }
  .home-hero--alternative { height: 650px !important; min-height: 650px !important; }
  .home-hero--alternative::before { background: linear-gradient(0deg, rgba(14,13,45,.94), rgba(14,13,45,.2) 78%); }
  .home-hero__image { object-position: 54% center !important; }
  .home-hero__container { align-items: flex-start !important; padding: 0 18px 48px !important; }
  .home-hero__heading { font-size: clamp(46px, 14vw, 62px) !important; margin-bottom: 22px !important; }
  .home-hero__content p { font-size: 16px !important; }
  .mu-hero-actions { align-items: stretch; flex-direction: column; width: 100%; }
  .mu-hero-action { width: 100%; }
  .mu-pathways { margin-top: 0; width: 100%; }
  .mu-pathways__grid { border-inline: 0; box-shadow: none; grid-template-columns: 1fr; padding-inline: 0; }
  .mu-pathways a { min-height: 116px; padding: 22px 20px; }
  .mu-pathways a,
  .mu-pathways a:first-child,
  .mu-pathways a:last-child { border-left: 0; border-right: 0; }
  .mu-pathways a + a { border-left: 0; border-top: 1px solid var(--mu-line); }
  .mu-pathways span { margin-bottom: 10px; }
  .mu-facts { padding: 62px 0; }
  .mu-facts__grid { grid-template-columns: 1fr; }
  .mu-facts__grid article,
  .mu-facts__grid article:nth-child(n+3) { border: 0 !important; border-top: 1px solid #cbc6bc !important; min-height: 0; padding: 24px 4px !important; }
  .mu-facts__grid article:last-child { border-bottom: 1px solid #cbc6bc !important; }
  .mu-facts__grid strong { font-size: 42px; margin-bottom: 9px; }
  .mu-facts__grid span { max-width: none; }
  .mu-facts__source { margin-inline: 4px; }
  .home-page-cards { padding: 68px 0 !important; }
  .home-page-cards__container,
  .home .media-textarea__container,
  .home .cta__container,
  .featured-news__inner-container,
  .hero--general .hero__container,
  .academic-faculty-split__container,
  .general-content__container,
  .monarch-media-split__container,
  .monarch-related-links__container,
  .monarch-apply-cta__container,
  .monarch-purpose__container,
  .monarch-leadership__container,
  .monarch-campus-gallery__container,
  .monarch-event-gallery__container,
  .mu-form-section__container,
  .contact-hero__container,
  .archive__container,
  .monarch-article-hero__container,
  .monarch-article-content__container,
  .faqs__container,
  .top-footer__container,
  .bottom-footer__container { padding-inline: 18px !important; }
  .home-page-cards__heading { font-size: 42px !important; margin-bottom: 34px !important; }
  .home .home-page-cards__row { grid-template-columns: 1fr !important; }
  .home .home-page-cards__card { height: 390px !important; min-height: 390px !important; }
  .home .page-card__body { padding: 24px !important; }
  .home .page-card__heading { font-size: 24px !important; }
  .home .page-card__icon { bottom: 22px !important; right: 22px !important; }
  .home .media-textarea { padding: 36px 0 !important; }
  .home .media-textarea__figure,
  .home .media-textarea__image { min-height: 300px !important; }
  .home .media-textarea__wrap--parent { padding: 34px 24px !important; }
  .home .media-textarea__heading { font-size: 38px !important; }
  .mu-experience { padding: 72px 0; }
  .mu-experience__grid { grid-template-columns: 1fr; }
  .mu-experience-card,
  .mu-experience-card--feature { min-height: 460px; }
  .mu-experience-card--feature { grid-row: auto; }
  .featured-news { padding: 74px 0 !important; }
  .featured-news__heading { font-size: 42px !important; }
  .featured-news__cards,
  .featured-news__row { grid-template-columns: 1fr !important; margin-inline: 0 !important; width: 100% !important; }
  .featured-news .featured-news__col,
  .featured-news .news-card,
  .featured-news .news-card__figure,
  .featured-news .news-card__body {
    flex: 0 0 auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
  }
  .featured-news .news-card__figure { height: 230px !important; }
  .hero--general { padding: 54px 0 !important; }
  .hero--general .hero__heading { font-size: 48px !important; }
  .hero--general .hero__figure { height: 300px !important; }
  .simple-hero { min-height: 330px !important; padding: 72px 0 !important; }
  .simple-hero__container { padding-inline: 18px !important; }
  .simple-hero__heading { font-size: 57px !important; }
  .simple-hero__content p { font-size: 16px !important; }
  .mu-programme-finder { padding: 60px 0; }
  .mu-programme-finder h2 { font-size: 40px; }
  .academic-faculty-split { padding: 68px 0 !important; }
  .academic-faculty-split__figure { height: 300px !important; }
  .academic-faculty-split__heading { font-size: 40px !important; }
  .academic-programme-list { grid-template-columns: 1fr !important; }
  .academic-programs-page .cta__outer { padding: 58px 22px !important; }
  .academic-programs-page .cta__heading { font-size: 45px !important; }
  .academic-programs-page .cta__figure { min-height: 310px !important; }
  .general-content { padding: 64px 0 !important; }
  .general-content__heading { font-size: 40px !important; }
  .general-content__content :where(p, li) { font-size: 16px !important; }
  .monarch-media-split,
  .monarch-related-links,
  .monarch-apply-cta,
  .monarch-purpose,
  .monarch-leadership,
  .monarch-campus-gallery,
  .monarch-event-gallery { padding: 70px 0 !important; }
  .monarch-media-split__figure,
  .monarch-apply-cta__figure { min-height: 300px !important; }
  .monarch-media-split__content,
  .monarch-apply-cta__panel { padding: 32px 24px !important; }
  .monarch-related-links__grid { grid-template-columns: 1fr !important; }
  .monarch-related-card { min-height: 300px !important; }
  .monarch-purpose__grid { grid-template-columns: 1fr !important; }
  .monarch-purpose__card,
  .monarch-purpose__card--values { grid-column: auto !important; min-height: 0 !important; }
  .monarch-leadership__figure { min-height: 360px !important; }
  .monarch-leadership__content { padding: 30px 22px !important; }
  .monarch-campus-gallery__grid,
  .monarch-event-gallery__grid { grid-template-columns: 1fr !important; }
  .monarch-campus-gallery__item--wide,
  .monarch-event-gallery__item--wide { grid-column: auto !important; }
  .mu-form-section { padding: 70px 0 !important; }
  .mu-form-section__heading { font-size: 42px !important; }
  .contact-hero { padding: 58px 0 72px !important; }
  .contact-hero__heading { font-size: 56px !important; }
  .contact-hero__wrap--contact { padding: 28px 22px !important; }
  .contact-hero__wrap--text { margin-bottom: 46px !important; }
  .contact-hero__row { gap: 28px !important; }
  .contact-hero__form-container form { padding: 28px 20px !important; }
  .mu-contact-routes { padding: 72px 0; }
  .mu-contact-routes__grid article { padding: 30px 24px; }
  .archive { padding: 64px 0 80px !important; }
  .archive__top,
  .archive__bottom { grid-template-columns: 1fr !important; }
  .archive__top--left { grid-column: auto !important; }
  .archive__top--right,
  .archive__top--right .row-2,
  .archive__bottom,
  .archive__row { margin-inline: 0 !important; width: 100% !important; }
  .archive .archive__col--card,
  .archive .news-card,
  .archive .news-card__figure,
  .archive .news-card__body {
    flex: 0 0 auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: none !important;
    width: 100% !important;
  }
  .archive__top--left .news-card__figure,
  .archive .news-card--main .news-card__figure,
  .archive .news-card__figure { height: 250px !important; }
  .archive__top--left .news-card__heading { font-size: 30px !important; }
  .monarch-article-hero { padding-top: 58px !important; }
  .monarch-article-hero__title { font-size: 48px !important; }
  .monarch-article-hero__summary { font-size: 17px !important; }
  .monarch-article-hero__image { height: 320px !important; }
  .monarch-article-content { padding: 64px 0 !important; }
  .monarch-article-content__container > :where(p, ul, ol) { font-size: 17px !important; }
  .faqs { padding: 62px 0 80px !important; }
  .faqs__card { padding: 26px 16px !important; }
  .top-footer { padding-top: 58px !important; }
  .top-footer__subscribe { padding-right: 0 !important; }
}

@keyframes mu-mobile-menu-item {
  from { opacity: 0; transform: translate3d(-14px, 0, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}

/* 2026-08-13 final visual refinement: intentional section boundaries and states */
.home .header {
  background: transparent !important;
  box-shadow: none !important;
  position: fixed !important;
  transition: background-color .28s ease, box-shadow .28s ease !important;
}
.home .header .mu-utility,
.home .header .header__container {
  background: transparent !important;
  transition: background-color .28s ease !important;
}
.home .header.mu-header--over-hero :where(.header__logo-name, .header__link, .header__search-link, .header__arrow-wrap, .header__mobile) {
  color: #fff !important;
}
.home .header.mu-header--over-hero .header__row {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  background: transparent !important;
  border-radius: 0 !important;
}
.home .header.mu-header--over-hero .header__logo-sub,
.home .header.mu-header--over-hero .mu-utility__status,
.home .header.mu-header--over-hero .mu-utility__nav a { color: rgba(255,255,255,.88) !important; }
.home .header.mu-header--over-hero .header__item > .header__link::after { background: var(--mu-gold); }
.home .header.mu-header--over-hero .header__button {
  background: var(--mu-gold) !important;
  border-color: var(--mu-gold) !important;
}
.home .header.mu-header--over-hero .header__button .btn__label {
  background: var(--mu-gold) !important;
  color: var(--mu-primary-deep) !important;
}
.home .header.mu-header--over-hero .header__mobile::before,
.home .header.mu-header--over-hero .header__mobile::after { background-color: #fff !important; }
.home .header.mu-header--scrolled { background: #fff !important; box-shadow: 0 10px 35px rgba(23,21,66,.12) !important; }
.home .header.mu-header--scrolled .mu-utility { background: var(--mu-primary-deep) !important; }
.home .header.mu-header--scrolled .header__container { background: #fff !important; }

.home-hero--alternative {
  background: transparent !important;
  border-radius: 0 !important;
  height: 100svh !important;
  min-height: 680px !important;
}
.home-hero__swiper-wrapper,
.home-hero__swiper-wrapper .swiper-slide,
.home-hero__swiper-wrapper .home-hero__image { border-radius: 0 !important; z-index: 0 !important; }
.home-hero--alternative::before {
  border-radius: 0 !important;
  height: 100% !important;
  width: 100% !important;
}
.home-hero__container { z-index: 3 !important; }

.mu-pathways {
  background: var(--mu-primary-deep) !important;
  border: 0 !important;
  color: #fff;
  margin: 0 !important;
}
.mu-pathways__grid { background: transparent; box-shadow: none; }
.mu-pathways a {
  background: transparent !important;
  border-color: rgba(255,255,255,.14) !important;
  color: #fff !important;
  min-height: 150px;
  padding: 28px 52px 28px 26px;
  position: relative;
}
.mu-pathways a:first-child { border-left-color: rgba(255,255,255,.14) !important; }
.mu-pathways a:last-child { border-right-color: rgba(255,255,255,.14) !important; }
.mu-pathways .mu-pathways__number {
  color: var(--mu-gold-soft) !important;
  font-size: 11px;
  letter-spacing: .15em;
  margin-bottom: 20px;
}
.mu-pathways strong { color: #fff !important; font-size: 17px; }
.mu-pathways small { color: rgba(255,255,255,.64) !important; }
.mu-pathways .mu-pathways__arrow {
  color: var(--mu-gold-soft) !important;
  font-size: 19px;
  margin: 0;
  position: absolute;
  right: 24px;
  top: 27px;
  transition: transform .24s ease;
}
.mu-pathways a:hover { background: rgba(255,255,255,.07) !important; }
.mu-pathways a:hover .mu-pathways__arrow { transform: translate3d(3px,-3px,0); }

.mu-facts { background: var(--mu-oat); padding: 104px 0 86px; }
.mu-facts__layout {
  align-items: start;
  display: grid;
  gap: clamp(56px,8vw,110px);
  grid-template-columns: minmax(260px,.78fr) minmax(0,1.5fr);
}
.mu-facts__intro { padding-top: 8px; }
.mu-facts__intro h2 {
  font-family: var(--mu-serif) !important;
  font-size: clamp(38px,4.3vw,58px);
  line-height: 1.02;
  margin: 0 0 22px;
  max-width: 470px;
}
.mu-facts__intro > p:last-child { color: var(--mu-ink-soft) !important; font-size: 15px; max-width: 430px; }
.mu-facts__grid { gap: 14px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.mu-facts__grid article,
.mu-facts__grid article:last-child {
  background: #fff;
  border: 0 !important;
  min-height: 180px;
  padding: 28px 30px !important;
}
.mu-facts__grid strong { font-size: clamp(42px,4.6vw,64px); margin-bottom: 17px; }
.mu-facts__grid span { max-width: 220px; }
.mu-facts__source { margin: 28px 0 0; }

.home .media-textarea {
  background: #fff !important;
  padding: 104px 0 !important;
}
.home .media-textarea + .media-textarea {
  background: var(--mu-primary-deep) !important;
  padding: 104px 0 !important;
}
.home .media-textarea__row { align-items: center !important; gap: clamp(48px,7vw,96px) !important; }
.home .media-textarea__figure,
.home .media-textarea__image { min-height: 560px !important; }
.home .media-textarea__wrap--parent {
  background: transparent !important;
  max-width: none !important;
  padding: 0 !important;
}
.home .media-textarea__heading::before {
  color: var(--mu-primary);
  content: "Academic faculty";
  display: block;
  font-family: var(--mu-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  margin-bottom: 22px;
  text-transform: uppercase;
}
.home .media-textarea + .media-textarea .media-textarea__heading,
.home .media-textarea + .media-textarea .media-textarea__heading::before { color: #fff !important; }
.home .media-textarea + .media-textarea .media-textarea__heading::before { color: var(--mu-gold-soft) !important; }
.home .media-textarea + .media-textarea .media-textarea__content p { color: rgba(255,255,255,.72) !important; }
.home .media-textarea + .media-textarea .btn--primary :where(.btn__label,.btn__icon) {
  background: var(--mu-gold) !important;
  color: var(--mu-primary-deep) !important;
}

.home .cta { padding: 92px 0 0 !important; }
.home .cta__row,
.home .cta__col,
.home .cta__outer,
.home .cta__figure,
.home .cta__image {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.home .cta + .featured-news { margin-top: 0 !important; }
.featured-news { padding-top: 92px !important; }

.faq__title { display: block !important; text-align: left !important; width: 100% !important; }
.faq__question {
  align-items: center !important;
  display: flex !important;
  gap: 20px !important;
  justify-content: space-between !important;
  width: 100% !important;
}
.faq__wrap--icon { flex: 0 0 36px !important; margin: 0 0 0 auto !important; }

.mu-form-section { background: var(--mu-oat) !important; padding: 108px 0 !important; }
.mu-form-section__container {
  gap: clamp(56px,7vw,96px) !important;
  grid-template-columns: minmax(270px,.72fr) minmax(0,1.45fr) !important;
  margin-inline: auto !important;
  max-width: 1240px !important;
  width: 100% !important;
}
.mu-form-section__intro { text-align: left !important; }
.mu-form-section__kicker {
  color: var(--mu-primary) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  margin-bottom: 18px !important;
  text-transform: uppercase !important;
}
.mu-form-section__heading { margin: 0 0 24px !important; }
.mu-form-section__form {
  background: #fff !important;
  border: 0 !important;
  box-shadow: 0 24px 70px rgba(23,21,66,.1) !important;
  display: grid !important;
  gap: 22px !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  padding: clamp(30px,4.5vw,58px) !important;
}
.mu-form-section__form .form-field { margin: 0 !important; }
.mu-form-section__form .form-field :where(input,select,textarea) { box-sizing: border-box !important; width: 100% !important; }
.mu-form-section__form .form-field:has(textarea),
.mu-form-section__form .submitButtonWrapper { grid-column: 1 / -1; }
.mu-form-section__form .submitButtonWrapper { margin-top: 6px; }
.mu-form-section__form .submitButtonWrapper button { min-width: 220px !important; }

.monarch-media-split__container { max-width: 1320px !important; }
.monarch-media-split__grid {
  display: grid !important;
  grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr) !important;
}
.monarch-media-split__content { padding: clamp(42px,5vw,76px) !important; }
.monarch-media-split__text ul {
  display: grid;
  gap: 0 28px;
  grid-template-columns: repeat(2,minmax(0,1fr));
  list-style: none;
  margin: 28px 0 0 !important;
  padding: 0 !important;
}
.monarch-media-split__text li {
  border-top: 1px solid var(--mu-line);
  margin: 0 !important;
  padding: 18px 0 !important;
}
.monarch-media-split__text li:last-child:nth-child(odd) { grid-column: 1 / -1; }

.mu-legal-page .hero--general {
  background: var(--mu-oat) !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 92px 0 86px !important;
}
.mu-legal-page .hero__container { display: block !important; }
.mu-legal-page .hero__row {
  display: block !important;
  margin-inline: 0 !important;
  width: 100% !important;
}
.mu-legal-page .hero__row,
.mu-legal-page .hero__col,
.mu-legal-page .hero__wrap--content {
  height: auto !important;
  min-height: 0 !important;
}
.mu-legal-page .hero__col--content {
  flex: 0 0 100% !important;
  margin-inline: auto !important;
  max-width: 820px !important;
  text-align: center !important;
  width: 100% !important;
}
.mu-legal-page .hero__wrap--content { align-items: center !important; }
.mu-legal-page .hero__outline { align-self: center !important; }
.mu-legal-page .hero__heading {
  margin: 0 auto !important;
  max-width: 780px !important;
  text-align: center !important;
  width: 100% !important;
}
.mu-legal-page .hero__col--media { display: none !important; }
.mu-legal-page .general-content {
  margin: 0 !important;
  padding: 86px 0 108px !important;
}
.mu-legal-page .general-content__container { max-width: 820px !important; }
.mu-legal-page .general-content__heading {
  font-size: clamp(34px,4vw,48px) !important;
  margin: 0 0 30px !important;
  text-align: left !important;
}
.mu-legal-page .general-content__content { color: var(--mu-ink-soft) !important; }
.mu-legal-page .general-content__content p { font-size: 17px !important; line-height: 1.78 !important; }
.mu-legal-page .general-content__content p + p { margin-top: 22px !important; }

@media (min-width: 1024px) {
  .header__item--parent > .header__sub-menu,
  .header__item--parent > .header__sub-menu[hidden] {
    background: #fff !important;
    border: 1px solid rgba(23,21,66,.12) !important;
    border-radius: 0 !important;
    gap: 0 22px !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    max-height: min(78vh,720px) !important;
    padding: 22px !important;
    width: min(940px,calc(100vw - 48px)) !important;
  }
  .header__sub-menu-item:has(.header__description) { grid-column: 1 / -1; }
  .header__sub-menu-link {
    border-bottom: 1px solid var(--mu-line) !important;
    border-radius: 0 !important;
    min-height: 54px !important;
    padding: 14px 10px !important;
  }
  .header__sub-menu-item:has(.header__description) .header__sub-menu-link {
    background: var(--mu-primary-deep) !important;
    border: 0 !important;
    color: #fff !important;
    margin: 8px 0 10px;
    min-height: 68px !important;
    padding: 14px 18px !important;
  }
  .header__sub-menu-item:first-child:has(.header__description) .header__sub-menu-link { margin-top: 0; }
  .header__sub-menu-item:has(.header__description) .header__description { color: rgba(255,255,255,.65); }
  .header__sub-menu-link:hover { background: var(--mu-oat) !important; }
  .header__sub-menu-item:has(.header__description) .header__sub-menu-link:hover { background: var(--mu-primary) !important; color: #fff !important; }
}

@media (max-width: 1024px) {
  .home-hero--alternative { height: 100svh !important; min-height: 700px !important; }
  .mu-facts__layout { gap: 44px; grid-template-columns: 1fr; }
  .mu-facts__intro h2 { max-width: 680px; }
  .home .media-textarea,
  .home .media-textarea + .media-textarea { padding: 78px 0 !important; }
  .home .media-textarea__figure,
  .home .media-textarea__image { min-height: 430px !important; }
  .mu-form-section__container,
  .monarch-media-split__grid { grid-template-columns: 1fr !important; }
  .mu-form-section__intro { position: static !important; }
}

@media (max-width: 767px) {
  .home-hero--alternative { height: 100svh !important; min-height: 680px !important; }
  .mu-pathways a { min-height: 108px; padding: 21px 52px 21px 20px; }
  .mu-pathways .mu-pathways__number { margin-bottom: 10px; }
  .mu-pathways .mu-pathways__arrow { right: 20px; top: 21px; }
  .mu-facts { padding: 72px 0 64px; }
  .mu-facts__layout { gap: 34px; }
  .mu-facts__grid { gap: 10px; grid-template-columns: 1fr; }
  .mu-facts__grid article,
  .mu-facts__grid article:nth-child(n+3),
  .mu-facts__grid article:last-child { border: 0 !important; min-height: 0; padding: 24px !important; }
  .home .media-textarea,
  .home .media-textarea + .media-textarea { padding: 68px 0 !important; }
  .home .media-textarea__row { gap: 34px !important; }
  .home .media-textarea__figure,
  .home .media-textarea__image { min-height: 300px !important; }
  .home .media-textarea__wrap--parent { padding: 0 !important; }
  .home .cta { padding-top: 68px !important; }
  .featured-news { padding-top: 72px !important; }
  .faq__title { padding: 16px !important; }
  .faq__question { gap: 14px !important; }
  .mu-form-section { padding: 72px 0 !important; }
  .mu-form-section__form { gap: 18px !important; grid-template-columns: 1fr !important; padding: 26px 20px !important; }
  .mu-form-section__form .form-field,
  .mu-form-section__form .submitButtonWrapper { grid-column: 1; }
  .mu-form-section__form .submitButtonWrapper button { width: 100% !important; }
  .monarch-media-split__text ul { grid-template-columns: 1fr; }
  .monarch-media-split__text li:last-child:nth-child(odd) { grid-column: auto; }
  .mu-legal-page .hero--general { padding: 64px 0 60px !important; }
  .mu-legal-page .general-content { padding: 62px 0 78px !important; }
  .mu-legal-page .general-content__content p { font-size: 16px !important; }
}

:where(.mu-hero-action, .mu-pathways a, .home-page-cards__card, .mu-experience-card, .monarch-related-card, .archive .news-card, .featured-news .news-card):active {
  transform: scale(.985) !important;
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
  .mu-reveal { opacity: 1 !important; transform: none !important; }
}

/* 2026-08-13 editorial media panels: one composition, not two adjacent boxes */
.monarch-media-split {
  background: var(--mu-oat) !important;
  overflow: clip !important;
  padding: clamp(88px, 8vw, 128px) 0 !important;
  position: relative;
}
.monarch-media-split::before {
  background: linear-gradient(135deg, rgba(225, 172, 40, .14), transparent 64%);
  content: "";
  height: 360px;
  pointer-events: none;
  position: absolute;
  right: -120px;
  top: -140px;
  transform: rotate(12deg);
  width: 360px;
}
.monarch-media-split__container {
  max-width: none !important;
  padding-inline: clamp(18px, 2.5vw, 44px) !important;
  width: 100% !important;
}
.monarch-media-split__grid {
  align-items: center !important;
  display: grid !important;
  gap: 0 !important;
  grid-template-columns: minmax(0, 1.04fr) minmax(540px, .96fr) !important;
}
.monarch-media-split__figure {
  box-shadow: 0 32px 80px rgba(23, 21, 66, .14) !important;
  height: clamp(620px, 47vw, 720px) !important;
  margin: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  position: relative !important;
}
.monarch-media-split__figure::after {
  background: linear-gradient(180deg, transparent 48%, rgba(10, 9, 32, .76) 100%);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
}
.monarch-media-split__image {
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 58% !important;
  transition: transform .7s cubic-bezier(.2, .7, .2, 1) !important;
  width: 100% !important;
}
.monarch-media-split:hover .monarch-media-split__image { transform: scale(1.025); }
.monarch-media-split__caption {
  bottom: clamp(28px, 4vw, 48px);
  color: #fff;
  left: clamp(26px, 4vw, 52px);
  max-width: 330px;
  position: absolute;
  z-index: 2;
}
.monarch-media-split__caption span {
  color: var(--mu-gold);
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .15em;
  margin-bottom: 10px;
  text-transform: uppercase;
}
.monarch-media-split__caption strong {
  display: block;
  font-family: var(--mu-serif);
  font-size: clamp(24px, 2.4vw, 34px);
  font-weight: 400;
  line-height: 1.08;
}
.monarch-media-split__content {
  background: var(--mu-primary-deep) !important;
  box-shadow: 0 32px 84px rgba(13, 11, 48, .2) !important;
  color: #fff !important;
  margin-left: clamp(-104px, -6vw, -72px) !important;
  min-width: 0;
  padding: clamp(48px, 5vw, 76px) !important;
  position: relative;
  z-index: 3;
}
.monarch-media-split__content::after {
  background: var(--mu-gold);
  content: "";
  height: 4px;
  left: clamp(48px, 5vw, 76px);
  position: absolute;
  top: 0;
  width: 84px;
}
.monarch-media-split__eyebrow {
  color: var(--mu-gold) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .15em !important;
  margin: 0 0 18px !important;
  text-transform: uppercase !important;
}
.monarch-media-split__heading {
  color: #fff !important;
  font-size: clamp(42px, 4.5vw, 62px) !important;
  margin: 0 0 26px !important;
  max-width: 560px;
}
.monarch-media-split__text > p {
  color: rgba(255, 255, 255, .78) !important;
  font-size: 17px !important;
  line-height: 1.68 !important;
  max-width: 650px;
}
.monarch-media-split__text ul {
  counter-reset: requirement;
  display: grid !important;
  gap: 0 30px !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  list-style: none !important;
  margin: 32px 0 0 !important;
  padding: 0 !important;
}
.monarch-media-split__text li {
  border-color: rgba(255, 255, 255, .2) !important;
  color: rgba(255, 255, 255, .72) !important;
  counter-increment: requirement;
  font-size: 15px !important;
  line-height: 1.62 !important;
  margin: 0 !important;
  padding: 22px 0 22px 48px !important;
  position: relative;
}
.monarch-media-split__text li::before {
  color: var(--mu-gold);
  content: counter(requirement, decimal-leading-zero);
  font-size: 11px;
  font-weight: 700;
  left: 0;
  letter-spacing: .12em;
  position: absolute;
  top: 25px;
}
.monarch-media-split__text li strong { color: #fff !important; }
.monarch-media-split__button { margin-top: 30px !important; }
.monarch-media-split__button .btn__label {
  background: var(--mu-gold) !important;
  color: var(--mu-primary-deep) !important;
}
.monarch-media-split__button .btn__icon {
  background: #fff !important;
  color: var(--mu-primary-deep) !important;
}

/* Explicit button contrast across inherited template variants */
.btn--primary .btn__label,
.home .media-textarea .btn--primary .btn__label {
  color: #fff !important;
}
.header__button.btn--monotone,
.header__button.btn--monotone .btn__label--monotone {
  background: var(--mu-primary-deep) !important;
  color: #fff !important;
}
.home .header.mu-header--over-hero .header__button.btn--monotone,
.home .header.mu-header--over-hero .header__button.btn--monotone .btn__label--monotone {
  background: var(--mu-gold) !important;
  border-color: var(--mu-gold) !important;
  color: var(--mu-primary-deep) !important;
}
.btn .btn__label::after { display: none !important; }
.btn--primary .btn__label {
  background: var(--mu-primary) !important;
  color: #fff !important;
}
.btn--primary .btn__icon {
  background: var(--mu-primary) !important;
  color: #fff !important;
}
.home .media-textarea + .media-textarea .btn--primary .btn__label,
.home .media-textarea + .media-textarea .btn--primary .btn__icon {
  background: var(--mu-gold) !important;
  color: var(--mu-primary-deep) !important;
}
.btn--monotone .btn__label {
  background: var(--mu-primary-deep) !important;
  color: #fff !important;
}
.btn--monotone .btn__icon {
  background: var(--mu-gold) !important;
  color: var(--mu-primary-deep) !important;
}
.btn--monotone-alt .btn__label {
  background: #fff !important;
  color: var(--mu-primary-deep) !important;
}
.btn--monotone-alt .btn__icon {
  background: #fff !important;
  color: var(--mu-primary) !important;
}
.btn--link .btn__label {
  background: transparent !important;
  color: currentColor !important;
  padding-left: 0 !important;
}
.btn--link .btn__icon {
  background: var(--mu-gold) !important;
  color: var(--mu-primary-deep) !important;
}
.btn:hover .btn__label { filter: brightness(1.06); }
.btn:focus-visible { outline: 3px solid var(--mu-gold) !important; outline-offset: 4px !important; }
.header__button:focus-visible,
.btn--primary:focus-visible { outline: 3px solid #fff !important; outline-offset: 3px !important; }

/* Remove the inherited white spacer above the news section */
.home .cta + .featured-news {
  background: var(--mu-oat) !important;
  margin: 0 !important;
  padding: 0 !important;
}
.home .cta + .featured-news .featured-news__container {
  background: var(--mu-oat) !important;
  padding: clamp(76px, 8vw, 112px) 0 clamp(84px, 9vw, 124px) !important;
}

@media (max-width: 1100px) {
  .monarch-media-split__grid { grid-template-columns: minmax(0, 1fr) minmax(480px, .96fr) !important; }
  .monarch-media-split__content { margin-left: -54px !important; padding: 48px !important; }
  .monarch-media-split__content::after { left: 48px; }
}

@media (max-width: 1024px) {
  .monarch-media-split__container { max-width: none !important; padding-inline: 24px !important; }
  .monarch-media-split__grid { grid-template-columns: 1fr !important; }
  .monarch-media-split__figure { height: clamp(400px, 68vw, 540px) !important; }
  .monarch-media-split__content {
    margin: -64px 32px 0 !important;
    padding: clamp(42px, 7vw, 62px) !important;
  }
  .monarch-media-split__content::after { left: clamp(42px, 7vw, 62px); }
}

@media (max-width: 767px) {
  .monarch-media-split { padding: 68px 0 !important; }
  .monarch-media-split__container { padding-inline: 12px !important; }
  .monarch-media-split__figure { height: 380px !important; }
  .monarch-media-split__caption { bottom: 58px; left: 24px; max-width: 260px; }
  .monarch-media-split__caption strong { font-size: 25px; }
  .monarch-media-split__content { margin: -34px 8px 0 !important; padding: 38px 24px !important; }
  .monarch-media-split__content::after { left: 24px; width: 64px; }
  .monarch-media-split__heading { font-size: clamp(38px, 12vw, 48px) !important; }
  .monarch-media-split__text > p { font-size: 16px !important; }
  .monarch-media-split__text ul { grid-template-columns: 1fr !important; }
  .monarch-media-split__text li:last-child:nth-child(odd) { grid-column: auto; }
  .monarch-media-split__button .btn { width: 100%; }
}

/* News page editorial sign-off */
.mu-news-signoff {
  background: var(--mu-primary-deep);
  color: #fff;
  overflow: hidden;
  padding: clamp(82px, 9vw, 130px) 0;
  position: relative;
}
.mu-news-signoff::after {
  border: 1px solid rgba(225, 172, 40, .28);
  border-radius: 50%;
  content: "";
  height: 420px;
  pointer-events: none;
  position: absolute;
  right: -190px;
  top: -210px;
  width: 420px;
}
.mu-news-signoff__inner {
  align-items: start;
  display: grid;
  gap: clamp(48px, 9vw, 130px);
  grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
  position: relative;
  z-index: 1;
}
.mu-news-signoff .mu-eyebrow { color: var(--mu-gold) !important; margin-bottom: 22px; }
.mu-news-signoff h2 {
  color: #fff;
  font-family: var(--mu-serif);
  font-size: clamp(46px, 5.5vw, 76px);
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: .98;
  margin: 0;
  max-width: 760px;
}
.mu-news-signoff__body {
  border-left: 1px solid rgba(255, 255, 255, .22);
  padding-left: clamp(30px, 4vw, 58px);
}
.mu-news-signoff__body > p {
  color: rgba(255, 255, 255, .76);
  font-size: 17px;
  line-height: 1.75;
  margin: 0;
  max-width: 520px;
}
.mu-news-signoff__topics {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 30px;
}
.mu-news-signoff__topics span {
  border: 1px solid rgba(255, 255, 255, .24);
  border-radius: 999px;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  padding: 9px 14px;
}
.mu-news-signoff__link {
  align-items: center;
  color: var(--mu-gold) !important;
  display: inline-flex;
  font-weight: 700;
  gap: 14px;
  margin-top: 38px;
  text-decoration: none;
}
.mu-news-signoff__link span { transition: transform .22s ease; }
.mu-news-signoff__link:hover span { transform: translateX(5px); }

@media (max-width: 900px) {
  .mu-news-signoff__inner { grid-template-columns: 1fr; }
  .mu-news-signoff__body { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .22); padding: 34px 0 0; }
}

@media (max-width: 767px) {
  .mu-news-signoff { padding: 72px 0 78px; }
  .mu-news-signoff h2 { font-size: clamp(42px, 12vw, 54px); }
  .mu-news-signoff__topics { gap: 8px; }
}

/* Contact page: remove inherited masks/caps and create one coherent hero */
.contact-hero {
  background: var(--mu-primary-deep) !important;
  margin: 0 !important;
  overflow: hidden !important;
  padding: 0 0 clamp(78px, 8vw, 112px) !important;
}
.contact-hero__wrap--text {
  -webkit-mask-image: none !important;
  background:
    radial-gradient(circle at 82% 12%, rgba(225, 172, 40, .14), transparent 27%),
    linear-gradient(118deg, #25238e 0%, #24228a 54%, #171542 100%) !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 0 clamp(72px, 7vw, 104px) !important;
  mask-image: none !important;
  overflow: hidden !important;
  padding: clamp(72px, 7vw, 104px) 0 clamp(70px, 6vw, 92px) !important;
  position: relative;
}
.contact-hero__wrap--text::before,
.contact-hero__wrap--text::after { display: none !important; }
.contact-hero__wrap--text .contact-hero__row {
  align-items: center !important;
  gap: clamp(48px, 7vw, 104px) !important;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .78fr) !important;
}
.contact-hero__preheading {
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 0 26px !important;
  outline: 0 !important;
  padding: 0 !important;
}
.contact-hero__preheading::before,
.contact-hero__preheading::after { display: none !important; }
.contact-hero__preheading .preheading {
  color: var(--mu-gold) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}
.contact-hero__heading {
  color: #fff !important;
  font-family: var(--mu-display, "Bricolage Grotesque", "Hanken Grotesk", Georgia, serif) !important;
  font-size: clamp(54px, 5.6vw, 86px) !important;
  font-weight: 400 !important;
  letter-spacing: -.035em !important;
  line-height: .94 !important;
  max-width: 660px;
  text-wrap: balance;
}
.contact-hero__col--content {
  border-left: 3px solid var(--mu-gold);
  max-width: 590px !important;
  padding: 8px 0 8px clamp(24px, 3vw, 42px) !important;
}
.contact-hero__col--content .contact-hero__content p {
  color: rgba(255, 255, 255, .82) !important;
  font-size: clamp(17px, 1.35vw, 19px) !important;
  line-height: 1.58 !important;
}
.contact-hero > .contact-hero__container > .contact-hero__row {
  align-items: stretch !important;
  gap: clamp(28px, 4vw, 54px) !important;
  grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr) !important;
}
.contact-hero__form-container form {
  box-shadow: 0 28px 80px rgba(7, 6, 28, .28) !important;
}
.contact-hero__wrap--contact {
  background: rgba(255, 255, 255, .065) !important;
  border-color: rgba(255, 255, 255, .16) !important;
}
.contact-hero__button { color: #fff !important; }

@media (max-width: 1024px) {
  .contact-hero__wrap--text .contact-hero__row,
  .contact-hero > .contact-hero__container > .contact-hero__row { grid-template-columns: 1fr !important; }
  .contact-hero__wrap--text .contact-hero__row { align-items: start !important; gap: 34px !important; }
  .contact-hero__col--content { max-width: 680px !important; }
}

@media (max-width: 767px) {
  .contact-hero__wrap--text { margin-bottom: 58px !important; padding: 64px 0 62px !important; }
  .contact-hero__heading { font-size: clamp(48px, 14vw, 64px) !important; }
  .contact-hero__col--content { padding-left: 22px !important; }
}

/* Centre the legal reading column as a page composition */
.mu-legal-page .general-content {
  max-width: none !important;
  width: 100% !important;
}
.mu-legal-page .general-content__container {
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 860px !important;
  width: min(calc(100% - 48px), 860px) !important;
}
.mu-legal-page .general-content__content,
.mu-legal-page .general-content__heading { text-align: left !important; }

/* Eliminate legacy external gaps; section padding now owns the rhythm */
.academic-programs-page .academic-faculty-split {
  margin: 0 !important;
  padding: clamp(82px, 8vw, 116px) 0 !important;
}
.academic-programs-page .academic-faculty-split__container { max-width: var(--mu-shell) !important; }
.academic-programs-page .academic-faculty-split__grid { gap: clamp(48px, 6vw, 84px) !important; }
.academic-programs-page .academic-faculty-split__media,
.academic-programs-page .academic-faculty-split__content {
  opacity: 1 !important;
  transform: none !important;
}
.academic-programs-page .academic-faculty-split__figure {
  border-radius: 0 !important;
  height: clamp(440px, 42vw, 570px) !important;
  min-height: 0 !important;
}
.program-detail .faqs { margin: 0 !important; }

@media (max-width: 767px) {
  .mu-legal-page .general-content__container { width: min(calc(100% - 32px), 860px) !important; }
  .academic-programs-page .academic-faculty-split { margin: 0 !important; padding: 68px 0 !important; }
  .academic-programs-page .academic-faculty-split__figure { height: 300px !important; }
}

/* One surface language: every rounded non-button element uses a 5px radius.
   Button elements and button-style links retain their intentional shape. */
body :where(*):not(:where(
    button,
    button *,
    [type="button"],
    [type="submit"],
    [role="button"],
    [role="button"] *,
    .btn,
    .btn *,
    .mu-hero-action,
    .mu-hero-action *
  )) {
  border-radius: 5px !important;
}

/* The legacy theme contains highly specific radius declarations. This classed
   companion keeps the same rule authoritative without touching buttons. */
body[class][class] [class][class]:not(:where(
  button,
  button *,
  [type="button"],
  [type="submit"],
  [role="button"],
  [role="button"] *,
  .btn,
  .btn *,
  .mu-hero-action,
  .mu-hero-action *
)) {
  border-radius: 5px !important;
}

/* 2026-08-14 final responsive component pass */

/* Entry requirements: let the information panel lead the composition instead
   of inheriting the legacy 560px cap. */
@media (min-width: 1101px) {
  .monarch-media-split__grid {
    grid-template-columns: minmax(0, .9fr) minmax(650px, 1.1fr) !important;
  }
  .monarch-media-split__content {
    margin-left: clamp(-108px, -7vw, -78px) !important;
    max-width: none !important;
    width: auto !important;
  }
}

@media (min-width: 1024px) and (max-width: 1100px) {
  .monarch-media-split__grid {
    grid-template-columns: minmax(0, .82fr) minmax(580px, 1.18fr) !important;
  }
  .monarch-media-split__content {
    max-width: none !important;
    width: auto !important;
  }
}

/* Navigation CTA: one pill, an existing theme arrow, and coordinated motion. */
.mu-nav-cta {
  align-items: center !important;
  box-shadow: 0 10px 24px rgba(23, 21, 66, .14) !important;
  display: inline-flex !important;
  gap: 14px !important;
  height: 61px !important;
  justify-content: center !important;
  max-width: none !important;
  min-width: 166px !important;
  padding: 0 25px !important;
  transition: background-color .24s ease, box-shadow .24s ease, transform .24s cubic-bezier(.22, 1, .36, 1) !important;
  width: auto !important;
}
.mu-nav-cta .btn__label {
  background: transparent !important;
  color: inherit !important;
  flex: 0 0 auto !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  width: auto !important;
}
.mu-nav-cta .mu-nav-cta__icon {
  align-items: center !important;
  background: transparent !important;
  color: inherit !important;
  display: inline-flex !important;
  flex: 0 0 14px !important;
  height: 14px !important;
  justify-content: center !important;
  min-width: 14px !important;
  padding: 0 !important;
  transition: transform .28s cubic-bezier(.22, 1, .36, 1) !important;
  width: 14px !important;
}
.mu-nav-cta .mu-nav-cta__icon svg {
  display: block !important;
  height: 13px !important;
  width: 12px !important;
}

@media (hover: hover) and (pointer: fine) {
  .mu-nav-cta:hover {
    box-shadow: 0 15px 30px rgba(23, 21, 66, .22) !important;
    transform: translate3d(0, -3px, 0) !important;
  }
  .mu-nav-cta:hover .mu-nav-cta__icon { transform: translate3d(5px, -2px, 0) !important; }
}

/* Unified card geometry and hover language. */
.home .home-page-cards__row,
.mu-experience__grid,
.featured-news__cards,
.archive__bottom,
.archive__top--right .row-2,
.monarch-related-links__grid,
.mu-contact-routes__grid { align-items: stretch !important; }

.featured-news__col--card,
.archive__col--card { display: flex !important; }

.featured-news .news-card,
.archive .news-card {
  background: #fff !important;
  border: 1px solid var(--mu-line) !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
}
.featured-news .news-card__figure,
.archive .news-card__figure {
  border-bottom: 1px solid var(--mu-line) !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  overflow: hidden !important;
}
.featured-news .news-card__body,
.archive .news-card__body {
  align-items: flex-start !important;
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  min-height: 154px !important;
  padding: 24px 24px 28px !important;
}
.featured-news .news-card__category,
.archive .news-card__category {
  align-items: center !important;
  border: 1px solid currentColor !important;
  display: inline-flex !important;
  min-height: 30px !important;
  padding: 6px 10px 5px !important;
  width: max-content !important;
}
.featured-news .news-card__heading,
.archive .news-card__heading {
  margin: 24px 0 0 !important;
  transition: color .22s ease !important;
}
.featured-news .news-card__image,
.archive .news-card__image,
.home-page-cards__image,
.mu-experience-card img,
.monarch-related-card__image {
  backface-visibility: hidden;
  transform: scale(1.001);
}
.home .home-page-cards__col,
.mu-experience-card,
.monarch-related-card,
.mu-contact-routes__grid article { height: 100% !important; }
.home .home-page-cards__card {
  height: 430px !important;
  min-height: 430px !important;
}
.mu-experience-card:not(.mu-experience-card--feature) {
  display: grid !important;
  grid-template-rows: 300px 1fr !important;
}
.mu-experience-card:not(.mu-experience-card--feature) img { height: 300px !important; }
.mu-experience-card:not(.mu-experience-card--feature) > div {
  align-content: start;
  display: grid;
}
.monarch-related-card__media { overflow: hidden !important; }
.mu-contact-routes__grid article {
  display: flex !important;
  flex-direction: column !important;
}
.mu-contact-routes__grid article > a { margin-top: auto !important; }

@media (hover: hover) and (pointer: fine) {
  .home-page-cards__card:hover,
  .home-page-cards__card:focus-within,
  .mu-experience-card:hover,
  .mu-experience-card:focus-within,
  .monarch-related-card:hover,
  .monarch-related-card:focus-visible,
  .archive .news-card:hover,
  .archive .news-card:focus-within,
  .featured-news .news-card:hover,
  .featured-news .news-card:focus-within {
    border-color: rgba(41, 36, 122, .3) !important;
    box-shadow: 0 18px 45px rgba(23, 21, 66, .14) !important;
    transform: translate3d(0, -3px, 0) !important;
  }
  .featured-news .news-card:hover .news-card__heading,
  .archive .news-card:hover .news-card__heading { color: var(--mu-primary) !important; }
  .home-page-cards__card:hover .home-page-cards__image,
  .mu-experience-card:hover img,
  .monarch-related-card:hover .monarch-related-card__image,
  .archive .news-card:hover .news-card__image,
  .featured-news .news-card:hover .news-card__image { transform: scale(1.025) !important; }
}

/* Contact page: an image-led first impression followed by a clean enquiry desk. */
.contact-hero {
  background: var(--mu-oat) !important;
  padding-bottom: clamp(80px, 8vw, 118px) !important;
}
.contact-hero__wrap--text {
  background: var(--mu-primary-deep) !important;
  margin-bottom: 0 !important;
  min-height: 610px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: relative !important;
}
.contact-hero__wrap--text::after {
  background: url("provided-2026/main-campus-gate.jpeg") center / cover no-repeat !important;
  bottom: 0;
  content: "";
  display: block !important;
  height: 100% !important;
  position: absolute;
  right: 0;
  top: 0;
  width: 47%;
  z-index: 0;
}
.contact-hero__wrap--text::before {
  background: linear-gradient(90deg, var(--mu-primary-deep) 0%, var(--mu-primary-deep) 44%, rgba(23, 21, 66, .72) 67%, rgba(23, 21, 66, .22) 100%) !important;
  content: "";
  display: block !important;
  inset: 0;
  position: absolute;
  z-index: 1;
}
.contact-hero__wrap--text .contact-hero__container { position: relative !important; z-index: 2 !important; }
.contact-hero__wrap--text .contact-hero__row {
  align-items: center !important;
  grid-template-columns: minmax(0, 1.04fr) minmax(360px, .76fr) !important;
  min-height: 610px !important;
}
.contact-hero__heading {
  font-size: clamp(64px, 7.4vw, 108px) !important;
  line-height: .88 !important;
  max-width: 700px !important;
}
.contact-hero__col--content {
  align-self: end !important;
  backdrop-filter: blur(10px);
  background: rgba(23, 21, 66, .88) !important;
  border: 1px solid rgba(255, 255, 255, .18) !important;
  border-left: 4px solid var(--mu-gold) !important;
  margin-bottom: clamp(50px, 6vw, 78px) !important;
  max-width: 570px !important;
  padding: clamp(28px, 3vw, 42px) !important;
}
.contact-hero > .contact-hero__container {
  padding-top: clamp(72px, 7vw, 104px) !important;
}
.contact-hero > .contact-hero__container > .contact-hero__row {
  gap: clamp(28px, 4vw, 52px) !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr) !important;
}
.contact-hero__form-container form {
  border: 1px solid rgba(23, 21, 66, .1) !important;
  box-shadow: 0 24px 60px rgba(23, 21, 66, .11) !important;
}
.contact-hero__wrap--contact {
  background: var(--mu-primary-deep) !important;
  border: 0 !important;
  box-shadow: 0 24px 60px rgba(23, 21, 66, .11) !important;
}
.mu-contact-faq { background: var(--mu-oat) !important; }

/* Mobile navigation: full-height, legible, scrollable, and explicit about the
   Academic Programmes submenu state. */
@media (max-width: 1024px) {
  .mobile-menu {
    background: var(--mu-primary-deep) !important;
    bottom: auto !important;
    box-shadow: 0 24px 60px rgba(7, 6, 28, .28) !important;
    display: flex !important;
    flex-direction: column !important;
    height: calc(100dvh - 70px) !important;
    inset-inline: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    pointer-events: none !important;
    position: fixed !important;
    top: 70px !important;
    transform: translate3d(0, -18px, 0) !important;
    transition: opacity .28s ease, transform .36s cubic-bezier(.22, 1, .36, 1), visibility .28s ease !important;
    visibility: hidden !important;
    width: 100% !important;
    z-index: 9998 !important;
  }
  .mobile-menu.mobile-menu--active {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translate3d(0, 0, 0) !important;
    visibility: visible !important;
  }
  body.mobile-menu-open { overflow: hidden !important; }
  .mobile-menu__body {
    display: block !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    padding: 18px clamp(18px, 5vw, 42px) 34px !important;
  }
  .mobile-menu__menu {
    list-style: none !important;
    margin: 0 auto !important;
    max-width: 820px !important;
    padding: 0 !important;
  }
  .mobile-menu__item {
    border-bottom: 1px solid rgba(255, 255, 255, .14) !important;
    margin: 0 !important;
    min-width: 0 !important;
    padding: 0 !important;
    position: relative !important;
  }
  .mobile-menu__item--parent {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 52px !important;
  }
  .mobile-menu__link {
    align-items: center !important;
    display: flex !important;
    font-family: var(--mu-display, "Bricolage Grotesque", "Hanken Grotesk", sans-serif) !important;
    font-size: clamp(22px, 4vw, 27px) !important;
    font-weight: 500 !important;
    letter-spacing: -.02em !important;
    line-height: 1.12 !important;
    min-height: 72px !important;
    padding: 12px 4px !important;
    text-decoration: none !important;
  }
  .mobile-menu__link .mobile-menu__wrap,
  .mobile-menu__link p { margin: 0 !important; }
  .mobile-menu__link[aria-current="page"] { color: var(--mu-gold) !important; }
  .mobile-menu__arrow-wrap {
    align-self: center !important;
    background: rgba(255, 255, 255, .07) !important;
    border: 1px solid rgba(225, 172, 40, .58) !important;
    color: var(--mu-gold) !important;
    display: inline-flex !important;
    height: 44px !important;
    justify-self: end !important;
    min-width: 44px !important;
    opacity: 1 !important;
    padding: 0 !important;
    visibility: visible !important;
    width: 44px !important;
  }
  .mobile-menu__arrow {
    color: currentColor !important;
    display: block !important;
    height: 16px !important;
    opacity: 1 !important;
    transition: transform .3s cubic-bezier(.22, 1, .36, 1) !important;
    visibility: visible !important;
    width: 16px !important;
  }
  .mobile-menu__arrow-wrap svg.mobile-menu__arrow { width: 16px !important; }
  .mobile-menu__item--active > .mobile-menu__arrow-wrap {
    background: var(--mu-gold) !important;
    color: var(--mu-primary-deep) !important;
  }
  .mobile-menu__item--active > .mobile-menu__arrow-wrap .mobile-menu__arrow { transform: rotate(180deg) !important; }
  .mobile-menu__sub-menu {
    background: rgba(255, 255, 255, .065) !important;
    border-left: 3px solid var(--mu-gold) !important;
    display: grid !important;
    gap: 0 !important;
    grid-column: 1 / -1 !important;
    grid-template-columns: 1fr !important;
    list-style: none !important;
    margin: 0 0 18px !important;
    padding: 8px 14px !important;
  }
  .mobile-menu__sub-menu[hidden] { display: none !important; }
  .mobile-menu__sub-menu-item {
    border-bottom: 1px solid rgba(255, 255, 255, .1) !important;
    min-width: 0 !important;
  }
  .mobile-menu__sub-menu-item:last-child { border-bottom: 0 !important; }
  .mobile-menu__sub-menu-link {
    color: rgba(255, 255, 255, .88) !important;
    display: block !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    min-height: 50px !important;
    padding: 14px 8px !important;
    text-decoration: none !important;
  }
  .mobile-menu__sub-menu-link p { margin: 0 !important; }
  .mobile-menu__description {
    color: var(--mu-gold-soft) !important;
    font-size: 11px !important;
    margin-top: 4px !important;
    text-transform: uppercase !important;
  }
  .mobile-menu__footer {
    background: #100e32 !important;
    border-top: 1px solid rgba(255, 255, 255, .14) !important;
    flex: 0 0 auto !important;
    padding: 16px clamp(18px, 5vw, 42px) max(16px, env(safe-area-inset-bottom)) !important;
  }
  .mobile-menu__button.mu-nav-cta {
    background: var(--mu-gold) !important;
    color: var(--mu-primary-deep) !important;
    margin: 0 auto !important;
    max-width: 820px !important;
    width: 100% !important;
  }
  .header__mobile {
    align-items: center !important;
    background: var(--mu-primary-deep) !important;
    border: 1px solid rgba(255, 255, 255, .2) !important;
    box-shadow: 0 8px 20px rgba(23, 21, 66, .16) !important;
    display: inline-flex !important;
    height: 48px !important;
    justify-content: center !important;
    min-width: 48px !important;
    width: 48px !important;
  }
  .header__button.mu-nav-cta { display: none !important; }
  body.mobile-menu-open #cookiescript_badge { bottom: 164px !important; right: 12px !important; }
  .header__mobile:focus-visible,
  .mobile-menu__arrow-wrap:focus-visible,
  .mobile-menu__link:focus-visible,
  .mobile-menu__sub-menu-link:focus-visible { outline: 3px solid var(--mu-gold) !important; outline-offset: 3px !important; }

  .contact-hero__wrap--text,
  .contact-hero__wrap--text .contact-hero__row { min-height: 720px !important; }
  .contact-hero__wrap--text::after {
    height: 54% !important;
    left: 0 !important;
    right: 0 !important;
    top: auto !important;
    width: 100% !important;
  }
  .contact-hero__wrap--text::before {
    background: linear-gradient(180deg, var(--mu-primary-deep) 0%, var(--mu-primary-deep) 45%, rgba(23, 21, 66, .6) 72%, rgba(23, 21, 66, .2) 100%) !important;
  }
  .contact-hero__wrap--text .contact-hero__row {
    align-content: space-between !important;
    gap: 32px !important;
    grid-template-columns: 1fr !important;
    padding-bottom: 42px !important;
    padding-top: 64px !important;
  }
  .contact-hero__col--content {
    align-self: end !important;
    margin: 0 !important;
    max-width: 680px !important;
  }
  .contact-hero > .contact-hero__container > .contact-hero__row { grid-template-columns: 1fr !important; }
}

@media (min-width: 640px) and (max-width: 1023px) {
  .mobile-menu__sub-menu { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .mobile-menu__sub-menu-item:nth-last-child(2) { border-bottom: 0 !important; }
}

@media (max-width: 767px) {
  .home .home-page-cards__card {
    height: 320px !important;
    min-height: 320px !important;
  }
  .featured-news .news-card__figure,
  .archive .news-card__figure,
  .archive .news-card--main .news-card__figure,
  .archive__top--left .news-card__figure { height: 230px !important; }
  .featured-news .news-card__body,
  .archive .news-card__body { min-height: 0 !important; padding: 22px 20px 26px !important; }
  .featured-news .news-card__heading,
  .archive .news-card__heading { margin-top: 20px !important; }
  .mu-experience-card:not(.mu-experience-card--feature) { grid-template-rows: 240px 1fr !important; }
  .mu-experience-card:not(.mu-experience-card--feature) img { height: 240px !important; }
  .contact-hero__wrap--text,
  .contact-hero__wrap--text .contact-hero__row { min-height: 680px !important; }
  .contact-hero__wrap--text .contact-hero__row { padding: 52px 0 28px !important; }
  .contact-hero__heading { font-size: clamp(52px, 15vw, 68px) !important; }
  .contact-hero__col--content { padding: 24px 20px !important; }
  .contact-hero > .contact-hero__container { padding-top: 58px !important; }
  .contact-hero__wrap--contact { padding: 30px 22px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .mu-nav-cta,
  .mu-nav-cta__icon,
  .mobile-menu,
  .mobile-menu__arrow,
  .home-page-cards__card,
  .mu-experience-card,
  .monarch-related-card,
  .news-card { transform: none !important; }
}

/* Contact hero copy panel: override the legacy grid-column reset that removes
   padding from every direct column inside the hero row. */
.contact-hero__wrap--text .contact-hero__row > .contact-hero__col.contact-hero__col--content {
  padding: clamp(30px, 2.8vw, 40px) clamp(28px, 3vw, 40px) !important;
}

@media (max-width: 767px) {
  .contact-hero__wrap--text .contact-hero__row > .contact-hero__col.contact-hero__col--content {
    padding: 26px 22px !important;
  }
}

/* Mobile navigation refinement: quiet header control, spacing-led hierarchy,
   icon-only programme toggle, and a CTA that matches the site's pill buttons. */
@media (max-width: 1024px) {
  .header__mobile,
  .header__mobile:hover,
  .header__mobile.active {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--mu-primary-deep) !important;
    height: 44px !important;
    min-width: 44px !important;
    padding: 0 !important;
    width: 44px !important;
  }
  .header__mobile::before,
  .header__mobile::after {
    background-color: var(--mu-primary-deep) !important;
  }
  .header__mobile:focus-visible,
  .mobile-menu__arrow-wrap:focus-visible {
    outline: 0 !important;
  }
  .header__mobile:focus-visible::before,
  .header__mobile:focus-visible::after { background-color: var(--mu-gold) !important; }
  .mobile-menu__arrow-wrap:focus-visible .mobile-menu__arrow {
    color: #fff !important;
    filter: drop-shadow(0 0 3px rgba(225, 172, 40, .75));
  }

  .mobile-menu__menu {
    display: grid !important;
    gap: 4px !important;
  }
  .mobile-menu__item,
  .mobile-menu__sub-menu-item {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  .mobile-menu__link {
    background: transparent !important;
    border: 0 !important;
    min-height: 64px !important;
    padding: 12px 4px !important;
  }
  .mobile-menu__link:hover,
  .mobile-menu__link:focus-visible { color: var(--mu-gold-soft) !important; }

  .mobile-menu__arrow-wrap,
  .mobile-menu__arrow-wrap:hover,
  .mobile-menu__item--active > .mobile-menu__arrow-wrap {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--mu-gold) !important;
  }
  .mobile-menu__arrow-wrap:hover .mobile-menu__arrow { transform: translateY(2px) !important; }
  .mobile-menu__item--active > .mobile-menu__arrow-wrap:hover .mobile-menu__arrow,
  .mobile-menu__item--active > .mobile-menu__arrow-wrap .mobile-menu__arrow { transform: rotate(180deg) !important; }

  .mobile-menu__sub-menu {
    background: rgba(255, 255, 255, .055) !important;
    border: 0 !important;
    gap: 2px !important;
    margin: 4px 0 16px !important;
    padding: 10px 14px !important;
  }
  .mobile-menu__sub-menu-link {
    background: transparent !important;
    border: 0 !important;
    min-height: 48px !important;
    padding: 13px 8px !important;
  }

  .mobile-menu__footer {
    background: var(--mu-primary-deep) !important;
    border: 0 !important;
    padding: 18px clamp(18px, 5vw, 42px) max(20px, env(safe-area-inset-bottom)) !important;
  }
  .mobile-menu__button.mu-nav-cta {
    background: var(--mu-gold) !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    color: var(--mu-primary-deep) !important;
    height: 58px !important;
    margin: 0 auto !important;
    max-width: 360px !important;
    min-height: 58px !important;
    width: 100% !important;
  }
  .mobile-menu__button.mu-nav-cta .btn__label,
  .mobile-menu__button.mu-nav-cta .mu-nav-cta__icon { color: var(--mu-primary-deep) !important; }
  body.mobile-menu-open #cookiescript_badge {
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
  }
}

/* Route-wide responsive resilience. Keep flexible layout children shrinkable,
   media inside its owning column, and long contact strings wrapable at 320px. */
main :where(
  [class*="__grid"] > *,
  [class*="__row"] > *,
  .row > [class*="col-"],
  .row > .col
) {
  min-width: 0;
}
main :where(img, video, iframe) {
  max-width: 100%;
}
main :where(input, select, textarea) {
  max-width: 100%;
  min-width: 0;
}
main :where(a[href^="mailto:"], a[href^="tel:"]) {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* Home faculty cards: the theme's narrow-screen fixed height and reduced text
   column pushed headings above the image and descriptions under the arrow.
   Give the overlay a real mobile composition with reserved CTA space. */
@media (max-width: 1024px) {
  .home .home-page-cards__card {
    height: 430px !important;
    min-height: 430px !important;
    padding: 0 !important;
  }
  .home .home-page-cards__card .page-card__body {
    bottom: 0 !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    inset: 0 !important;
    justify-content: flex-end !important;
    padding: clamp(22px, 4.5vw, 28px) !important;
    position: absolute !important;
    width: 100% !important;
  }
  .home .home-page-cards__card .page-card__wrap {
    flex: 0 0 auto !important;
    max-width: none !important;
    width: 100% !important;
  }
  .home .home-page-cards__card .page-card__heading {
    max-width: min(100%, 420px) !important;
  }
  .home .home-page-cards__card .page-card__content {
    flex: 0 0 auto !important;
    margin: 14px 0 72px !important;
    max-width: none !important;
    width: 100% !important;
  }
  .home .home-page-cards__card .page-card__content p {
    line-height: 1.48 !important;
    margin: 0 !important;
    overflow-wrap: break-word;
  }
  .home .home-page-cards__card .page-card__icon {
    bottom: 24px !important;
    right: 24px !important;
  }
}

@media (max-width: 359px) {
  .home .home-page-cards__card {
    height: 450px !important;
    min-height: 450px !important;
  }
  .home .home-page-cards__card .page-card__body {
    padding: 20px !important;
  }
  .home .home-page-cards__card .page-card__heading {
    font-size: 22px !important;
  }
  .home .home-page-cards__card .page-card__icon {
    bottom: 20px !important;
    right: 20px !important;
  }
}

/* General inner-page heroes: neutralize the legacy negative Bootstrap row
   margins so headings and media keep an intentional phone gutter. */
@media (max-width: 767px) {
  .hero--general .hero__row {
    margin-inline: 0 !important;
    width: 100% !important;
  }
  .hero--general .hero__heading {
    font-size: clamp(40px, 12vw, 44px) !important;
    overflow-wrap: normal !important;
  }
  .hero--general .hero__content p {
    font-size: 16px !important;
    line-height: 1.55 !important;
  }
}

@media (max-width: 359px) {
  .hero--general .hero__heading {
    font-size: 40px !important;
  }
}

/* Mobile navigation: keep the closed header and open drawer on one continuous
   navy surface. These selectors deliberately outrank the homepage scrolled
   header rules so the white hamburger can never disappear on a white strip. */
@media (max-width: 1024px) {
  .header,
  .header .header__container,
  body.home .header.mu-header--over-hero,
  body.home .header.mu-header--scrolled,
  body.home .header.mu-header--over-hero .header__container,
  body.home .header.mu-header--scrolled .header__container,
  body.mobile-menu-open .header,
  body.mobile-menu-open .header .header__container {
    background: var(--mu-primary-deep) !important;
    box-shadow: none !important;
  }
  body.home:not(.mobile-menu-open) .header.mu-header--over-hero,
  body.home:not(.mobile-menu-open) .header.mu-header--over-hero .header__container {
    background: transparent !important;
  }
  .header .header__row {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  .header__logo-link {
    align-items: center !important;
    display: flex !important;
    gap: 12px !important;
    opacity: 1 !important;
    position: relative;
    visibility: visible !important;
    z-index: 4;
  }
  .header__logo {
    background: #fff;
    border-radius: 5px;
    display: block !important;
    flex: 0 0 auto;
    margin-right: 0 !important;
  }
  .header__logo-text {
    border-left-color: rgba(255, 255, 255, .28) !important;
    padding-left: 12px !important;
  }
  .header .header__logo-name,
  .header .header__logo-sub,
  body.mobile-menu-open .header .header__logo-name,
  body.mobile-menu-open .header .header__logo-sub {
    color: #fff !important;
  }
  .header__mobile,
  .header__mobile.active {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #fff !important;
    display: flex !important;
    opacity: 1 !important;
    position: relative;
    visibility: visible !important;
    z-index: 4;
  }
  .header__mobile::before,
  .header__mobile::after {
    background-color: #fff !important;
  }
  body.mobile-menu-open .header .header__row {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  body.mobile-menu-open .header__logo-text {
    border-left-color: rgba(255, 255, 255, .28) !important;
  }
  body.mobile-menu-open .header__mobile,
  body.mobile-menu-open .header__mobile.active {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #fff !important;
  }
  body.mobile-menu-open .header__mobile::before,
  body.mobile-menu-open .header__mobile::after {
    background-color: #fff !important;
  }
  body.mobile-menu-open .header__mobile:focus-visible::before,
  body.mobile-menu-open .header__mobile:focus-visible::after {
    background-color: #fff !important;
  }
  body.mobile-menu-open .mobile-menu {
    box-shadow: none !important;
  }
  body.mobile-menu-open .mobile-menu__link {
    color: #fff !important;
  }
  body.mobile-menu-open .mobile-menu__link[aria-current="page"] {
    color: var(--mu-gold-soft) !important;
  }
  .mobile-menu__button.mu-nav-cta {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #fff !important;
    font-weight: 500 !important;
    gap: 0 !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 0 !important;
    width: auto !important;
  }
  .mobile-menu__button.mu-nav-cta .btn__label {
    background: var(--mu-primary) !important;
    color: #fff !important;
    min-height: 48px !important;
    padding-inline: 22px !important;
  }
  .mobile-menu__button.mu-nav-cta .mu-nav-cta__icon {
    background: var(--mu-primary) !important;
    color: #fff !important;
    flex: 0 0 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    width: 46px !important;
  }
}
