/* uc.css - il foglio unico di unicollege.eu.
   Estratto il 3 settembre 2026 dal blocco che stava identico su 56 pagine.
   Chi cambia una regola qui la cambia per tutte quelle pagine: e' il punto. */


  :root {
    --navy: #193458; --navy-deep: #19243d; --navy-soft: #002F56;
    --link: #0862A8; --accent: #C14048;
    --text: #0E121B; --text-mid: #4A4A4A;
    --bg: #fff; --bg-soft: #F5F7FA; --bg-tint: #E1E4EA;
    --pale-blue: #D0DDEB; --pale-blue-soft: #E8EEF5;
    --line: #E5E5E5; --line-blue: #D0DDEB;
    --brand-sans: "Atkinson Hyperlegible", "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    --brand-body: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
  }
  * { box-sizing: border-box; }
  html { scroll-behavior: smooth; scroll-padding-top: 100px; }
  body { margin: 0; font: 400 16px/1.6 var(--brand-body); color: var(--text); background: var(--bg); }
  a { color: var(--link); text-decoration: none; }
  a:hover { color: var(--navy); text-decoration: underline; }
  h1,h2,h3,h4,h5 { font-family: var(--brand-sans); color: var(--navy); margin: 0; font-weight: 400; letter-spacing: -.005em; line-height: 1.2; }
  img { max-width: 100%; height: auto; display: block; }

  /* TOPBAR */
  .uc-topbar { background: var(--navy-deep); color: #fff; font: 400 13px/1 var(--brand-body); }
  .uc-topbar__inner { max-width: 1440px; margin: 0 auto; padding: 8px 32px; display: flex; gap: 22px; align-items: center; flex-wrap: wrap; }
  .uc-topbar a { color: #fff; padding: 4px 0; display: inline-flex; align-items: center; gap: 6px; }
  .uc-topbar a:hover { color: var(--pale-blue); text-decoration: underline; }
  .uc-topbar__spacer { flex: 1; }
  .uc-topbar__search { display: inline-flex; align-items: center; gap: 6px; color: #fff; background: transparent; padding: 6px 10px; cursor: pointer; font: 400 13px/1 var(--brand-body); border: 1px solid rgba(255,255,255,.25); border-radius: 18px; }
  .uc-topbar__search:hover { background: rgba(255,255,255,.10); border-color: rgba(255,255,255,.6); }
  .uc-topbar__search svg { width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 2; }

  /* HEADER */
  .uc-header { background: #fff; border-bottom: 1px solid var(--line-blue); position: sticky; top: 0; z-index: 100; }
  .uc-header__inner { max-width: 1440px; margin: 0 auto; padding: 16px 32px; display: flex; align-items: center; gap: 24px; }
  .uc-brand { display: inline-flex; align-items: center; gap: 16px; text-decoration: none; flex-shrink: 0; }
  .uc-brand__logo { height: 44px; width: auto; }
  .uc-brand__tag { font: 400 12px/1.32 var(--brand-body); color: var(--navy); border-left: 1px solid var(--line-blue); padding-left: 16px; }
  .uc-nav { margin-left: auto; }
  .uc-nav > ul { display: flex; gap: 4px; list-style: none; padding: 0; margin: 0; align-items: center; }
  .uc-nav > ul > li > a { color: var(--navy-soft); font: 500 18px/1 var(--brand-body); padding: 26px 20px; display: inline-block; position: relative; white-space: nowrap; }
  .uc-nav > ul > li > a:hover { color: var(--navy-deep); font-weight: 700; text-decoration: none; }
  .uc-nav > ul > li > a::after { content: ""; position: absolute; left: 20px; right: 20px; bottom: 14px; height: 2px; background: var(--accent); transform: scaleX(0); transform-origin: left; transition: transform .2s ease; }
  .uc-nav > ul > li:hover > a::after { transform: scaleX(1); }
  .uc-cta { background: var(--navy); color: #fff !important; padding: 9px 18px; font: 600 13px/1 var(--brand-body); border: 2px solid var(--navy); border-radius: 22px; margin-left: 12px; white-space: nowrap; }
  .uc-cta:hover { background: var(--accent); border-color: var(--accent); }

  /* INTERNAL PAGE HERO */
  .uc-page-hero { position: relative; background: var(--navy); color: #fff; overflow: hidden; }
  .uc-page-hero__img { position: absolute; inset: 0; background-size: cover; background-position: center; opacity: .85; }
  .uc-page-hero__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }
  .uc-page-hero__inner { position: relative; max-width: 1440px; margin: 0 auto; padding: 56px 32px; z-index: 1; min-height: 280px; display: flex; flex-direction: column; justify-content: flex-end; }
  .uc-breadcrumb { font: 400 13px/1.4 var(--brand-body); color: var(--pale-blue); margin: 0 0 18px; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; }
  .uc-breadcrumb a { color: var(--pale-blue); }
  .uc-breadcrumb a:hover { color: #fff; }
  .uc-breadcrumb .sep { color: rgba(255,255,255,.4); margin: 0 4px; }
  .uc-page-hero h1 { color: #fff; font: 400 72px/1.02 var(--brand-sans); margin: 0; max-width: 1000px; letter-spacing: -.02em; }

  /* MAIN LAYOUT — sidebar + content */
  .uc-main { max-width: 1440px; margin: 0 auto; padding: 60px 32px 80px; display: grid; grid-template-columns: 280px 1fr; gap: 80px; }
  .uc-sidebar { position: sticky; top: 100px; align-self: start; }
  .uc-sidebar__title { font: 700 19px/1.3 var(--brand-sans); color: var(--navy-soft); margin: 0 0 16px; padding-bottom: 12px; border-bottom: 2px solid var(--accent); text-decoration: underline; }
  .uc-sidebar__list { list-style: none; padding: 0; margin: 0; }
  .uc-sidebar__list li { margin: 0; border-bottom: 1px solid var(--line-blue); }
  .uc-sidebar__list li:first-child { border-top: 1px solid var(--line-blue); }
  .uc-sidebar__list a { display: block; font: 400 15px/1.4 var(--brand-body); color: var(--text); padding: 14px 0; transition: color .15s, padding .15s; }
  .uc-sidebar__list a:hover { color: var(--accent); padding-left: 6px; text-decoration: none; }
  .uc-sidebar__list a.is-active { color: var(--navy-soft); font-weight: 700; text-decoration: underline; }

  /* CONTENT TYPOGRAPHY */
  .uc-content > * + * { margin-top: 0; }
  .uc-content h2 { font: 400 36px/1.15 var(--brand-sans); color: var(--navy-soft); margin: 56px 0 18px; padding-bottom: 0; border: 0; }
  .uc-content h2:first-child { margin-top: 0; }
  .uc-content h3 { font: 400 24px/1.3 var(--brand-sans); color: var(--navy); margin: 36px 0 12px; }
  .uc-content p { font: 400 18px/1.65 var(--brand-body); color: var(--text); margin: 0 0 22px; max-width: 820px; }
  .uc-content p.lead { font: 400 22px/1.55 var(--brand-sans); color: var(--navy-soft); margin: 0 0 28px; }
  .uc-content p strong { font-weight: 700; color: var(--navy-soft); }
  .uc-content hr { border: 0; border-top: 1px solid var(--line-blue); margin: 40px 0; }
  .uc-content ul { font: 400 17px/1.55 var(--brand-body); color: var(--text); list-style: none; padding: 0; margin: 16px 0; max-width: 820px; }
  .uc-content ul li { padding: 14px 0 14px 22px; margin: 0; border-bottom: 1px solid rgba(173,196,219,.57); position: relative; }
  .uc-content ul li::before { content: ""; position: absolute; left: 0; top: 22px; width: 10px; height: 1px; background: var(--accent); }
  .uc-content ul li:last-child { border-bottom: 0; }
  /* Keep specialized list-style intact for chip rows, careers-grid, etc */
  .uc-content .uc-chip-row, .uc-content .uc-chip-row li, .uc-content .uc-careers-grid, .uc-content .uc-careers-grid li, .uc-content .uc-housing li, .uc-content .uc-linkbox__menu li { border: 0 !important; padding-left: 0; }
  .uc-content .uc-chip-row li::before, .uc-content .uc-linkbox__menu li::before { display: none; }
  /* preserve original red dash for careers-grid */
  .uc-content .uc-careers-grid li { padding: 14px 0 14px 22px; }
  .uc-content .uc-careers-grid li::before { display: block; }
  /* lists inside cards (feat/svc/dept/card) keep some marker */
  .uc-feat ul, .uc-svc ul, .uc-dept ul, .uc-card ul, .uc-alumni ul, .uc-region ul, .uc-type ul { list-style: disc; padding-left: 22px; }
  .uc-feat ul li, .uc-svc ul li, .uc-dept ul li, .uc-card ul li, .uc-alumni ul li, .uc-region ul li, .uc-type ul li { border: 0; padding: 4px 0; }
  .uc-feat ul li::before, .uc-svc ul li::before, .uc-dept ul li::before, .uc-card ul li::before, .uc-alumni ul li::before, .uc-region ul li::before, .uc-type ul li::before { display: none; }

  /* PULL QUOTE — Cattolica style */
  .uc-quote { background: var(--pale-blue-soft); padding: 36px 40px; margin: 36px 0 28px; position: relative; max-width: 820px; }
  .uc-quote::before { content: "\201C"; position: absolute; top: 6px; left: 24px; font: 700 64px/1 var(--brand-sans); color: var(--navy); }
  .uc-quote__text { font: 400 26px/1.4 var(--brand-sans); color: var(--navy-soft); margin: 0; padding: 22px 0 0; }
  .uc-quote__text::after { content: " \201D"; color: var(--navy); }
  .uc-quote__cite { font: 400 13px/1.4 var(--brand-body); color: var(--text-mid); margin: 18px 0 0; }

  /* KEYFACTS */
  .uc-keyfacts { display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px; padding: 32px 0; border-top: 1px solid var(--line-blue); border-bottom: 1px solid var(--line-blue); margin: 36px 0; }
  .uc-keyfacts__n { font: 500 36px/1 var(--brand-body); color: var(--navy); letter-spacing: -.02em; margin: 0; }
  .uc-keyfacts__l { font: 400 13px/1.4 var(--brand-body); color: var(--text-mid); margin: 8px 0 0; }
  @media (max-width: 800px) { .uc-keyfacts { grid-template-columns: repeat(2, 1fr); gap: 24px; } }

  /* SECTION INTRO BOLD */
  .uc-section-intro { font: 700 20px/1.55 var(--brand-body); color: var(--navy-soft); margin: 0 0 14px; }

  /* RESPONSIVE */
  @media (max-width: 1000px) {
    .uc-main { grid-template-columns: 1fr; gap: 40px; }
    .uc-sidebar { position: static; }
    .uc-content h2 { font-size: 28px; }
    .uc-content p { font-size: 16px; }
    .uc-page-hero h1 { font-size: 36px; }
  }

  /* FOOTER */
  .uc-footer { background: var(--navy-deep); color: #fff; padding: 64px 0 28px; }
  .uc-footer__inner { max-width: 1440px; margin: 0 auto; padding: 0 32px; }
  .uc-footer__cols { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 40px; margin-bottom: 40px; }
  .uc-footer__brand-logo { height: 56px; width: auto; filter: brightness(0) invert(1); margin: 0 0 14px; display: block; }
  .uc-footer__brand-tag { font: 400 14px/1.5 var(--brand-body); color: var(--pale-blue); margin: 0; }
  .uc-footer h4 { font: 500 12px/1 var(--brand-body); color: var(--accent); text-transform: uppercase; letter-spacing: 1.5px; margin: 0 0 18px; padding-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,.15); }
  .uc-footer a { display: block; color: #fff; padding: 5px 0; font: 400 14px/1 var(--brand-body); text-decoration: none; }
  .uc-footer a:hover { color: var(--pale-blue); }
  .uc-footer__bottom { border-top: 1px solid rgba(255,255,255,.12); padding-top: 24px; display: flex; justify-content: space-between; font: 400 13px/1.5 var(--brand-body); color: var(--pale-blue); flex-wrap: wrap; gap: 16px; }
  @media (max-width: 800px) { .uc-footer__cols { grid-template-columns: 1fr 1fr; } }
  /* ============ LEGACY SUPPORT — make old classes render Cattolica-style ============ */
  /* keyfacts — compact elegant info-strip */
  .uc-content .uc-keyfacts { display: grid; grid-template-columns: repeat(5,1fr); background: #F2F3F6; padding: 22px 0; margin: 28px 0; border: 0; max-width: 920px; gap: 0; }
  .uc-content .uc-keyfacts > div { text-align: center; padding: 4px 14px; border-right: 1px solid rgba(25,52,88,.15); border-left: 0; position: relative; display: flex; flex-direction: column; align-items: center; gap: 8px; }
  .uc-content .uc-keyfacts > div:last-child { border-right: 0; }
  .uc-content .uc-keyfacts .n { font: 400 16px/1.3 var(--brand-sans); color: var(--text); letter-spacing: 0; margin: 0; order: 2; font-feature-settings: "zero" 0; }
  .uc-content .uc-keyfacts .l { font: 700 11px/1 var(--brand-body); color: var(--text); text-transform: uppercase; letter-spacing: 1.6px; margin: 0; order: 1; }
  @media (max-width: 800px) { .uc-content .uc-keyfacts { grid-template-columns: 1fr; gap: 10px; padding: 18px 16px; } .uc-content .uc-keyfacts > div { border-right: 0; padding: 6px 0; } } }

  /* feat-grid (faculty/feature cards) */
  .uc-feat-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px; margin: 24px 0; max-width: 920px; }
  .uc-feat { background: var(--bg-soft); padding: 26px 28px; border-left: 3px solid var(--accent); }
  .uc-feat h3, .uc-feat h4 { font: 700 19px/1.3 var(--brand-sans); color: var(--navy); margin: 0 0 10px; text-transform: none; letter-spacing: 0; }
  .uc-feat p { font: 400 15px/1.55 var(--brand-body); color: var(--text-mid); margin: 0 0 8px; }
  .uc-feat .role, .uc-feat .level { font: 700 11px/1 var(--brand-body); color: var(--accent); text-transform: uppercase; letter-spacing: 1.4px; margin: 0 0 10px; display: inline-block; }
  .uc-feat ul { font-size: 15px; }
  @media (max-width: 800px) { .uc-feat-grid { grid-template-columns: 1fr; } }

  /* List (uc-list) */
  .uc-content .uc-list { font: 400 17px/1.7 var(--brand-body); color: var(--text); padding-left: 22px; max-width: 880px; }
  .uc-content .uc-list li { margin: 4px 0; }

  /* pull quote (uc-pullquote) */
  .uc-content .uc-pullquote { background: var(--pale-blue-soft, #E8EEF5); border-left: 4px solid var(--navy); padding: 22px 28px; margin: 28px 0; font: 400 22px/1.4 var(--brand-sans); color: var(--navy-soft); font-style: italic; max-width: 880px; }

  /* chip-row */
  .uc-chip-row { display: flex; flex-wrap: wrap; gap: 8px 10px; margin: 18px 0; max-width: 880px; }
  .uc-chip-row .chip, .uc-chip-row a.chip, .uc-chip-row span.chip { display: inline-flex; align-items: center; padding: 8px 16px; background: var(--bg-soft); border: 1px solid var(--line-blue); border-radius: 22px; font: 500 13px/1 var(--brand-body); color: var(--navy); text-decoration: none; }
  .uc-chip-row .chip:hover { background: var(--navy); color: #fff; border-color: var(--navy); }

  /* card */
  .uc-card { background: var(--bg-soft); padding: 28px 32px; margin: 22px 0; max-width: 920px; border-left: 4px solid var(--navy); }
  .uc-card h3 { font: 700 20px/1.3 var(--brand-sans); color: var(--navy); margin: 0 0 12px; text-transform: none; letter-spacing: 0; }
  .uc-card p { font: 400 15px/1.55 var(--brand-body); color: var(--text); margin: 0 0 12px; }
  .uc-card .role { font: 700 11px/1 var(--brand-body); color: var(--accent); text-transform: uppercase; letter-spacing: 1.4px; margin: 0 0 8px; display: inline-block; }

  /* callout / alert */
  .uc-callout, .uc-alert { background: var(--bg-tint); border-left: 4px solid var(--accent); padding: 22px 28px; margin: 24px 0; max-width: 920px; font: 400 15px/1.55 var(--brand-body); color: var(--text); }
  .uc-alert h4 { font: 700 16px/1.3 var(--brand-sans); color: var(--navy); margin: 0 0 10px; text-transform: none; letter-spacing: 0; }

  /* bigcard-grid */
  .uc-bigcard-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 24px; margin: 30px 0; max-width: 1100px; }
  .uc-bigcard { background: #fff; border: 1px solid var(--line-blue); padding: 30px 28px; }
  .uc-bigcard .tag, .uc-bigcard__tag { font: 700 11px/1 var(--brand-body); color: var(--accent); text-transform: uppercase; letter-spacing: 1.4px; margin: 0 0 12px; display: inline-block; }
  .uc-bigcard h3 { font: 400 24px/1.25 var(--brand-sans); color: var(--navy-soft); margin: 0 0 12px; text-transform: none; letter-spacing: 0; }
  .uc-bigcard p { font: 400 15px/1.55 var(--brand-body); color: var(--text); margin: 0 0 10px; }
  @media (max-width: 800px) { .uc-bigcard-grid { grid-template-columns: 1fr; } }

  /* prog grid */
  .uc-prog-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 20px; margin: 24px 0; max-width: 1100px; }
  .uc-prog { background: var(--bg-soft); padding: 24px 26px; text-decoration: none; color: inherit; display: block; border-left: 3px solid var(--accent); transition: transform .2s, box-shadow .2s; }
  .uc-prog:hover { transform: translateY(-2px); box-shadow: 0 8px 22px rgba(25,52,88,.10); text-decoration: none; }
  .uc-prog .level, .uc-prog .ribbon { font: 700 11px/1 var(--brand-body); color: var(--accent); text-transform: uppercase; letter-spacing: 1.4px; margin: 0 0 12px; display: inline-block; }
  .uc-prog h3 { font: 700 18px/1.25 var(--brand-sans); color: var(--navy); margin: 0 0 10px; text-transform: none; letter-spacing: 0; }
  .uc-prog p { font: 400 14px/1.55 var(--brand-body); color: var(--text-mid); margin: 0 0 10px; }
  .uc-prog .arrow { font: 700 13px/1 var(--brand-body); color: var(--link); }
  @media (max-width: 700px) { .uc-prog-grid { grid-template-columns: 1fr; } }

  /* services grid */
  .uc-svc-grid, .uc-dept-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px; margin: 22px 0; max-width: 1000px; }
  .uc-svc, .uc-dept { background: var(--bg-soft); padding: 24px 26px; border-left: 3px solid var(--accent); }
  .uc-svc h4, .uc-dept h4 { font: 700 17px/1.3 var(--brand-sans); color: var(--navy); margin: 0 0 10px; text-transform: none; letter-spacing: 0; }
  .uc-svc p, .uc-dept p { font: 400 14px/1.55 var(--brand-body); color: var(--text-mid); margin: 0; }
  @media (max-width: 800px) { .uc-svc-grid, .uc-dept-grid { grid-template-columns: 1fr; } }

  /* regions */
  .uc-regions { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px; margin: 22px 0; max-width: 1100px; }
  .uc-region { background: var(--bg-soft); padding: 24px 26px; position: relative; border-left: 3px solid var(--navy); }
  .uc-region .pct { position: absolute; top: 18px; right: 22px; font: 700 24px/1 var(--brand-sans); color: var(--accent); }
  .uc-region h4 { font: 700 18px/1.3 var(--brand-sans); color: var(--navy); margin: 0 0 8px; text-transform: none; letter-spacing: 0; }
  .uc-region p { font: 400 14px/1.55 var(--brand-body); color: var(--text-mid); margin: 0 0 12px; }
  .uc-region ul { font-size: 14px; padding-left: 18px; }

  /* types */
  .uc-types { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px; margin: 22px 0; max-width: 1000px; }
  .uc-type { background: var(--bg-soft); padding: 24px 26px; border-left: 3px solid var(--accent); }
  .uc-type h4 { font: 700 18px/1.3 var(--brand-sans); color: var(--navy); margin: 0 0 10px; text-transform: none; letter-spacing: 0; }
  .uc-type p { font: 400 14px/1.55 var(--brand-body); color: var(--text-mid); margin: 0; }

  /* 3as grid */
  .uc-3as-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; margin: 24px 0; }
  .uc-3as-card { background: var(--bg-soft); padding: 26px 28px; position: relative; }
  .uc-3as-card .pct { position: absolute; top: -14px; left: 24px; background: var(--accent); color: #fff; font: 700 12px/1 var(--brand-body); letter-spacing: 1.4px; padding: 7px 14px; }
  .uc-3as-card h4 { font: 700 18px/1.3 var(--brand-sans); color: var(--navy); margin: 14px 0 8px; text-transform: none; letter-spacing: 0; }
  .uc-3as-card p { font: 400 14px/1.55 var(--brand-body); color: var(--text-mid); margin: 0; }
  @media (max-width: 800px) { .uc-3as-grid { grid-template-columns: 1fr; } }

  /* alumni grid */
  .uc-alumni-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px; margin: 22px 0; }
  .uc-alumni { background: var(--bg-soft); padding: 26px 28px; border-left: 3px solid var(--accent); }
  .uc-alumni .role { font: 700 11px/1 var(--brand-body); color: var(--accent); text-transform: uppercase; letter-spacing: 1.4px; margin: 0 0 8px; display: inline-block; }
  .uc-alumni h4 { font: 700 18px/1.2 var(--brand-sans); color: var(--navy); margin: 0 0 6px; text-transform: none; letter-spacing: 0; }
  .uc-alumni .org { font: 500 13px/1.4 var(--brand-body); color: var(--text); margin: 0 0 10px; }
  .uc-alumni p { font: 400 14px/1.55 var(--brand-body); color: var(--text-mid); margin: 0; }

  /* campus grid */
  .uc-campus-grid, .uc-city-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px; margin: 22px 0; }
  .uc-campus, .uc-city { background: var(--bg-soft); padding: 24px 26px; text-decoration: none; color: inherit; display: block; }
  .uc-campus h3, .uc-campus h4, .uc-city h3 { font: 700 22px/1.2 var(--brand-sans); color: var(--navy); margin: 0 0 8px; text-transform: none; letter-spacing: 0; }
  .uc-campus .role, .uc-city .uc-city__tag { font: 700 11px/1 var(--brand-body); color: var(--accent); text-transform: uppercase; letter-spacing: 1.4px; margin: 0 0 8px; display: inline-block; }
  .uc-campus p, .uc-city p { font: 400 14px/1.55 var(--brand-body); color: var(--text-mid); margin: 0 0 6px; }
  .uc-city__special { font-style: italic; color: var(--navy) !important; }

  /* housing list */
  .uc-housing { font: 400 17px/1.7 var(--brand-body); color: var(--text); padding-left: 22px; max-width: 880px; }

  /* linkbox — Cattolica style: clean white cards, side-by-side grid */
  .uc-content section.uc-sec { padding: 0; background: transparent; }
  .uc-linkbox-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; margin: 40px 0 0; max-width: 1100px; }
  .uc-linkbox { background: #fff; padding: 0; margin: 0; max-width: none; border: 1px solid var(--line-blue); border-top: 0; position: relative; }
  .uc-linkbox::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--accent); }
  .uc-linkbox__title { font: 400 22px/1.2 var(--brand-sans); color: var(--navy-soft); margin: 0; padding: 26px 28px 18px; display: block; border-bottom: 1px solid var(--line-blue); }
  .uc-linkbox__menu { list-style: none; padding: 0; margin: 0; }
  .uc-linkbox__menu li { margin: 0; }
  .uc-linkbox__menu li + li { border-top: 1px solid var(--line-blue); }
  .uc-linkbox__menu a { display: flex; justify-content: space-between; align-items: center; gap: 14px; color: var(--navy); font: 500 15px/1.4 var(--brand-body); padding: 16px 28px; text-decoration: none; transition: background .15s, color .15s; }
  .uc-linkbox__menu a::after { content: "→"; font-weight: 700; color: var(--accent); transition: transform .2s; }
  .uc-linkbox__menu a:hover { background: var(--bg-soft); color: var(--accent); text-decoration: none; }
  .uc-linkbox__menu a:hover::after { transform: translateX(6px); }
  @media (max-width: 800px) { .uc-linkbox-grid { grid-template-columns: 1fr; } }

  /* table */
  .uc-table { width: 100%; border-collapse: collapse; margin: 22px 0; max-width: 1000px; font: 400 14px/1.5 var(--brand-body); }
  .uc-table th, .uc-table td { padding: 14px 16px; text-align: left; border-bottom: 1px solid var(--line-blue); }
  .uc-table thead th { background: var(--bg-soft); color: var(--navy); font-weight: 700; }
  .uc-table tbody th { font-weight: 700; color: var(--navy); }
  .uc-table a { color: var(--link); }

  /* approach (3As inline) */
  .uc-approach { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; margin: 22px 0; max-width: 1100px; }
  .uc-approach > div { background: var(--bg-soft); padding: 24px 26px; }
  .uc-approach h4 { font: 700 18px/1.3 var(--brand-sans); color: var(--navy); margin: 0 0 10px; text-transform: none; letter-spacing: 0; }
  .uc-approach p { font: 400 14px/1.55 var(--brand-body); color: var(--text-mid); margin: 0; }
  @media (max-width: 800px) { .uc-approach { grid-template-columns: 1fr; } }

  /* sec-title */
  .uc-sec-title h2 { font: 400 28px/1.2 var(--brand-sans); color: var(--navy-soft); margin: 24px 0 12px; padding-bottom: 8px; border-bottom: 2px solid var(--accent); display: inline-block; }
  .uc-sec-title p { font: 400 17px/1.55 var(--brand-body); color: var(--text-mid); margin: 0 0 18px; max-width: 820px; }

  /* inner intro */
  .uc-sec__intro h2 { font: 400 30px/1.2 var(--brand-sans); color: var(--navy-soft); margin: 32px 0 16px; padding-bottom: 8px; border-bottom: 2px solid var(--accent); display: inline-block; }

  /* normalize headings within content blocks */
  .uc-content h2 strong, .uc-content h3 strong, .uc-content h4 strong { font-weight: inherit; }
  .uc-content h2 .accent, .uc-content h3 .accent { color: var(--accent); font-weight: inherit; }

  /* highlight box */
  .uc-highlight { background: var(--pale-blue-soft, #E8EEF5); padding: 22px 26px; margin: 22px 0; max-width: 920px; border-left: 4px solid var(--accent); }


  /* ============ CURRICULUM 3-YEAR GRID ============ */
  .uc-content p.uc-eyebrow { font: 500 12px/1 var(--brand-body); color: var(--link); text-transform: uppercase; letter-spacing: 1.4px; margin: 24px 0 8px; }
  .uc-tabs { margin: 24px 0; }
  .uc-tabs > input[type="radio"] { display: none; }
  .uc-tabs__nav { display: none; }
  .uc-tabs__panels { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: start; }
  .uc-tabs__panel { display: block !important; background: var(--bg-soft); padding: 24px 22px; border-top: 3px solid var(--accent); }
  .uc-year-meta { display: flex; justify-content: space-between; align-items: baseline; padding-bottom: 12px; border-bottom: 1px solid var(--line-blue); margin-bottom: 16px; }
  .uc-year-meta h3 { font: 700 17px/1.25 var(--brand-sans); color: var(--navy-soft); margin: 0; text-transform: none; letter-spacing: 0; }
  .uc-year-meta .credits { font: 700 12px/1 var(--brand-body); color: var(--accent); letter-spacing: 1.2px; text-transform: uppercase; }
  .uc-course { margin: 0; border-bottom: 1px solid var(--line-blue); padding: 10px 0; }
  .uc-course:last-child { border-bottom: 0; }
  .uc-course > summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 4px 0; }
  .uc-course > summary::-webkit-details-marker { display: none; }
  .uc-course > summary::before { content: "+"; display: inline-block; width: 16px; flex-shrink: 0; font: 700 16px/1 var(--brand-body); color: var(--accent); transition: transform .2s; }
  .uc-course[open] > summary::before { content: "−"; }
  .uc-course .c-name { font: 500 14px/1.4 var(--brand-body); color: var(--navy); flex: 1; }
  .uc-course .c-cr { font: 500 12px/1 var(--brand-body); color: var(--text-mid); white-space: nowrap; }
  .uc-course__body { font: 400 13px/1.55 var(--brand-body); color: var(--text-mid); padding: 8px 0 6px 24px; }
  @media (max-width: 1100px) { .uc-tabs__panels { grid-template-columns: 1fr; } }


  /* ============ NUMBER ZERO FIX — global ============ */
  body, h1, h2, h3, h4, h5, p, span, div, li, td, th, summary { font-feature-settings: "zero" 0; font-variant-numeric: lining-nums; }
  /* For headings with numbers, force Roboto for numbers display */
  .uc-content h2, .uc-content h3, .uc-page-hero h1 { font-feature-settings: "zero" 0; }

  /* ============ CAREERS — Cattolica grid cards ============ */
  /* Careers — Cattolica minimal list */
  .uc-careers-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 40px; margin: 22px 0; max-width: 880px; list-style: none; padding: 0; column-gap: 40px; }
  .uc-careers-grid li { padding: 14px 0 14px 22px; font: 400 16px/1.45 var(--brand-body); color: var(--text); margin: 0; list-style: none; position: relative; border-bottom: 1px solid var(--line-blue); }
  .uc-careers-grid li::before { content: ""; position: absolute; left: 0; top: 22px; width: 10px; height: 1px; background: var(--accent); }
  @media (max-width: 700px) { .uc-careers-grid { grid-template-columns: 1fr; } }

  /* ============ APPLY STEPS — Cattolica process ============ */
  .uc-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; margin: 32px 0; counter-reset: step; position: relative; }
  .uc-steps::before { content: ""; position: absolute; top: 26px; left: 4%; right: 4%; height: 2px; background: var(--accent); opacity: .25; z-index: 0; }
  .uc-step { background: #fff; padding: 0; position: relative; z-index: 1; }
  .uc-step__n { width: 52px; height: 52px; border-radius: 50%; background: var(--navy); color: #fff; display: flex; align-items: center; justify-content: center; font: 500 22px/1 var(--brand-body); margin-bottom: 18px; font-feature-settings: "zero" 0; }
  .uc-step h3, .uc-step__title { font: 700 18px/1.25 var(--brand-sans); color: var(--navy); margin: 0 0 8px; text-transform: none; letter-spacing: 0; }
  .uc-step p, .uc-step__desc { font: 400 14px/1.55 var(--brand-body); color: var(--text-mid); margin: 0; }
  @media (max-width: 900px) { .uc-steps { grid-template-columns: repeat(2, 1fr); } .uc-steps::before { display: none; } }
  @media (max-width: 500px) { .uc-steps { grid-template-columns: 1fr; } }

  /* ============ FAQ — Cattolica accordion ============ */
  .uc-content details { background: #fff; border: 1px solid var(--line-blue); margin: 0 0 8px; padding: 0; max-width: 920px; }
  .uc-content details > summary { cursor: pointer; list-style: none; padding: 16px 22px; font: 500 16px/1.4 var(--brand-body); color: var(--navy); display: flex; justify-content: space-between; align-items: center; gap: 12px; }
  .uc-content details > summary::-webkit-details-marker { display: none; }
  .uc-content details > summary::after { content: "+"; font: 700 20px/1 var(--brand-body); color: var(--accent); transition: transform .2s; flex-shrink: 0; }
  .uc-content details[open] > summary::after { content: "−"; }
  .uc-content details > p, .uc-content details > div { padding: 0 22px 18px; font: 400 15px/1.6 var(--brand-body); color: var(--text-mid); margin: 0; }
  /* Override uc-course summary marker (curriculum) which has different style */
  .uc-content .uc-course > summary { padding: 4px 0; }
  .uc-content .uc-course > summary::after { display: none; }

  /* hero band lead for course pages with apply CTA */
  .uc-content .uc-sec--navy { background: var(--navy); color: #fff; padding: 56px 32px; margin: 40px 0; max-width: 1100px; }
  .uc-content .uc-sec--navy h2 { color: #fff; }
  .uc-content .uc-sec--navy p { color: var(--pale-blue); }
  .uc-content .uc-sec--navy a.uc-cta-pill, .uc-content .uc-sec--navy .uc-cta { background: var(--accent); color: #fff !important; padding: 13px 28px; border-radius: 28px; font: 700 13px/1 var(--brand-body); text-transform: uppercase; letter-spacing: 1.5px; text-decoration: none; display: inline-block; }



  /* ============ APPLY STEPS — Cattolica editorial (no circles) ============ */
  .uc-content .uc-timeline { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; margin: 36px 0; max-width: 1100px; }
  .uc-content .uc-timeline .uc-step { background: transparent; padding: 28px 0 0; border-top: 2px solid var(--accent); position: relative; }
  .uc-content .uc-timeline .uc-step__num { font: 700 11px/1 var(--brand-body); color: var(--accent); text-transform: uppercase; letter-spacing: 1.5px; margin: 0 0 14px; padding: 0; background: transparent; width: auto; height: auto; border-radius: 0; display: block; }
  .uc-content .uc-timeline .uc-step__num::before { content: "Step "; }
  .uc-content .uc-timeline .uc-step h3 { font: 400 22px/1.2 var(--brand-sans); color: var(--navy-soft); margin: 0 0 12px; text-transform: none; letter-spacing: 0; }
  .uc-content .uc-timeline .uc-step p { font: 400 15px/1.6 var(--brand-body); color: var(--text-mid); margin: 0; max-width: none; }
  @media (max-width: 900px) { .uc-content .uc-timeline { grid-template-columns: repeat(2, 1fr); gap: 28px; } }
  @media (max-width: 500px) { .uc-content .uc-timeline { grid-template-columns: 1fr; } }

  /* CTA block (navy band with white text) */
  .uc-content .uc-cta-block { background: var(--navy); color: #fff; padding: 40px 44px; margin: 40px 0; max-width: 1100px; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
  .uc-content .uc-cta-block__title { font: 400 26px/1.2 var(--brand-sans); color: #fff; margin: 0; flex: 1; min-width: 280px; }
  .uc-content .uc-cta-block__sub { font: 400 15px/1.5 var(--brand-body); color: var(--pale-blue); margin: 0; flex-basis: 100%; }
  .uc-content .uc-btn.uc-btn--white { background: #fff; color: var(--navy) !important; padding: 13px 28px; font: 700 13px/1 var(--brand-body); text-transform: uppercase; letter-spacing: 1.5px; border-radius: 28px; text-decoration: none; transition: background .2s, color .2s; }
  .uc-content .uc-btn.uc-btn--white:hover { background: var(--accent); color: #fff !important; }

  /* FAQ wrap */
  .uc-content .uc-faq { margin: 22px 0; max-width: 920px; }
  .uc-content .uc-faq details { margin-bottom: 8px; }
  .uc-content .uc-faq__body { padding: 0 22px 18px; font: 400 15px/1.6 var(--brand-body); color: var(--text-mid); }



  /* ============ SIDEBAR — Cattolica minimal (no borders) ============ */
  .uc-sidebar__list li { border-bottom: 0 !important; border-top: 0 !important; }
  .uc-sidebar__list a { color: var(--text-mid); font: 400 16px/1.45 var(--brand-body); padding: 10px 0; }
  .uc-sidebar__list a:hover { color: var(--navy); padding-left: 0; text-decoration: underline; }
  .uc-sidebar__list a.is-active { color: var(--navy-soft); font-weight: 700; text-decoration: underline; }

  /* ============ INFO STRIP — compact elegant ============ */
  .uc-info-strip { display: grid; background: #F2F3F6; padding: 22px 0; margin: 28px 0; max-width: 920px; }
  .uc-info-strip--3 { grid-template-columns: repeat(3, 1fr); }
  .uc-info-strip--4 { grid-template-columns: repeat(4, 1fr); }
  .uc-info-strip--5 { grid-template-columns: repeat(5, 1fr); }
  .uc-info-strip__item { text-align: center; padding: 4px 18px; border-right: 1px solid rgba(25,52,88,.15); display: flex; flex-direction: column; align-items: center; gap: 8px; }
  .uc-info-strip__item:last-child { border-right: 0; }
  .uc-info-strip__label { font: 700 11px/1 var(--brand-body); color: var(--text); text-transform: uppercase; letter-spacing: 1.6px; margin: 0; font-feature-settings: "zero" 0; }
  .uc-info-strip__value { font: 400 16px/1.3 var(--brand-sans); color: var(--text); margin: 0; font-feature-settings: "zero" 0; }
  @media (max-width: 800px) { .uc-info-strip { grid-template-columns: 1fr !important; gap: 10px; padding: 18px 16px; } .uc-info-strip__item { border-right: 0; padding: 6px 0; } }



  /* ============ SIDEBAR WIDGETS — enrich + compact main ============ */
  .uc-sidebar__widget { margin-top: 24px; padding: 18px 20px; background: var(--bg-soft); border-top: 2px solid var(--accent); }
  .uc-sidebar__widget-title { font: 700 11px/1 var(--brand-body); color: var(--accent); text-transform: uppercase; letter-spacing: 1.5px; margin: 0 0 12px; }
  .uc-sidebar__widget ul { list-style: none; padding: 0; margin: 0; }
  .uc-sidebar__widget li { padding: 6px 0; border-bottom: 1px solid var(--line-blue); font: 400 13px/1.4 var(--brand-body); color: var(--text); }
  .uc-sidebar__widget li:last-child { border-bottom: 0; }
  .uc-sidebar__widget li b { color: var(--navy-soft); display: block; font-weight: 700; font-size: 10px; text-transform: uppercase; letter-spacing: 1.2px; margin-bottom: 2px; }
  .uc-sidebar__widget a { color: var(--link); font: 500 13px/1.4 var(--brand-body); padding: 4px 0; display: inline-block; }
  .uc-sidebar__widget a:hover { color: var(--accent); }
  .uc-sidebar__cta { display: block; background: var(--navy); color: #fff !important; padding: 13px 18px; font: 700 12px/1 var(--brand-body); text-transform: uppercase; letter-spacing: 1.5px; text-align: center; border-radius: 24px; margin-top: 20px; text-decoration: none; transition: background .2s; }
  .uc-sidebar__cta:hover { background: var(--accent); text-decoration: none; }

  /* COMPACT MAIN CONTENT — reduce vertical spacing */
  .uc-main { padding: 48px 32px 60px; }
  .uc-content h2 { margin: 36px 0 14px !important; font-size: 30px !important; }
  .uc-content h2:first-child { margin-top: 0 !important; }
  .uc-content h3 { margin: 24px 0 10px !important; }
  .uc-content p { font-size: 17px; line-height: 1.6; margin: 0 0 16px; }
  .uc-content p.lead { font-size: 20px; margin: 0 0 22px; }
  .uc-content hr { margin: 28px 0; }
  /* Tighter sec gaps */
  .uc-content .uc-feat-grid, .uc-content .uc-svc-grid, .uc-content .uc-dept-grid, .uc-content .uc-3as-grid, .uc-content .uc-bigcard-grid, .uc-content .uc-prog-grid, .uc-content .uc-careers-grid { margin: 18px 0; gap: 16px; }
  .uc-content .uc-feat, .uc-content .uc-svc, .uc-content .uc-dept, .uc-content .uc-3as-card { padding: 20px 22px; }


  /* ============ SIDEBAR DETACHMENT + EXTRA WIDGETS ============ */
  .uc-main { grid-template-columns: 300px 1fr; gap: 110px; }
  .uc-sidebar { padding-right: 22px; border-right: 1px solid var(--line-blue); }
  .uc-sidebar__widget--docs li { padding: 8px 0; border-bottom: 1px solid var(--line-blue); }
  .uc-sidebar__widget--docs li:last-child { border-bottom: 0; }
  .uc-sidebar__widget--docs a { color: var(--navy); text-decoration: none; font: 500 13px/1.35 var(--brand-body); display: flex; justify-content: space-between; align-items: center; gap: 8px; }
  .uc-sidebar__widget--docs a::after { content: "↓"; color: var(--accent); font-weight: 700; }
  .uc-sidebar__widget--docs a:hover { color: var(--accent); }
  .uc-sidebar__widget--related li { padding: 8px 0; border-bottom: 1px solid var(--line-blue); }
  .uc-sidebar__widget--related li:last-child { border-bottom: 0; }
  .uc-sidebar__widget--related a { color: var(--navy); text-decoration: none; font: 500 13px/1.4 var(--brand-body); display: flex; justify-content: space-between; align-items: center; gap: 8px; }
  .uc-sidebar__widget--related a::after { content: "→"; color: var(--accent); font-weight: 700; }
  .uc-sidebar__widget--related a:hover { color: var(--accent); }
  @media (max-width: 1000px) {
    .uc-main { grid-template-columns: 1fr; gap: 40px; }
    .uc-sidebar { padding-right: 0; border-right: 0; border-top: 1px solid var(--line-blue); padding-top: 28px; }
  }


  /* ============ CATEGORY HEADER in main content ============ */
  .uc-content__category { margin: 0 0 24px; padding-bottom: 18px; border-bottom: 2px solid var(--accent); max-width: 820px; }
  .uc-content__category-title { font: 700 22px/1.2 var(--brand-sans); color: var(--navy-soft); margin: 0 0 6px; text-decoration: underline; }
  .uc-content__category-sub { font: 400 15px/1.4 var(--brand-body); color: var(--text-mid); margin: 0; }


  /* ============ SIDEBAR HELP WIDGET — single consolidated card ============ */
  .uc-sidebar__help { margin-top: 28px; padding: 22px 22px; background: var(--bg-tint); border-radius: 0; }
  .uc-sidebar__help-title { font: 400 18px/1.25 var(--brand-sans); color: var(--navy-soft); margin: 0 0 14px; }
  .uc-sidebar__help-row { font: 400 13px/1.5 var(--brand-body); color: var(--text); padding: 8px 0; border-bottom: 1px solid rgba(25,52,88,.15); display: flex; flex-direction: column; gap: 2px; }
  .uc-sidebar__help-row:last-of-type { border-bottom: 0; }
  .uc-sidebar__help-row b { font: 700 10px/1 var(--brand-body); color: var(--text-mid); text-transform: uppercase; letter-spacing: 1.4px; margin-bottom: 4px; }
  .uc-sidebar__help-row a { color: var(--navy-soft); font-weight: 500; }
  .uc-sidebar__help-row a:hover { color: var(--accent); }


  /* ============ FACULTY card with photo ============ */
  .uc-content .uc-faculty { display: grid; grid-template-columns: 200px 1fr; gap: 32px; align-items: start; margin: 24px 0; max-width: 920px; }
  .uc-content .uc-faculty__photo { width: 200px; aspect-ratio: 1; background: var(--bg-tint); background-size: cover; background-position: center; border-radius: 50%; display: flex; align-items: center; justify-content: center; overflow: hidden; }
  .uc-content .uc-faculty__photo span { font: 700 11px/1 var(--brand-body); color: var(--text-mid); text-transform: uppercase; letter-spacing: 1.4px; }
  .uc-content .uc-faculty__photo img { width: 100%; height: 100%; object-fit: cover; }
  .uc-content .uc-faculty__quote { font: 400 19px/1.45 var(--brand-sans); color: var(--navy-soft); margin: 0 0 14px; padding: 0; border: 0; font-style: italic; }
  .uc-content .uc-faculty__name { font: 700 17px/1.3 var(--brand-sans); color: var(--navy); margin: 0 0 4px; }
  .uc-content .uc-faculty__title { font: 400 13px/1.4 var(--brand-body); color: var(--text-mid); margin: 0; }
  @media (max-width: 700px) { .uc-content .uc-faculty { grid-template-columns: 1fr; } .uc-content .uc-faculty__photo { width: 160px; margin: 0 auto; } }


  /* ============ FACULTY ROW (master/doctorate placeholder) ============ */
  .uc-content .uc-faculty-row { display: grid; grid-template-columns: 160px 1fr; gap: 28px; align-items: center; margin: 24px 0; max-width: 920px; }
  .uc-content .uc-faculty-row .uc-faculty-photo { width: 160px; height: 160px; object-fit: contain; background: var(--bg-tint); border-radius: 50%; padding: 26px; }
  .uc-content .uc-faculty-row .uc-pullquote { margin: 0; }
  @media (max-width: 700px) { .uc-content .uc-faculty-row { grid-template-columns: 1fr; } .uc-content .uc-faculty-row .uc-faculty-photo { margin: 0 auto; } }


  /* ============ DEGREE TABS + INFO GRID (clearer hierarchy) ============ */
  .uc-degree-tabs { background: var(--navy); margin: 0 0 0; max-width: none; padding: 0; }
  .uc-degree-tabs__inner { max-width: 920px; margin: 0 auto; padding: 16px 0 0; }
  .uc-degree-tabs__nav { display: flex; gap: 0; }
  .uc-degree-tab { background: transparent; color: rgba(255,255,255,.78); padding: 18px 28px; font: 500 16px/1 var(--brand-body); border: 0; cursor: pointer; border-top-left-radius: 10px; border-top-right-radius: 10px; transition: background .2s, color .2s; position: relative; letter-spacing: .2px; outline: none; }
  .uc-degree-tab:focus, .uc-degree-tab:focus-visible, .uc-degree-tab:active, .uc-degree-tab:-webkit-any(:focus, :focus-visible, :active) { outline: none !important; box-shadow: none !important; border: 0 !important; -webkit-tap-highlight-color: transparent; }
  .uc-degree-tabs button:focus, .uc-degree-tabs button:focus-visible { outline: 0 !important; box-shadow: none !important; }
  .uc-degree-tab:hover { color: #fff; background: rgba(255,255,255,.06); }
  .uc-degree-tab--active, .uc-degree-tab--active:hover { background: #fff; color: var(--navy); font-weight: 700; }
  .uc-degree-tab:not(.uc-degree-tab--active):not(:last-child)::after { content: ""; position: absolute; right: 0; top: 28%; bottom: 28%; width: 1px; background: rgba(255,255,255,.18); }
  /* Info grid — Cattolica thin strip, no boxes, ultra-readable */
  .uc-degree-info { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0 0 28px; max-width: 920px; background: transparent; border-top: 2px solid var(--navy); border-bottom: 1px solid var(--line-blue); padding: 0; }
  .uc-degree-info__item { padding: 16px 18px 14px; border-right: 1px solid var(--line-blue); position: relative; display: flex; flex-direction: column; gap: 4px; }
  .uc-degree-info__item:nth-child(3n) { border-right: 0; }
  .uc-degree-info__item:nth-last-child(-n+3) { border-top: 1px solid var(--line-blue); }
  .uc-degree-info__item:nth-child(-n+3) { border-bottom: 1px solid var(--line-blue); }
  .uc-degree-info__item::before { display: none; }
  .uc-degree-info__label { font: 700 11px/1.1 var(--brand-body); color: var(--accent); margin: 0; text-transform: uppercase; letter-spacing: 1.3px; }
  .uc-degree-info__value { font: 700 16px/1.3 var(--brand-sans); color: var(--navy); margin: 0; text-transform: none; letter-spacing: -.005em; }
  @media (max-width: 800px) { .uc-degree-info { grid-template-columns: 1fr; } .uc-degree-info__item { border-right: 0 !important; border-bottom: 1px solid var(--line-blue) !important; padding: 10px 0; } .uc-degree-info__item:last-child { border-bottom: 0 !important; } }
  @media (max-width: 800px) {
    .uc-degree-info { grid-template-columns: 1fr; }
    .uc-degree-info__item { border-right: 0; }
    .uc-degree-info__item:last-child { border-bottom: 0; }
    .uc-degree-tabs__nav { flex-wrap: wrap; }
  } .uc-degree-tabs__nav { flex-wrap: wrap; } }


  /* ============ PAGE REBALANCE — consistent rhythm ============ */
  /* Reset content widths + spacing */
  .uc-content { max-width: 920px; }
  .uc-content > p, .uc-content > ul, .uc-content > ol { max-width: 880px; }
  .uc-content > h2 { margin: 56px 0 12px !important; font-size: 30px !important; font-weight: 400 !important; padding-bottom: 0 !important; border-bottom: 0 !important; display: block !important; }
  .uc-content > h2:first-of-type, .uc-content > h2:first-child { margin-top: 0 !important; }
  .uc-content > h3 { margin: 32px 0 10px !important; font: 400 22px/1.3 var(--brand-sans) !important; color: var(--navy) !important; text-transform: none !important; letter-spacing: 0 !important; }
  .uc-content > p.lead { font: 400 19px/1.55 var(--brand-sans) !important; color: var(--navy-soft) !important; margin: 0 0 22px !important; }
  .uc-content > p { font-size: 16px !important; line-height: 1.65 !important; }
  /* Eyebrows always close to H2 */
  .uc-content > p.uc-eyebrow { margin: 48px 0 8px !important; font: 700 12px/1 var(--brand-body) !important; color: var(--accent) !important; text-transform: uppercase !important; letter-spacing: 1.5px !important; }
  .uc-content > p.uc-eyebrow + h2 { margin-top: 0 !important; }
  /* Component sections — consistent breathing */
  .uc-content .uc-tabs { margin: 22px 0 32px !important; }
  .uc-content .uc-faculty { margin: 20px 0 16px !important; max-width: 880px; }
  .uc-content .uc-careers-grid { margin: 16px 0 24px !important; max-width: 880px; }
  .uc-content .uc-timeline { margin: 24px 0 28px !important; max-width: 920px; }
  .uc-content .uc-cta-block { margin: 28px 0 32px !important; max-width: 920px; }
  .uc-content .uc-faq { margin: 16px 0 8px !important; max-width: 880px; }
  .uc-content .uc-degree-info { margin: 4px 0 36px !important; }
  /* Last child no margin-bottom */
  .uc-content > *:last-child { margin-bottom: 0 !important; }
  /* HR consistent */
  .uc-content > hr { border: 0; border-top: 1px solid var(--line-blue); margin: 32px 0 !important; }


  /* ============ TOP BREATHING — more space top of content ============ */
  .uc-main { padding-top: 56px !important; }
  .uc-content .uc-degree-info { margin: 8px 0 56px !important; }
  .uc-content > h2:first-of-type, .uc-content > h2:first-child { margin-top: 8px !important; }
  .uc-content > .uc-degree-tabs + * { margin-top: 0; }
  /* gap after info grid before first heading/lead */
  .uc-content .uc-degree-info + p, .uc-content .uc-degree-info + h2 { margin-top: 0 !important; }
  /* Increase first lead margin */
  .uc-content > p.lead { margin-bottom: 28px !important; }


  /* Hero image — clearer (less blue overlay) */
  .uc-page-hero { background: #19243d; }
  .uc-page-hero__img { opacity: 1 !important; }
  .uc-page-hero__img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 0%, transparent 45%, rgba(25,36,61,.35) 72%, rgba(25,36,61,.72) 100%); }
  .uc-page-hero__inner { z-index: 2 !important; }


  /* SSML media — figures + video iframes (proportionate, balanced) */
  .uc-content figure.uc-figure { margin: 44px 0; max-width: 100%; }
  .uc-content figure.uc-figure img { width: 100%; height: auto; max-height: 540px; object-fit: cover; display: block; border-radius: 6px; box-shadow: 0 4px 16px rgba(25,36,61,.10); }
  .uc-content figure.uc-figure figcaption { font: 400 14px/1.5 var(--brand-body); color: var(--navy-soft); margin-top: 10px; font-style: italic; }
  .uc-content .uc-video { position: relative; width: 100%; aspect-ratio: 16/9; margin: 44px 0; border-radius: 6px; overflow: hidden; box-shadow: 0 4px 16px rgba(25,36,61,.10); }
  .uc-content .uc-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }


  /* MEGA-MENU — Bocconi/Harvard fullscreen overlay */
  .uc-megamenu { position: fixed; inset: 0; background: var(--navy-deep); color: #fff; z-index: 200; opacity: 0; pointer-events: none; transition: opacity .3s ease; overflow-y: auto; }
  .uc-megamenu.is-open { opacity: 1; pointer-events: auto; }
  .uc-megamenu__inner { max-width: 1440px; margin: 0 auto; padding: 56px 32px 80px; }
  .uc-megamenu__top { display: flex; justify-content: space-between; align-items: center; margin: 0 0 56px; }
  .uc-megamenu__brand { font: 400 32px/1 var(--brand-sans); color: #fff; letter-spacing: -.01em; }
  .uc-megamenu__close { background: transparent; border: 0; color: #fff; font: 500 15px/1 var(--brand-body); cursor: pointer; display: inline-flex; align-items: center; gap: 12px; padding: 8px; }
  .uc-megamenu__close:hover { color: var(--accent); }
  .uc-megamenu__close svg { width: 24px; height: 24px; stroke: currentColor; fill: none; stroke-width: 1.8; }
  .uc-megamenu__title { font: 400 64px/1.05 var(--brand-sans); color: #fff; margin: 0 0 40px; letter-spacing: -.02em; padding-bottom: 18px; border-bottom: 2px solid var(--accent); display: inline-block; }
  .uc-megamenu__list { list-style: none; padding: 0; margin: 0; }
  .uc-megamenu__list li { border-bottom: 1px solid rgba(255,255,255,.15); }
  .uc-megamenu__list a { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 24px; padding: 26px 8px 26px 0; color: #fff; font: 400 32px/1.15 var(--brand-sans); text-decoration: none; letter-spacing: -.005em; transition: padding .2s, color .2s, background .2s; }
  .uc-megamenu__list a:hover { background: rgba(255,255,255,.06); padding-left: 16px; color: #fff; text-decoration: none; }
  .uc-megamenu__list a .arrow { font: 400 28px/1 var(--brand-sans); color: rgba(255,255,255,.6); transition: transform .2s, color .2s; }
  .uc-megamenu__list a:hover .arrow { color: var(--accent); transform: translateX(8px); }
  .uc-megamenu__list a .eyebrow { font: 700 11px/1 var(--brand-body); color: var(--accent); text-transform: uppercase; letter-spacing: 1.8px; display: block; margin: 0 0 8px; }
  body.megamenu-open { overflow: hidden; }
  @media (max-width: 800px) { .uc-megamenu__title { font-size: 40px; } .uc-megamenu__list a { font-size: 22px; padding: 20px 0; } }

