/*
 * BME ITERA — Local Tailwind-compatible utility output.
 * Generated for the utility classes used by the PHP templates.
 * Rebuild with the Tailwind CLI using assets/css/tailwind.input.css.
 * The compact compatibility rules below are kept unlayered so they can
 * override the legacy semantic BME component CSS where explicitly applied.
 */
.mx-auto{margin-inline:auto}
.mb-0{margin-bottom:0}
.mt-6{margin-top:1.5rem}
.mt-8{margin-top:2rem}
.relative{position:relative}
.absolute{position:absolute}
.sticky{position:sticky}
.isolate{isolation:isolate}
.pointer-events-none{pointer-events:none}
.z-10{z-index:10}
.z-20{z-index:20}
.z-50{z-index:50}
.inset-0{inset:0}
.top-0{top:0}
.bottom-6{bottom:1.5rem}
.right-6{right:1.5rem}
.flex{display:flex}
.grid{display:grid}
.inline-flex{display:inline-flex}
.w-full{width:100%}
.w-3\/4{width:75%}
.max-w-7xl{max-width:80rem}
.max-w-3xl{max-width:48rem}
.max-w-2xl{max-width:42rem}
.max-w-xl{max-width:36rem}
.max-w-\[33rem\]{max-width:33rem}
.min-h-\[26rem\]{min-height:26rem}
.aspect-square{aspect-ratio:1/1}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.place-items-center{place-items:center}
.flex-wrap{flex-wrap:wrap}
.gap-2{gap:.5rem}
.gap-3{gap:.75rem}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.gap-12{gap:3rem}
.overflow-hidden{overflow:hidden}
.rounded-md{border-radius:.375rem}
.rounded-xl{border-radius:.75rem}
.rounded-2xl{border-radius:1rem}
.rounded-3xl{border-radius:1.5rem}
.rounded-full{border-radius:9999px}
.border{border-width:1px;border-style:solid}
.border-b{border-bottom:1px solid}
.border-dashed{border-style:dashed}
.border-slate-200{border-color:#e2e8f0}
.border-white\/20{border-color:rgba(255,255,255,.2)}
.border-teal-300\/20{border-color:rgba(94,234,212,.2)}
.border-teal-100\/20{border-color:rgba(204,251,241,.2)}
.bg-white{background-color:#fff}
.bg-white\/5{background-color:rgba(255,255,255,.05)}
.bg-white\/95{background-color:rgba(255,255,255,.95)}
.bg-slate-950{background-color:#020617}
.bg-slate-900\/80{background-color:rgba(15,23,42,.8)}
.bg-teal-300{background-color:#5eead4}
.bg-teal-300\/10{background-color:rgba(94,234,212,.1)}
.p-2{padding:.5rem}
.p-5{padding:1.25rem}
.p-6{padding:1.5rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-5{padding-left:1.25rem;padding-right:1.25rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
.text-xs{font-size:.75rem;line-height:1rem}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-base{font-size:1rem;line-height:1.5rem}
.text-5xl{font-size:3rem;line-height:1}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.font-extrabold{font-weight:800}
.uppercase{text-transform:uppercase}
.leading-tight{line-height:1.15}
.leading-8{line-height:2rem}
.tracking-tight{letter-spacing:-.04em}
.tracking-widest{letter-spacing:.12em}
.text-white{color:#fff}
.text-slate-950{color:#020617}
.text-slate-300{color:#cbd5e1}
.text-slate-800{color:#1e293b}
.text-slate-100{color:#f1f5f9}
.text-teal-200{color:#99f6e4}
.shadow-sm{box-shadow:0 1px 2px rgba(15,23,42,.06)}
.shadow-lg{box-shadow:0 10px 15px -3px rgba(15,23,42,.12),0 4px 6px -4px rgba(15,23,42,.12)}
.shadow-xl{box-shadow:0 20px 25px -5px rgba(15,23,42,.16),0 8px 10px -6px rgba(15,23,42,.12)}
.shadow-2xl{box-shadow:0 25px 50px -12px rgba(15,23,42,.28)}
.shadow-slate-950\/20{--tw-shadow-color:rgba(2,6,23,.2)}
.shadow-slate-950\/30{--tw-shadow-color:rgba(2,6,23,.3)}
.backdrop-blur{backdrop-filter:blur(8px)}
.backdrop-blur-md{backdrop-filter:blur(12px)}
.transition{transition-property:color,background-color,border-color,box-shadow,transform;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.duration-200{transition-duration:200ms}
.hover\:bg-teal-200:hover{background-color:#99f6e4}
.hover\:bg-white\/10:hover{background-color:rgba(255,255,255,.1)}
.hover\:-translate-y-0\.5:hover{transform:translateY(-2px)}
.hover\:-translate-y-1:hover{transform:translateY(-.25rem)}
.hover\:shadow-lg:hover{box-shadow:0 10px 25px rgba(15,23,42,.12)}
@media(min-width:768px){
  .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .md\:text-6xl{font-size:3.75rem;line-height:1}
  .md\:p-6{padding:1.5rem}
}
@media(min-width:1024px){
  .lg\:grid-cols-2{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
  .lg\:gap-16{gap:4rem}
}
@media(max-width:767px){
  .md\:text-6xl{font-size:3rem;line-height:1.05}
  .py-20{padding-top:3.5rem;padding-bottom:3.5rem}
}


.text-lg{font-size:1.125rem;line-height:1.75rem}
@media(min-width:768px){
  .md\:text-lg{font-size:1.125rem;line-height:1.75rem}
}

/* Tailwind-style component finishing for the BME hero primitives. */
.bme-hero{color:#f8fafc}
.bme-hero:before{
  content:"";position:absolute;inset:0;width:auto;height:auto;top:0;right:0;
  border:0;border-radius:0;box-shadow:none;opacity:.38;
  background-image:linear-gradient(rgba(226,232,240,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(226,232,240,.075) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(90deg,transparent 3%,#000 30%,#000 92%,transparent);
  pointer-events:none;
}
.bme-hero:after{
  content:"";position:absolute;right:-9rem;top:-14rem;width:38rem;height:38rem;
  border-radius:9999px;background:radial-gradient(circle,rgba(45,212,191,.20),transparent 68%);
  pointer-events:none;
}
.bme-hero-grid{grid-template-columns:minmax(0,1fr);min-height:0;gap:2.5rem;padding-block:4.25rem}
.bme-hero-copy-wrap{max-width:42rem}
.bme-eyebrow{border:1px solid rgba(94,234,212,.22);background:rgba(94,234,212,.08);padding:7px 12px;color:#99f6e4;letter-spacing:.13em}
.bme-eyebrow:before{width:0;height:0;display:none}
.bme-hero h1{max-width:14ch;font-size:clamp(2.55rem,4.35vw,3.8rem);line-height:1.06;letter-spacing:-.05em;font-weight:800}
.bme-hero-copy{max-width:35rem;margin:1.5rem 0 0;color:#cbd5e1;font-size:1.05rem;line-height:1.8}
.bme-hero-actions{margin-top:2rem;gap:.75rem}
.bme-hero .bme-button{min-height:48px;padding:0 1.25rem;border-radius:.75rem;font-size:.875rem;font-weight:700}
.bme-hero .bme-button-primary{border:1px solid #5eead4;background:#5eead4;color:#042f2e;box-shadow:0 8px 20px rgba(20,184,166,.18)}
.bme-hero .bme-button-primary:hover{background:#99f6e4;color:#042f2e;transform:translateY(-2px)}
.bme-hero .bme-button-ghost{border:1px solid rgba(226,232,240,.25);background:rgba(255,255,255,.06);color:#f8fafc}
.bme-hero .bme-button-ghost:hover{border-color:rgba(153,246,228,.5);background:rgba(255,255,255,.12);color:#fff}
.bme-hero-art{min-height:23rem}
.bme-hero-visual{width:min(100%,29rem);aspect-ratio:1.1}
.bme-hero-visual:before{width:84%;height:84%;border-color:rgba(153,246,228,.16);box-shadow:0 0 0 25px rgba(255,255,255,.025),0 0 0 55px rgba(255,255,255,.02)}
.bme-orbit{border-color:rgba(153,246,228,.18);border-style:dashed}
.bme-medical-card{width:76%;padding:1.5rem;border:1px solid #e2e8f0;border-radius:1.5rem;background:#fff;color:#0f2942;box-shadow:0 25px 55px rgba(2,6,23,.28);transform:rotate(2deg)}
.bme-medical-card-head{padding-bottom:1rem;border-bottom:1px solid #e2e8f0}
.bme-medical-card-label{font-size:.75rem;font-weight:800;letter-spacing:.04em;color:#0f2942}
.bme-medical-card-small{margin-top:3px;font-size:.625rem;letter-spacing:.09em;color:#64748b}
.bme-pulse{margin-block:1.25rem}
.bme-medical-card-foot{font-size:.65rem;color:#64748b}
.bme-float-chip{padding:.75rem 1rem;border:1px solid rgba(226,232,240,.22);border-radius:.875rem;background:rgba(15,23,42,.82);box-shadow:0 14px 35px rgba(2,6,23,.22);font-size:.7rem;backdrop-filter:blur(12px)}
.bme-float-chip span{margin-top:2px;font-size:.625rem;color:#94a3b8}
.bme-stat-strip{margin-top:-2rem}
.bme-stats{gap:.5rem;padding:.5rem;border:1px solid #e2e8f0;border-radius:1.25rem;background:#fff;box-shadow:0 18px 40px rgba(15,23,42,.09)}
.bme-stat{min-width:0;gap:.875rem;padding:1.1rem 1.25rem;border:0;border-radius:.875rem;background:#f8fafc}
.bme-stat-icon{width:2.75rem;height:2.75rem;flex-basis:2.75rem;border-radius:.75rem;background:#e6fffb;color:#0f766e}
.bme-stat-number{font-size:1.55rem;line-height:1.15;font-weight:800;letter-spacing:-.035em;color:#0f2942}
.bme-stat-label{font-size:.7rem;font-weight:600;color:#64748b}
@media(min-width:1024px){
  .bme-hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:3.5rem;min-height:0;padding-block:4rem}
}
@media(max-width:767px){
  .bme-hero-grid{gap:1.5rem;padding:3.5rem 1.5rem}
  .bme-hero h1{font-size:clamp(2.4rem,9vw,3.15rem)}
  .bme-hero-copy{font-size:.95rem;line-height:1.75}
  .bme-hero-art{min-height:21rem}
  .bme-medical-card{width:78%;padding:1rem}
  .bme-float-chip{padding:.55rem .7rem;font-size:.6rem}
  .bme-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bme-stat{padding:.85rem}
  .bme-stat-number{font-size:1.25rem}
}


/* ==========================================================================
   BME ITERA 2.5.3 — Header spacing, compact footer and palette-aware colors
   These rules use the CSS variables injected by the WordPress Customizer.
   ========================================================================== */

/* Header: keep the logo and the program identity as one compact brand group. */
.bme-header .bme-container { width: min(1280px, calc(100% - 48px)); }
.bme-header-inner {
  display: flex;
  min-height: 76px;
  align-items: center;
  justify-content: space-between;
  gap: clamp(18px, 2.4vw, 34px);
}
.bme-header .bme-brand {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 10px;
  width: auto;
  min-width: 0;
  margin: 0;
  color: var(--bme-primary);
}
.bme-header .bme-brand img,
.bme-header .bme-custom-logo,
.bme-header .bme-brand-mark {
  display: block;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  margin: 0;
  object-fit: contain;
}
.bme-header .bme-brand-mark {
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #fff;
  font-size: 13px;
  background: linear-gradient(145deg, var(--bme-primary), var(--bme-accent));
  box-shadow: 0 6px 16px rgba(15,23,42,.14);
}
.bme-header .bme-brand > span:last-child {
  display: block;
  min-width: 0;
  margin: 0;
  line-height: 1.3;
}
.bme-header .bme-brand-title {
  margin: 0;
  color: var(--bme-primary);
  font-size: 14px;
  line-height: 1.25;
  letter-spacing: -.015em;
}
.bme-header .bme-brand-subtitle {
  margin: 3px 0 0;
  color: #64748b;
  font-size: 10px;
  line-height: 1.35;
}
.bme-header .bme-nav {
  flex: 0 1 auto;
  min-width: 0;
  margin-left: auto;
}
.bme-header .bme-primary-menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
}
.bme-header .bme-nav a {
  padding: 9px 11px;
  border-radius: 9px;
  font-size: 11px;
}
.bme-header .bme-nav a:hover,
.bme-header .bme-nav .current-menu-item > a,
.bme-header .bme-nav .current_page_item > a {
  color: var(--bme-primary);
  background: color-mix(in srgb, var(--bme-accent) 12%, white);
}
@media(max-width:1020px) {
  .bme-header .bme-container { width: calc(100% - 36px); }
  .bme-header-inner { gap: 14px; }
  .bme-header .bme-nav a { padding-inline: 8px; font-size: 10px; }
}
@media(max-width:820px) {
  .bme-header .bme-nav { margin-left: 0; }
  .bme-header .bme-primary-menu { display: block; }
  .bme-header .bme-nav a { padding: 11px 12px; font-size: 13px; }
}
@media(max-width:560px) {
  .bme-header .bme-container { width: calc(100% - 28px); }
  .bme-header-inner { min-height: 68px; }
  .bme-header .bme-brand { gap: 9px; }
  .bme-header .bme-brand img,
  .bme-header .bme-custom-logo,
  .bme-header .bme-brand-mark {
    flex-basis: 44px;
    width: 44px;
    height: 44px;
  }
  .bme-header .bme-brand-title { font-size: 12px; }
  .bme-header .bme-brand-subtitle { font-size: 9px; }
}

/* Footer: remove the double top padding that pushed its content below the fold. */
.bme-footer {
  padding: 0 !important;
  border-top: 4px solid var(--bme-accent);
  background: linear-gradient(135deg, var(--bme-footer-start), var(--bme-footer-end)) !important;
}
.bme-footer > .bme-container {
  width: min(1240px, calc(100% - 48px));
  padding-top: 30px;
  padding-bottom: 14px;
}
.bme-footer-grid {
  grid-template-columns: minmax(0, 1.35fr) minmax(150px, .75fr) minmax(180px, .85fr);
  align-items: start;
  gap: clamp(24px, 3.8vw, 48px);
  padding: 0 0 22px !important;
}
.bme-footer .bme-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  width: auto;
}
.bme-footer .bme-brand img,
.bme-footer .bme-custom-logo,
.bme-footer .bme-brand-mark {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  margin: 0;
}
.bme-footer .bme-brand-title { color: #fff; font-size: 13px; }
.bme-footer .bme-brand-subtitle { margin-top: 3px; color: #b8cad9; font-size: 10px; }
.bme-footer p { margin-top: 12px; line-height: 1.7; }
.bme-footer h3 { margin-bottom: 10px; color: #fff; font-size: 12px; }
.bme-footer li + li { margin-top: 5px; }
.bme-footer li a { font-size: 11px; }
.bme-footer li a:hover,
.bme-footer .bme-back-top:hover { color: var(--bme-accent); }
.bme-footer-bottom {
  align-items: center;
  gap: 10px 18px;
  padding: 13px 0 4px;
  border-top-color: rgba(255,255,255,.16);
  font-size: 10px;
}
.bme-footer .bme-back-top {
  width: 32px;
  height: 32px;
  border-radius: 9px;
}
@media(max-width:760px) {
  .bme-footer > .bme-container {
    width: calc(100% - 32px);
    padding-top: 24px;
    padding-bottom: 12px;
  }
  .bme-footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 22px 18px;
    padding-bottom: 18px !important;
  }
  .bme-footer-grid > :first-child { grid-column: 1 / -1; }
  .bme-footer-bottom { align-items: flex-start; flex-direction: column; }
}

/* Theme palette tokens: changing the Customizer preset recolors all primary UI areas. */
.bme-topbar {
  background: var(--bme-hero-start) !important;
}
.bme-brand-mark {
  background: linear-gradient(145deg, var(--bme-primary), var(--bme-accent));
}
.bme-hero,
.bme-inner-hero,
.bme-inner-hero.bme-template-hero,
.bme-inner-hero.bme-faculty-hero,
.bme-template-hero:not(.bme-inner-hero),
.bme-pb-hero {
  background:
    radial-gradient(ellipse at 82% 16%, color-mix(in srgb, var(--bme-accent) 20%, transparent), transparent 29%),
    linear-gradient(118deg, var(--bme-hero-start) 0%, var(--bme-hero-mid) 54%, var(--bme-hero-end) 100%) !important;
}
.bme-hero .bme-eyebrow,
.bme-eyebrow,
.bme-template-eyebrow {
  color: var(--bme-accent);
}
.bme-hero .bme-button-primary,
.bme-button-primary {
  border-color: var(--bme-accent);
  background: var(--bme-accent);
  color: #082b35;
}
.bme-hero .bme-button-primary:hover,
.bme-button-primary:hover {
  border-color: color-mix(in srgb, var(--bme-accent) 78%, white);
  background: color-mix(in srgb, var(--bme-accent) 82%, white);
  color: #082b35;
}
.bme-nav a:hover,
.bme-nav .current-menu-item > a,
.bme-nav .current_page_item > a,
.bme-text-link,
.bme-card-more,
.bme-content a:not(.bme-button) {
  --bme-link-color: var(--bme-primary);
}
.bme-content a:not(.bme-button):hover,
.bme-card-more:hover,
.bme-text-link:hover { color: var(--bme-accent); }
.bme-pulse path:first-of-type { stroke: var(--bme-accent) !important; }
.bme-stat-icon {
  color: var(--bme-primary);
  background: color-mix(in srgb, var(--bme-accent) 12%, white);
}
.bme-data-table th,
.bme-button-primary { background-color: var(--bme-primary); }
.bme-button-primary { background: var(--bme-accent); }
.bme-footer .bme-back-top:hover {
  border-color: var(--bme-accent);
  color: #062d34;
  background: var(--bme-accent);
}

/* Keep the gap before the footer proportional on short archive/document pages. */
main#main-content > .bme-content-area:last-child,
main#main-content .bme-content-area:last-child {
  padding-bottom: clamp(28px, 3.2vw, 42px);
}


/* ==========================================================================
   BME ITERA v2.5.4 — Unified alignment, inner hero scale, dark appearance
   ========================================================================== */

/* One shared horizontal rhythm for header, Hero and body content. */
:root {
  --bme-site-max: 1200px;
  --bme-site-gutter: 24px;
}
.bme-container,
.bme-header .bme-container,
.bme-footer > .bme-container {
  width: min(var(--bme-site-max), calc(100% - (var(--bme-site-gutter) * 2))) !important;
  max-width: var(--bme-site-max);
  margin-left: auto !important;
  margin-right: auto !important;
}
.bme-inner-hero .bme-container,
.bme-pb-hero .bme-container,
.bme-template-hero:not(.bme-inner-hero) .bme-container {
  width: min(var(--bme-site-max), calc(100% - (var(--bme-site-gutter) * 2))) !important;
  max-width: var(--bme-site-max) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.bme-content-area > .bme-container,
.bme-content-area .bme-container {
  width: min(var(--bme-site-max), calc(100% - (var(--bme-site-gutter) * 2))) !important;
  max-width: var(--bme-site-max) !important;
}

/* Header navigation and controls align with the same centered body container. */
.bme-header .bme-container { gap: 20px; }
.bme-header-inner { min-width: 0; }
.bme-header .bme-brand { flex: 0 0 auto; }
.bme-header .bme-nav {
  display: flex;
  flex: 1 1 auto;
  justify-content: flex-end;
  min-width: 0;
  margin-left: auto;
}
.bme-header .bme-primary-menu {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  gap: 3px;
}
.bme-header .bme-nav a {
  padding: 9px 9px;
  font-size: 10.5px;
  white-space: nowrap;
}
.bme-header-tools {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
}
.bme-theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid #dbe6ec;
  border-radius: 9px;
  color: #334155;
  background: #f8fafc;
  font: inherit;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.bme-theme-toggle:hover {
  border-color: var(--bme-accent);
  color: var(--bme-primary);
  background: color-mix(in srgb, var(--bme-accent) 9%, white);
}
.bme-theme-toggle-icon { font-size: 14px; line-height: 1; }
.bme-language-switch {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 3px;
  border: 1px solid #dbe6ec;
  border-radius: 9px;
  background: #f8fafc;
}
.bme-language-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 27px;
  min-height: 26px;
  padding: 0 6px;
  border-radius: 6px;
  color: #475569;
  font-size: 10px;
  font-weight: 800;
  text-decoration: none;
}
.bme-language-link:hover,
.bme-language-link.is-active {
  color: var(--bme-primary);
  background: color-mix(in srgb, var(--bme-accent) 16%, white);
}
.bme-header .bme-menu-toggle { margin-left: 0; }
@media(max-width:1100px) {
  .bme-header .bme-container { gap: 12px; }
  .bme-header .bme-nav a { padding-inline: 6px; font-size: 9.5px; }
  .bme-theme-toggle { padding-inline: 8px; }
}
@media(max-width:900px) and (min-width:821px) {
  .bme-header .bme-brand-title { font-size: 12px; }
  .bme-header .bme-brand-subtitle { font-size: 9px; }
  .bme-header .bme-nav a { padding-inline: 5px; font-size: 9px; }
  .bme-header-tools { gap: 4px; }
  .bme-theme-toggle-label { display: none; }
}
@media(max-width:820px) {
  :root { --bme-site-gutter: 18px; }
  .bme-header .bme-container { gap: 10px; }
  .bme-header .bme-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: var(--bme-site-gutter);
    right: var(--bme-site-gutter);
    width: auto !important;
    max-width: none;
    margin: 0;
    padding: 12px;
    border: 1px solid #e2e8f0;
    border-radius: 0 0 14px 14px;
    background: #fff;
    box-shadow: 0 18px 35px rgba(15,23,42,.12);
  }
  .bme-header .bme-nav.is-open { display: block; }
  .bme-header .bme-primary-menu { display: block; }
  .bme-header .bme-nav a { padding: 11px 12px; font-size: 13px; }
  .bme-header-tools { margin-left: auto; }
  .bme-theme-toggle-label { display: none; }
  .bme-menu-toggle { display: inline-flex !important; }
  .bme-header .bme-nav .sub-menu { position: static; box-shadow: none; }
}
@media(max-width:420px) {
  .bme-header .bme-brand-subtitle { max-width: 145px; }
  .bme-theme-toggle { min-width: 34px; padding: 0 8px; }
  .bme-language-link { min-width: 24px; padding-inline: 4px; }
}

/* Inner-page hero headings were oversized; reserve the large display scale for home only. */
.bme-inner-hero,
.bme-inner-hero.bme-template-hero,
.bme-pb-hero,
.bme-template-hero:not(.bme-inner-hero) {
  min-height: 215px;
  padding: 42px 0 48px !important;
}
.bme-inner-hero h1,
.bme-pb-hero h1,
.bme-template-hero:not(.bme-inner-hero) h1 {
  max-width: 860px;
  margin: 0;
  font-size: clamp(32px, 3vw, 40px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.04em !important;
  font-weight: 800 !important;
}
.bme-inner-hero .bme-breadcrumb,
.bme-pb-hero .bme-breadcrumb,
.bme-template-hero:not(.bme-inner-hero) .bme-breadcrumb {
  margin-bottom: 15px;
  font-size: 10px;
}
.bme-inner-hero .bme-template-eyebrow,
.bme-pb-hero .bme-template-eyebrow,
.bme-template-hero:not(.bme-inner-hero) .bme-template-eyebrow,
.bme-inner-hero .bme-eyebrow {
  margin-bottom: 10px;
  font-size: 10px;
}
.bme-inner-hero > .bme-container > p:not(.bme-breadcrumb):not(.bme-template-eyebrow):not(.bme-eyebrow),
.bme-pb-hero-description,
.bme-pb-hero > .bme-container > p:not(.bme-breadcrumb):not(.bme-template-eyebrow),
.bme-template-hero:not(.bme-inner-hero) > .bme-container > p:not(.bme-breadcrumb):not(.bme-template-eyebrow),
.bme-inner-hero .bme-faculty-hero-copy {
  max-width: 680px;
  margin-top: 12px;
  font-size: 14px !important;
  line-height: 1.75 !important;
}
.bme-inner-hero.bme-faculty-hero { min-height: 215px; padding: 42px 0 48px !important; }
.bme-inner-hero.bme-faculty-hero h1 { font-size: clamp(32px, 3vw, 40px) !important; }
@media(max-width:767px) {
  .bme-inner-hero,
  .bme-inner-hero.bme-template-hero,
  .bme-pb-hero,
  .bme-template-hero:not(.bme-inner-hero),
  .bme-inner-hero.bme-faculty-hero { min-height: 190px; padding: 32px 0 38px !important; }
  .bme-inner-hero h1,
  .bme-pb-hero h1,
  .bme-template-hero:not(.bme-inner-hero) h1 { font-size: clamp(28px, 7vw, 34px) !important; }
}

/* Dark mode — toggled from the header, defaulted from the Customizer or device preference. */
html[data-bme-theme="dark"] {
  color-scheme: dark;
  --bme-paper: #0b1220;
  --bme-ink: #e2e8f0;
  --bme-muted: #9aa9bc;
  --bme-line: #263548;
}
html[data-bme-theme="dark"] body {
  color: #e2e8f0;
  background: #0b1220 !important;
}
html[data-bme-theme="dark"] .bme-header {
  border-bottom-color: #24364a !important;
  background: rgba(10,20,35,.96) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.28) !important;
}
html[data-bme-theme="dark"] .bme-header .bme-brand-title,
html[data-bme-theme="dark"] .bme-nav a {
  color: #e2e8f0;
}
html[data-bme-theme="dark"] .bme-header .bme-brand-subtitle { color: #94a3b8; }
html[data-bme-theme="dark"] .bme-nav .sub-menu {
  border-color: #26384c;
  background: #101c2d;
}
@media(max-width:820px) {
  html[data-bme-theme="dark"] .bme-header .bme-nav {
    border-color: #26384c;
    background: #101c2d;
  }
}
html[data-bme-theme="dark"] .bme-nav a:hover,
html[data-bme-theme="dark"] .bme-nav .current-menu-item > a,
html[data-bme-theme="dark"] .bme-nav .current_page_item > a {
  color: #99f6e4;
  background: rgba(45,212,191,.12);
}
html[data-bme-theme="dark"] .bme-theme-toggle,
html[data-bme-theme="dark"] .bme-language-switch {
  border-color: #34475e;
  color: #e2e8f0;
  background: #17263a;
}
html[data-bme-theme="dark"] .bme-language-link { color: #cbd5e1; }
html[data-bme-theme="dark"] .bme-language-link.is-active,
html[data-bme-theme="dark"] .bme-theme-toggle:hover {
  color: #99f6e4;
  background: rgba(45,212,191,.16);
}
html[data-bme-theme="dark"] .bme-topbar { background: #050c18 !important; }
html[data-bme-theme="dark"] main,
html[data-bme-theme="dark"] .bme-content-area,
html[data-bme-theme="dark"] .bme-faculty-content,
html[data-bme-theme="dark"] .bme-home-main-content,
html[data-bme-theme="dark"] .bme-home-layout {
  color: #e2e8f0;
  background-color: #0b1220 !important;
}
html[data-bme-theme="dark"] .bme-card,
html[data-bme-theme="dark"] .bme-document-row,
html[data-bme-theme="dark"] .bme-sidebar-box,
html[data-bme-theme="dark"] .bme-sidebar .widget,
html[data-bme-theme="dark"] .bme-form-panel,
html[data-bme-theme="dark"] .bme-page-intro-card,
html[data-bme-theme="dark"] .bme-pb-intro-card,
html[data-bme-theme="dark"] .bme-profile-data-grid article,
html[data-bme-theme="dark"] .bme-cluster-grid article,
html[data-bme-theme="dark"] .bme-insight-grid article,
html[data-bme-theme="dark"] .bme-curriculum-stats article,
html[data-bme-theme="dark"] .bme-kc-card,
html[data-bme-theme="dark"] .bme-kc-form,
html[data-bme-theme="dark"] .bme-kc-check {
  border-color: #26384c !important;
  color: #e2e8f0;
  background: #111e30 !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.18);
}
html[data-bme-theme="dark"] .bme-content,
html[data-bme-theme="dark"] .bme-content p,
html[data-bme-theme="dark"] .bme-content li,
html[data-bme-theme="dark"] .bme-card p,
html[data-bme-theme="dark"] .bme-document-row p,
html[data-bme-theme="dark"] .bme-data-heading p,
html[data-bme-theme="dark"] .bme-data-table td {
  color: #c0ccda;
}
html[data-bme-theme="dark"] .bme-content h1,
html[data-bme-theme="dark"] .bme-content h2,
html[data-bme-theme="dark"] .bme-content h3,
html[data-bme-theme="dark"] .bme-card h3,
html[data-bme-theme="dark"] .bme-data-heading h2,
html[data-bme-theme="dark"] .bme-kc-card strong,
html[data-bme-theme="dark"] .bme-sidebar .widget-title {
  color: #f1f5f9;
}
html[data-bme-theme="dark"] .bme-course-filters input,
html[data-bme-theme="dark"] .bme-course-filters select,
html[data-bme-theme="dark"] .bme-documents-filter input,
html[data-bme-theme="dark"] .bme-documents-filter select,
html[data-bme-theme="dark"] .bme-form-panel input,
html[data-bme-theme="dark"] .bme-form-panel select,
html[data-bme-theme="dark"] .bme-form-panel textarea,
html[data-bme-theme="dark"] .bme-data-table,
html[data-bme-theme="dark"] .bme-table-wrap {
  color: #e2e8f0;
  border-color: #34475d;
  background: #101c2c;
}
html[data-bme-theme="dark"] .bme-content table,
html[data-bme-theme="dark"] .bme-content table td {
  color: #dbe5ef;
  border-color: #334155;
  background: #111e30;
}
html[data-bme-theme="dark"] .bme-content table th,
html[data-bme-theme="dark"] .bme-data-table th { background: #172b42; }
html[data-bme-theme="dark"] .bme-stat-strip .bme-stats {
  border-color: #26384c;
  background: #111e30;
}
html[data-bme-theme="dark"] .bme-stat {
  border-color: #27394d;
  background: #17263a;
}
html[data-bme-theme="dark"] .bme-stat-number,
html[data-bme-theme="dark"] .bme-stat-label { color: #e2e8f0; }
html[data-bme-theme="dark"] .bme-footer { border-top-color: var(--bme-accent); }
html[data-bme-theme="dark"] .bme-content a:not(.bme-button) { color: #7dd3fc; }
html[data-bme-theme="dark"] .bme-empty-state,
html[data-bme-theme="dark"] .bme-data-empty { color: #cbd5e1; background: #142338; border-color: #334155; }
html[data-bme-theme="dark"] .bme-inner-hero,
html[data-bme-theme="dark"] .bme-pb-hero { filter: saturate(.9); }

/* Keep Page Builder's intentional full-width mode independent of the shared site grid. */
.bme-pb-container-full .bme-pb-hero .bme-container,
.bme-pb-container-full .bme-content-area .bme-container {
  width: 100% !important;
  max-width: none !important;
  padding-left: var(--bme-pb-gutter, 24px) !important;
  padding-right: var(--bme-pb-gutter, 24px) !important;
}

/* Desktop dark navigation stays on the same header surface; only the mobile menu is a panel. */
@media(min-width:821px) {
  html[data-bme-theme="dark"] .bme-header .bme-nav {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
}


/* ==========================================================================
   BME ITERA v2.5.9 — shared breadcrumb and editable template controls
   ========================================================================== */
.bme-inner-hero .bme-container,
.bme-template-hero .bme-container {
  position: relative;
  z-index: 2;
}
.bme-breadcrumb {
  display: inline-flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 18px !important;
  padding: 7px 12px !important;
  border: 1px solid rgba(211,244,240,.22);
  border-radius: 999px !important;
  color: rgba(239,249,252,.78) !important;
  background: rgba(255,255,255,.075) !important;
  font-size: 11px !important;
  font-weight: 650;
  line-height: 1.45;
  letter-spacing: .01em;
  backdrop-filter: blur(8px);
}
.bme-breadcrumb a {
  color: #b8f5eb !important;
  text-decoration: none !important;
}
.bme-breadcrumb a:hover {
  color: #fff !important;
  text-decoration: underline !important;
}
.bme-breadcrumb-separator {
  color: rgba(220,238,245,.58);
  font-size: 10px;
}
.bme-breadcrumb-current {
  color: #f8fafc;
  font-weight: 700;
}
.bme-template-hero .bme-template-eyebrow {
  display: inline-flex;
  width: fit-content;
  margin: 0 0 10px;
  border: 1px solid color-mix(in srgb, var(--bme-accent) 35%, transparent);
  border-radius: 7px;
  padding: 7px 11px;
  color: #a7f3e8;
  background: color-mix(in srgb, var(--bme-accent) 10%, transparent);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
  line-height: 1.35;
  text-transform: uppercase;
}
.bme-template-hero h1 {
  max-width: 900px;
  margin: 0;
  color: #fff;
  font-size: clamp(32px, 3.15vw, 42px);
  line-height: 1.12;
  letter-spacing: -.045em;
  font-weight: 800;
}
.bme-template-hero .bme-template-hero-description {
  max-width: 760px;
  margin: 14px 0 0;
  color: #dbe9f1;
  font-size: 14px;
  line-height: 1.75;
}
.bme-template-hero .bme-container { padding-top: 0; padding-bottom: 0; }
@media(max-width:767px) {
  .bme-breadcrumb { margin-bottom: 14px !important; font-size: 10px !important; }
  .bme-template-hero h1 { font-size: clamp(28px, 7vw, 34px); }
  .bme-template-hero .bme-template-hero-description { font-size: 13px; }
}
html[data-bme-theme="dark"] .bme-breadcrumb {
  border-color: rgba(148,163,184,.25);
  color: #cbd5e1 !important;
  background: rgba(2,6,23,.42) !important;
}

/* Admin-only controls for page-specific template modules. */
.bme-pb-admin .bme-pb-template-controls {
  border-color: #94d8cf;
  background: linear-gradient(180deg,#f2fbfa 0%,#fff 100%);
}
.bme-pb-admin .bme-pb-template-controls h3,
.bme-pb-admin .bme-pb-template-modules-title {
  color: #0f5d63;
}
.bme-pb-admin .bme-pb-template-module {
  margin: 14px 0;
  padding: 14px;
  border: 1px solid #dce8ed;
  border-radius: 12px;
  background: #fff;
}
.bme-pb-admin .bme-pb-template-module-head {
  margin-bottom: 10px;
  color: #173653;
}
.bme-pb-admin .bme-pb-template-resource-cards {
  padding: 12px;
  border: 1px dashed #c4d6de;
  border-radius: 10px;
  background: #f8fbfc;
}
.bme-pb-admin .bme-pb-template-resource-cards > .bme-pb-grid {
  padding-top: 10px;
}


/* v2.5.10: Breadcrumb and Hero eyebrow must occupy separate vertical rows. */
.bme-inner-hero .bme-breadcrumb,
.bme-template-hero .bme-breadcrumb,
.bme-pb-hero .bme-breadcrumb {
  display: flex !important;
  clear: both;
  float: none;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 14px !important;
}
.bme-inner-hero .bme-template-eyebrow,
.bme-template-hero .bme-template-eyebrow,
.bme-pb-hero .bme-template-eyebrow {
  display: table !important;
  clear: both;
  float: none;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 10px !important;
}
.bme-inner-hero .bme-breadcrumb + .bme-template-eyebrow,
.bme-template-hero .bme-breadcrumb + .bme-template-eyebrow,
.bme-pb-hero .bme-breadcrumb + .bme-template-eyebrow {
  margin-top: 0 !important;
}
.bme-pb-native-note { margin: 8px 0 14px !important; }
.bme-pb-native-jump { margin: 4px 0 14px !important; }
.bme-pb-native-jump a { text-decoration: none; }


/* BME ITERA v2.5.12 — Tailwind-aligned page-builder rhythm; Hero inherits the shared native template styles. */
.bme-page-builder-main .bme-pb-layout-shell {
  width: min(100%, 1200px);
  max-width: 1200px;
  margin-inline: auto;
  padding: clamp(24px, 3vw, 40px) clamp(18px, 2vw, 26px) clamp(34px, 4vw, 54px);
  gap: clamp(20px, 2.5vw, 32px);
}
.bme-page-builder-main .bme-pb-primary-column,
.bme-page-builder-main .bme-pb-content-area { min-width: 0; }
.bme-page-builder-main .bme-pb-section {
  margin-block: 0;
  padding-block: clamp(22px, 3vw, 36px);
}
.bme-page-builder-main .bme-pb-section-inner,
.bme-page-builder-main .bme-pb-editor-content .bme-container {
  width: 100%;
  max-width: 100%;
}
.bme-page-builder-main .bme-pb-section-heading {
  max-width: 820px;
  margin: 0 0 20px;
}
.bme-page-builder-main .bme-pb-section-heading h2 {
  margin: 0;
  color: var(--bme-ink);
  font-size: clamp(21px, 2.2vw, 28px);
  line-height: 1.25;
  letter-spacing: -.025em;
}
.bme-page-builder-main .bme-pb-section-heading > p:last-child {
  margin: 8px 0 0;
  color: var(--bme-muted);
  font-size: 14px;
  line-height: 1.7;
}
.bme-page-builder-main .bme-pb-cards-grid { gap: 16px; }
.bme-page-builder-main .bme-pb-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--bme-line);
  border-radius: 16px;
  background: var(--bme-surface, #fff);
  box-shadow: 0 8px 24px rgba(15, 37, 58, .045);
}
.bme-page-builder-main .bme-pb-card-copy { padding: clamp(16px, 2vw, 22px); }
.bme-page-builder-main .bme-pb-rich-text,
.bme-page-builder-main .bme-pb-split-copy { color: var(--bme-ink); line-height: 1.75; }
.bme-page-builder-main .bme-pb-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border: 1px solid var(--bme-line);
  border-radius: 18px;
  padding: clamp(20px, 3vw, 32px);
}
.bme-page-builder-main .bme-pb-page-sidebar .bme-academic-side { top: 104px; }
@media (max-width: 767px) {
.bme-page-builder-main .bme-pb-layout-shell {
    padding: 20px 18px 38px;
  }
  .bme-page-builder-main .bme-pb-cards-grid { grid-template-columns: minmax(0, 1fr); }
}

/* v2.5.11 — standalone visibility toggle for the BME identity card. */
#bme-itera-identity-card-visibility .inside { padding-top: 8px; }
#bme-itera-identity-card-visibility .inside label { display: flex; align-items: flex-start; gap: 8px; line-height: 1.5; }
#bme-itera-identity-card-visibility .inside input[type="checkbox"] { margin-top: 3px; }
#bme-itera-identity-card-visibility .inside .description { margin-top: 8px; color: #64748b; }


/* ==========================================================================
   BME ITERA v2.5.13 — shared page alignment and editorial news experience
   ========================================================================== */

/* The main content column now uses exactly the same centered container as Hero. */
.bme-inner-hero .bme-container,
.bme-content-area > .bme-container,
.bme-content-area > .bme-container.bme-content-layout,
.bme-news-feed > .bme-container,
.bme-news-article-area > .bme-container {
  width: min(var(--bme-site-max, 1200px), calc(100% - (var(--bme-site-gutter, 24px) * 2))) !important;
  max-width: var(--bme-site-max, 1200px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box;
}

/* Remove template-specific inner offsets that previously made left edges drift. */
.bme-academic-template .bme-content-area > .bme-container,
.bme-academic-template .bme-page-intro-layout,
.bme-academic-template .bme-dynamic-curriculum-sections,
.bme-academic-template .bme-academic-details,
.bme-academic-template .bme-academic-structure,
.bme-content-area .bme-content-layout {
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
}
.bme-academic-template .bme-page-intro-copy,
.bme-academic-template .bme-page-intro-layout > * {
  min-width: 0;
  margin-left: 0;
}
.bme-academic-template .bme-page-intro-copy {
  padding-left: 0;
  padding-right: 0;
}
.bme-page-builder-main .bme-pb-layout-shell {
  width: min(var(--bme-site-max, 1200px), calc(100% - (var(--bme-site-gutter, 24px) * 2))) !important;
  max-width: var(--bme-site-max, 1200px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box;
}
.bme-page-builder-main .bme-pb-primary-column,
.bme-page-builder-main .bme-pb-content-area {
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

/* News page toolbar and category navigation. */
.bme-news-feed {
  padding-top: clamp(30px, 4.2vw, 56px);
  padding-bottom: clamp(48px, 6vw, 76px);
}
.bme-news-feed-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin: 0 0 24px;
}
.bme-news-feed-heading > div:first-child { max-width: 720px; }
.bme-news-section-kicker {
  margin: 0 0 8px;
  color: var(--bme-accent, #20b5a6);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .15em;
  line-height: 1.4;
  text-transform: uppercase;
}
.bme-news-feed-heading h2 {
  margin: 0;
  color: var(--bme-ink, #173653);
  font-size: clamp(23px, 2.7vw, 32px);
  font-weight: 800;
  letter-spacing: -.035em;
  line-height: 1.18;
}
.bme-news-feed-heading p:not(.bme-news-section-kicker) {
  margin: 8px 0 0;
  color: var(--bme-muted, #64748b);
  font-size: 14px;
  line-height: 1.7;
}
.bme-news-search {
  flex: 0 1 330px;
  width: 100%;
  max-width: 330px;
}
.bme-news-search form {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin: 0;
}
.bme-news-search label { flex: 1 1 auto; min-width: 0; }
.bme-news-search input[type="search"] {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 11px;
  padding: 0 13px;
  color: var(--bme-ink, #173653);
  background: var(--bme-surface, #fff);
  font: inherit;
  font-size: 13px;
}
.bme-news-search input[type="submit"],
.bme-news-search button {
  min-height: 42px;
  border: 0;
  border-radius: 11px;
  padding: 0 15px;
  color: #fff;
  background: var(--bme-primary, #123a63);
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}
.bme-news-category-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0 0 24px;
  padding: 0 0 20px;
  border-bottom: 1px solid var(--bme-line, #dbe5ed);
}
.bme-news-category-list a {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 999px;
  padding: 0 12px;
  color: var(--bme-muted, #64748b);
  background: var(--bme-surface, #fff);
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
  transition: color .18s ease, border-color .18s ease, background .18s ease;
}
.bme-news-category-list a:hover,
.bme-news-category-list a.is-active {
  border-color: color-mix(in srgb, var(--bme-accent, #20b5a6) 45%, white);
  color: var(--bme-primary, #123a63);
  background: color-mix(in srgb, var(--bme-accent, #20b5a6) 10%, white);
}

/* Featured story. */
.bme-news-featured-wrap { margin: 0 0 26px; }
.bme-news-featured {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(300px, .88fr);
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 20px;
  background: var(--bme-surface, #fff);
  box-shadow: 0 12px 32px rgba(16, 43, 68, .07);
}
.bme-news-featured-media,
.bme-news-card-media {
  position: relative;
  display: block;
  overflow: hidden;
  color: inherit;
  background: linear-gradient(135deg, #0b2949, #0c7775);
  text-decoration: none;
}
.bme-news-featured-media { min-height: 330px; }
.bme-news-featured-image,
.bme-news-card-image {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}
.bme-news-featured-media:hover .bme-news-featured-image,
.bme-news-card-media:hover .bme-news-card-image { transform: scale(1.035); }
.bme-news-featured-badge {
  position: absolute;
  left: 18px;
  top: 18px;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 999px;
  padding: 0 11px;
  color: #fff;
  background: rgba(4, 28, 48, .72);
  backdrop-filter: blur(8px);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .04em;
}
.bme-news-featured-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  min-width: 0;
  padding: clamp(22px, 3.5vw, 42px);
}
.bme-news-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin: 0 0 12px;
  color: var(--bme-muted, #64748b);
  font-size: 11px;
  line-height: 1.5;
}
.bme-news-category {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  border-radius: 999px;
  padding: 0 9px;
  color: #08766e;
  background: #e7f8f5;
  font-size: 10px;
  font-weight: 800;
  text-decoration: none;
}
.bme-news-featured-title {
  margin: 0;
  color: var(--bme-ink, #173653);
  font-size: clamp(23px, 2.5vw, 34px);
  font-weight: 850;
  letter-spacing: -.04em;
  line-height: 1.18;
}
.bme-news-featured-title a,
.bme-news-card-title a {
  color: inherit;
  text-decoration: none;
}
.bme-news-featured-title a:hover,
.bme-news-card-title a:hover { color: var(--bme-primary, #123a63); }
.bme-news-featured-excerpt {
  display: -webkit-box;
  overflow: hidden;
  margin: 14px 0 20px;
  color: var(--bme-muted, #64748b);
  font-size: 14px;
  line-height: 1.75;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}
.bme-news-readmore {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  color: var(--bme-primary, #123a63);
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}
.bme-news-readmore span { color: var(--bme-accent, #20b5a6); transition: transform .18s ease; }
.bme-news-readmore:hover span { transform: translateX(4px); }

/* Supporting news cards. */
.bme-news-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 20px;
}
.bme-news-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 16px;
  background: var(--bme-surface, #fff);
  box-shadow: 0 8px 22px rgba(16, 43, 68, .045);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.bme-news-card:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--bme-accent, #20b5a6) 35%, var(--bme-line, #dbe5ed));
  box-shadow: 0 16px 32px rgba(16, 43, 68, .09);
}
.bme-news-card-media { aspect-ratio: 16 / 9; }
.bme-news-card-content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding: 18px 19px 20px;
}
.bme-news-card-content .bme-news-meta { margin-bottom: 11px; }
.bme-news-card-title {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  color: var(--bme-ink, #173653);
  font-size: clamp(17px, 1.45vw, 20px);
  font-weight: 800;
  letter-spacing: -.025em;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.bme-news-card-excerpt {
  display: -webkit-box;
  overflow: hidden;
  margin: 10px 0 17px;
  color: var(--bme-muted, #64748b);
  font-size: 12.5px;
  line-height: 1.7;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.bme-news-card-content .bme-news-readmore { margin-top: auto; padding-top: 4px; }
.bme-news-image-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 190px;
  color: rgba(255,255,255,.92);
  background:
    radial-gradient(circle at 80% 20%, rgba(45,212,191,.28), transparent 34%),
    linear-gradient(135deg, #08253f, #0d596a 62%, #087b78);
}
.bme-news-image-placeholder span { font-size: clamp(32px, 5vw, 58px); font-weight: 900; letter-spacing: -.07em; }
.bme-news-image-placeholder small { margin-top: 5px; font-size: 9px; font-weight: 800; letter-spacing: .18em; }
.bme-news-image-placeholder.is-featured { min-height: 330px; }
.bme-news-empty {
  padding: 50px 20px;
  border: 1px dashed var(--bme-line, #dbe5ed);
  border-radius: 18px;
  text-align: center;
  background: var(--bme-surface, #fff);
}
.bme-news-empty-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 15px;
  color: #fff;
  background: var(--bme-primary, #123a63);
  font-weight: 900;
}
.bme-news-empty h2 { margin: 15px 0 6px; color: var(--bme-ink, #173653); font-size: 21px; }
.bme-news-empty p { margin: 0; color: var(--bme-muted, #64748b); font-size: 13px; }
.bme-news-pagination { margin-top: 30px; }
.bme-news-pagination .nav-links,
.bme-news-pagination ul.page-numbers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bme-news-pagination a,
.bme-news-pagination span.page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 36px;
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 10px;
  padding: 0 10px;
  color: var(--bme-ink, #173653);
  background: var(--bme-surface, #fff);
  font-size: 11px;
  font-weight: 750;
  text-decoration: none;
}
.bme-news-pagination .current {
  border-color: var(--bme-primary, #123a63) !important;
  color: #fff !important;
  background: var(--bme-primary, #123a63) !important;
}

/* Single article reading layout. */
.bme-news-article-area { padding-top: clamp(28px, 4vw, 48px); }
.bme-news-article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 250px;
  align-items: start;
  gap: clamp(24px, 4vw, 44px);
}
.bme-news-article {
  min-width: 0;
  max-width: 860px;
  margin: 0;
  padding: clamp(18px, 3vw, 32px);
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 18px;
  background: var(--bme-surface, #fff);
  box-shadow: 0 10px 28px rgba(16, 43, 68, .05);
}
.bme-news-article-cover {
  overflow: hidden;
  margin: 0 0 22px;
  border-radius: 13px;
  background: #e8eff4;
}
.bme-news-article-cover img { display: block; width: 100%; height: auto; max-height: 540px; object-fit: cover; }
.bme-news-article-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  color: var(--bme-muted, #64748b);
  font-size: 12px;
}
.bme-news-article-content {
  color: var(--bme-ink, #173653);
  font-size: 15px;
  line-height: 1.9;
}
.bme-news-article-content > *:first-child { margin-top: 0; }
.bme-news-article-content h2,
.bme-news-article-content h3 { margin-top: 1.8em; color: var(--bme-ink, #173653); font-weight: 800; letter-spacing: -.02em; }
.bme-news-article-content p,
.bme-news-article-content li { color: var(--bme-muted, #52657a); }
.bme-news-article-content img { max-width: 100%; height: auto; border-radius: 12px; }
.bme-news-article-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px solid var(--bme-line, #dbe5ed);
}
.bme-news-back-link { color: var(--bme-primary, #123a63); font-size: 12px; font-weight: 800; text-decoration: none; }
.bme-news-article-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.bme-news-article-tags a {
  display: inline-flex;
  border-radius: 999px;
  padding: 5px 9px;
  color: #08766e;
  background: #e7f8f5;
  font-size: 10px;
  font-weight: 750;
  text-decoration: none;
}
.bme-news-sidebar-panel {
  position: sticky;
  top: 100px;
  padding: 20px;
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 16px;
  background: var(--bme-surface, #fff);
  box-shadow: 0 8px 24px rgba(16, 43, 68, .045);
}
.bme-news-sidebar-panel h2 { margin: 0 0 13px; color: var(--bme-ink, #173653); font-size: 17px; font-weight: 800; }
.bme-news-sidebar-panel > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 0;
  border-top: 1px solid var(--bme-line, #dbe5ed);
  color: var(--bme-muted, #64748b);
  font-size: 12px;
  font-weight: 650;
  text-decoration: none;
}
.bme-news-sidebar-panel > a span { color: var(--bme-accent, #20b5a6); }
.bme-news-sidebar-panel > a:hover { color: var(--bme-primary, #123a63); }

/* Dark theme support for the news experience. */
html[data-bme-theme="dark"] .bme-news-card,
html[data-bme-theme="dark"] .bme-news-featured,
html[data-bme-theme="dark"] .bme-news-article,
html[data-bme-theme="dark"] .bme-news-sidebar-panel,
html[data-bme-theme="dark"] .bme-news-empty {
  border-color: #26384c;
  background: #111e30;
  box-shadow: 0 12px 28px rgba(0,0,0,.18);
}
html[data-bme-theme="dark"] .bme-news-featured-title,
html[data-bme-theme="dark"] .bme-news-card-title,
html[data-bme-theme="dark"] .bme-news-feed-heading h2,
html[data-bme-theme="dark"] .bme-news-article-content h2,
html[data-bme-theme="dark"] .bme-news-article-content h3,
html[data-bme-theme="dark"] .bme-news-sidebar-panel h2 {
  color: #e5eef7;
}
html[data-bme-theme="dark"] .bme-news-featured-excerpt,
html[data-bme-theme="dark"] .bme-news-card-excerpt,
html[data-bme-theme="dark"] .bme-news-feed-heading p,
html[data-bme-theme="dark"] .bme-news-article-content p,
html[data-bme-theme="dark"] .bme-news-article-content li {
  color: #a9b8c9;
}
html[data-bme-theme="dark"] .bme-news-category-list a,
html[data-bme-theme="dark"] .bme-news-search input[type="search"] {
  border-color: #33465d;
  color: #e2e8f0;
  background: #0b1727;
}

@media (max-width: 900px) {
  .bme-news-featured { grid-template-columns: minmax(0, 1fr); }
  .bme-news-featured-media { min-height: 260px; aspect-ratio: 16 / 8; }
  .bme-news-featured-image { position: absolute; inset: 0; }
  .bme-news-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
  .bme-news-article-layout { grid-template-columns: minmax(0,1fr); }
  .bme-news-sidebar-panel { position: static; }
}
@media (max-width: 640px) {
  :root { --bme-site-gutter: 18px; }
  .bme-news-feed-heading { align-items: stretch; flex-direction: column; gap: 16px; }
  .bme-news-search { max-width: none; flex-basis: auto; }
  .bme-news-grid { grid-template-columns: minmax(0,1fr); }
  .bme-news-featured-media { min-height: 210px; aspect-ratio: 16 / 9; }
  .bme-news-featured-content { padding: 20px; }
  .bme-news-article { padding: 18px; border-radius: 14px; }
  .bme-news-sidebar-panel { padding: 17px; }
}


/* ==========================================================================
   v2.5.14 — Curriculum Gutenberg spacing and responsive reading surface
   ========================================================================== */

/* The WordPress editor content is a deliberate, padded content panel rather
   than a full-width text block touching the container edges. */
.bme-curriculum-page .bme-curriculum-editor {
  display: flow-root;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: clamp(18px, 2.2vw, 28px) 0 clamp(28px, 3vw, 40px);
  padding: clamp(20px, 2.6vw, 32px);
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 18px;
  color: var(--bme-ink, #173653);
  background: var(--bme-surface, #fff);
  box-shadow: 0 10px 28px rgba(16, 43, 68, .045);
  font-size: 15px;
  line-height: 1.85;
}
.bme-curriculum-page .bme-curriculum-editor > :first-child { margin-top: 0; }
.bme-curriculum-page .bme-curriculum-editor > :last-child { margin-bottom: 0; }
.bme-curriculum-page .bme-curriculum-editor h2 {
  margin: 1.7em 0 .6em;
  color: var(--bme-primary, #123a63);
  font-size: clamp(22px, 2.2vw, 29px);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.25;
}
.bme-curriculum-page .bme-curriculum-editor h3 {
  margin: 1.45em 0 .55em;
  color: var(--bme-primary, #123a63);
  font-size: clamp(18px, 1.7vw, 22px);
  font-weight: 800;
  line-height: 1.3;
}
.bme-curriculum-page .bme-curriculum-editor p,
.bme-curriculum-page .bme-curriculum-editor li {
  color: var(--bme-muted, #52657a);
}
.bme-curriculum-page .bme-curriculum-editor p { margin: 0 0 1em; }
.bme-curriculum-page .bme-curriculum-editor ul,
.bme-curriculum-page .bme-curriculum-editor ol {
  margin: 0 0 1.2em;
  padding-left: 1.35em;
}
.bme-curriculum-page .bme-curriculum-editor figure,
.bme-curriculum-page .bme-curriculum-editor .wp-block-image {
  max-width: 100%;
  margin: 1.25em 0;
}
.bme-curriculum-page .bme-curriculum-editor img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
}
.bme-curriculum-page .bme-curriculum-editor .wp-block-group,
.bme-curriculum-page .bme-curriculum-editor .wp-block-columns {
  box-sizing: border-box;
  max-width: 100%;
}
.bme-curriculum-page .bme-curriculum-editor .wp-block-group {
  margin-block: 1.25em;
}
.bme-curriculum-page .bme-curriculum-editor .wp-block-table {
  max-width: 100%;
  margin: 1.4em 0;
  overflow-x: auto;
}
.bme-curriculum-page .bme-curriculum-editor table {
  min-width: 640px;
  width: 100%;
}
.bme-curriculum-page .bme-curriculum-editor .alignwide,
.bme-curriculum-page .bme-curriculum-editor .alignfull {
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}
html[data-bme-theme="dark"] .bme-curriculum-page .bme-curriculum-editor {
  border-color: #2c4057;
  color: #e2e8f0;
  background: #111e30;
  box-shadow: 0 12px 28px rgba(0,0,0,.18);
}
html[data-bme-theme="dark"] .bme-curriculum-page .bme-curriculum-editor h2,
html[data-bme-theme="dark"] .bme-curriculum-page .bme-curriculum-editor h3 {
  color: #e5eef7;
}
html[data-bme-theme="dark"] .bme-curriculum-page .bme-curriculum-editor p,
html[data-bme-theme="dark"] .bme-curriculum-page .bme-curriculum-editor li {
  color: #b6c5d6;
}
@media (max-width: 640px) {
  .bme-curriculum-page .bme-curriculum-editor {
    margin-top: 18px;
    margin-bottom: 28px;
    padding: 17px;
    border-radius: 14px;
    font-size: 14px;
    line-height: 1.8;
  }
  .bme-curriculum-page .bme-curriculum-editor h2 { margin-top: 1.4em; }
}


/* ==========================================================================
   BME ITERA v2.5.15 — additive page sections and compact academic navigation
   ========================================================================== */
.bme-pb-native-additions {
  margin-top: 0;
  padding: 0 0 clamp(24px, 3.5vw, 44px);
}
.bme-pb-native-additions > .bme-pb-section:first-child { margin-top: 0; }
.bme-pb-native-additions > .bme-pb-section:last-child { margin-bottom: 0; }

.bme-academic-quicknav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 24px 0 20px;
  padding: 12px;
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 14px;
  background: color-mix(in srgb, var(--bme-surface, #fff) 88%, var(--bme-paper, #f4f7fa));
}
.bme-academic-quicknav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 999px;
  padding: 0 12px;
  color: var(--bme-primary, #123a63);
  background: var(--bme-surface, #fff);
  font-size: 11px;
  font-weight: 750;
  line-height: 1.4;
  text-decoration: none;
  transition: color .18s ease, background .18s ease, border-color .18s ease, transform .18s ease;
}
.bme-academic-quicknav a:hover {
  transform: translateY(-1px);
  border-color: color-mix(in srgb, var(--bme-accent, #20b5a6) 48%, white);
  color: #075d59;
  background: color-mix(in srgb, var(--bme-accent, #20b5a6) 10%, white);
}
.bme-academic-accordion {
  display: block;
  width: 100%;
  margin: 12px 0;
  overflow: clip;
  border: 1px solid var(--bme-line, #dbe5ed);
  border-radius: 15px;
  background: var(--bme-surface, #fff);
  box-shadow: 0 5px 18px rgba(16, 43, 68, .035);
  scroll-margin-top: 110px;
}
.bme-academic-accordion > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 58px;
  padding: 15px 18px;
  color: var(--bme-ink, #173653);
  cursor: pointer;
  list-style: none;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.45;
}
.bme-academic-accordion > summary::-webkit-details-marker { display: none; }
.bme-academic-accordion > summary::after {
  content: "+";
  display: inline-flex;
  flex: 0 0 28px;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 9px;
  color: #08776f;
  background: #e7f8f5;
  font-size: 19px;
  font-weight: 600;
  line-height: 1;
}
.bme-academic-accordion > summary small {
  margin-left: auto;
  color: var(--bme-muted, #64748b);
  font-size: 10px;
  font-weight: 650;
  white-space: nowrap;
}
.bme-academic-accordion[open] > summary {
  border-bottom: 1px solid var(--bme-line, #dbe5ed);
  background: color-mix(in srgb, var(--bme-accent, #20b5a6) 5%, var(--bme-surface, #fff));
}
.bme-academic-accordion[open] > summary::after { content: "−"; }
.bme-academic-accordion-panel {
  padding: clamp(16px, 2.2vw, 24px);
}
.bme-academic-accordion-panel > :first-child { margin-top: 0; }
.bme-academic-accordion-panel > :last-child { margin-bottom: 0; }
.bme-academic-accordion-panel .bme-dynamic-curriculum-sections {
  margin: 0;
  padding: 0;
  border: 0;
  box-shadow: none;
  background: transparent;
}
.bme-academic-accordion-panel .bme-curriculum-data,
.bme-academic-accordion-panel .bme-curriculum-catalog,
.bme-academic-accordion-panel .bme-cpmk-matrix {
  margin-top: 0;
}
.bme-academic-accordion-panel .bme-table-wrap,
.bme-academic-accordion-panel .bme-data-table-wrap {
  max-width: 100%;
  overflow-x: auto;
}
html[data-bme-theme="dark"] .bme-academic-quicknav,
html[data-bme-theme="dark"] .bme-academic-accordion {
  border-color: #2b4057;
  background: #111e30;
  box-shadow: 0 7px 22px rgba(0,0,0,.15);
}
html[data-bme-theme="dark"] .bme-academic-quicknav a {
  border-color: #33465d;
  color: #dbeafe;
  background: #172b42;
}
html[data-bme-theme="dark"] .bme-academic-accordion > summary { color: #e5eef7; }
html[data-bme-theme="dark"] .bme-academic-accordion > summary small { color: #a8b8ca; }
html[data-bme-theme="dark"] .bme-academic-accordion[open] > summary {
  border-color: #33465d;
  background: #172b42;
}
html[data-bme-theme="dark"] .bme-academic-accordion-panel { color: #dbe5ef; }
@media (max-width: 640px) {
  .bme-academic-quicknav {
    gap: 7px;
    margin: 18px 0 16px;
    padding: 10px;
    border-radius: 12px;
  }
  .bme-academic-quicknav a { min-height: 32px; padding: 0 10px; font-size: 10px; }
  .bme-academic-accordion { border-radius: 12px; }
  .bme-academic-accordion > summary { min-height: 52px; padding: 13px 14px; gap: 10px; font-size: 12px; }
  .bme-academic-accordion > summary small { display: none; }
  .bme-academic-accordion-panel { padding: 14px; }
}


/* ========================================================================== 
   BME ITERA v2.5.16 — academic tabs and page photo sliders
   ========================================================================== */
.bme-academic-quicknav.is-tabs-enhanced {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 6px;
  overflow-x: auto;
  overflow-y: hidden;
  margin: clamp(20px, 2.8vw, 30px) 0 0;
  padding: 8px;
  border: 1px solid #d7e4ed;
  border-bottom: 0;
  border-radius: 16px 16px 0 0;
  background: linear-gradient(135deg, #edf5fa 0%, #e5f4f2 100%);
  scrollbar-width: thin;
  scrollbar-color: #9fc7c5 transparent;
  -webkit-overflow-scrolling: touch;
}
.bme-academic-quicknav.is-tabs-enhanced a {
  flex: 0 0 auto;
  min-height: 42px;
  border: 1px solid transparent;
  border-radius: 11px;
  padding: 0 17px;
  color: #29445e;
  background: transparent;
  font-size: 12px;
  font-weight: 750;
  white-space: nowrap;
  text-decoration: none;
}
.bme-academic-quicknav.is-tabs-enhanced a:hover {
  border-color: #d0e5e7;
  color: #0b5b65;
  background: rgba(255,255,255,.74);
  transform: none;
}
.bme-academic-quicknav.is-tabs-enhanced a[aria-selected="true"],
.bme-academic-quicknav.is-tabs-enhanced a.is-active {
  border-color: transparent;
  color: #fff;
  background: linear-gradient(120deg, var(--bme-accent, #20b5a6), var(--bme-primary, #123a63));
  box-shadow: 0 6px 14px rgba(12, 65, 85, .17);
}
.bme-academic-tab-panel,
.bme-academic-tab-panel[open] {
  display: block;
  width: 100%;
  margin: 0 0 24px;
  overflow: visible;
  border: 1px solid #d7e4ed;
  border-top: 1px solid #d7e4ed;
  border-radius: 0 0 16px 16px;
  padding: 0;
  background: linear-gradient(145deg, #fff 0%, #f7fbfd 55%, #eef8f7 100%);
  box-shadow: 0 12px 28px rgba(16, 43, 68, .055);
  scroll-margin-top: 110px;
}
.bme-academic-tab-panel[hidden] { display: none !important; }
.bme-academic-tab-panel > summary { display: none !important; }
.bme-academic-tab-panel > .bme-academic-accordion-panel {
  padding: clamp(18px, 2.5vw, 30px);
}
.bme-academic-tab-panel .bme-dynamic-curriculum-sections { margin: 0; }
.bme-academic-tab-panel .bme-curriculum-resource-section { margin: 0; }
.bme-academic-tab-panel table { max-width: 100%; }
.bme-academic-tab-panel:focus { outline: 3px solid color-mix(in srgb, var(--bme-accent, #20b5a6) 30%, transparent); outline-offset: 3px; }
html[data-bme-theme="dark"] .bme-academic-quicknav.is-tabs-enhanced {
  border-color: #2b4057;
  background: linear-gradient(135deg, #172b42, #102c3b);
}
html[data-bme-theme="dark"] .bme-academic-quicknav.is-tabs-enhanced a { color: #dbe7f3; }
html[data-bme-theme="dark"] .bme-academic-quicknav.is-tabs-enhanced a:hover { color: #e8fffb; background: #1e3d50; border-color: #36566a; }
html[data-bme-theme="dark"] .bme-academic-quicknav.is-tabs-enhanced a[aria-selected="true"] { color: #fff; }
html[data-bme-theme="dark"] .bme-academic-tab-panel,
html[data-bme-theme="dark"] .bme-academic-tab-panel[open] {
  border-color: #2b4057;
  color: #e2e8f0;
  background: linear-gradient(145deg, #111e30, #142a39 75%, #123537);
  box-shadow: 0 12px 28px rgba(0,0,0,.2);
}
@media (max-width: 640px) {
  .bme-academic-quicknav.is-tabs-enhanced { gap: 5px; margin-top: 18px; padding: 6px; border-radius: 13px 13px 0 0; }
  .bme-academic-quicknav.is-tabs-enhanced a { min-height: 38px; padding: 0 13px; font-size: 11px; }
  .bme-academic-tab-panel, .bme-academic-tab-panel[open] { margin-bottom: 18px; border-radius: 0 0 13px 13px; }
  .bme-academic-tab-panel > .bme-academic-accordion-panel { padding: 15px; }
}

/* Page-specific photo sliders: shared treatment for Education, Research, PkM, Achievement and Alumni. */
.bme-page-photo-slider-section { padding: 0 0 clamp(22px, 3vw, 34px); }
.bme-page-photo-slider {
  position: relative;
  isolation: isolate;
  width: 100%;
  height: clamp(235px, 30vw, 360px);
  overflow: hidden;
  border: 1px solid rgba(199, 221, 232, .8);
  border-radius: 20px;
  background: #092b45;
  box-shadow: 0 14px 32px rgba(12, 42, 66, .13);
}
.bme-page-photo-slides,
.bme-page-photo-slide { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
.bme-page-photo-slide { opacity: 0; visibility: hidden; transition: opacity .65s ease, visibility .65s ease; }
.bme-page-photo-slide.is-active { opacity: 1; visibility: visible; z-index: 1; }
.bme-page-photo-slide img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 42%; }
.bme-page-photo-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(4, 24, 44, .93) 0%, rgba(5, 36, 58, .73) 34%, rgba(6, 38, 58, .16) 75%, rgba(4, 22, 39, .12) 100%), linear-gradient(0deg, rgba(3, 20, 35, .38), transparent 48%);
}
.bme-page-photo-caption {
  position: absolute;
  z-index: 2;
  left: clamp(22px, 4vw, 48px);
  bottom: clamp(25px, 4vw, 43px);
  width: min(520px, calc(100% - 100px));
  color: #fff;
  text-shadow: 0 2px 14px rgba(0,0,0,.22);
}
.bme-page-photo-kicker { display: block; margin: 0 0 9px; color: #6ee7d5; font-size: 10px; font-weight: 850; letter-spacing: .16em; text-transform: uppercase; }
.bme-page-photo-caption h2 { margin: 0 0 8px; color: #fff; font-size: clamp(24px, 3vw, 36px); font-weight: 850; letter-spacing: -.04em; line-height: 1.1; }
.bme-page-photo-caption p { margin: 0; color: rgba(255,255,255,.93); font-size: clamp(12px, 1.3vw, 15px); line-height: 1.65; }
.bme-page-photo-caption small { display: block; margin-top: 9px; color: rgba(226, 244, 249, .75); font-size: 9px; letter-spacing: .02em; }
.bme-page-photo-control {
  position: absolute;
  z-index: 4;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid rgba(255,255,255,.48);
  border-radius: 50%;
  color: #fff;
  background: rgba(5, 31, 51, .56);
  box-shadow: 0 4px 16px rgba(0,0,0,.18);
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
  transform: translateY(-50%);
  backdrop-filter: blur(8px);
  transition: background .2s ease, transform .2s ease;
}
.bme-page-photo-control:hover { background: var(--bme-accent, #20b5a6); transform: translateY(-50%) scale(1.05); }
.bme-page-photo-control.is-prev { left: 16px; }
.bme-page-photo-control.is-next { right: 16px; }
.bme-page-photo-dots { position: absolute; z-index: 4; right: 25px; bottom: 22px; display: flex; align-items: center; gap: 7px; }
.bme-page-photo-dots button { width: 8px; height: 8px; padding: 0; border: 1px solid rgba(255,255,255,.9); border-radius: 999px; background: rgba(255,255,255,.45); cursor: pointer; transition: width .2s ease, background .2s ease; }
.bme-page-photo-dots button.is-active { width: 24px; border-color: #6ee7d5; background: #6ee7d5; }
html[data-bme-theme="dark"] .bme-page-photo-slider { border-color: #2b4057; box-shadow: 0 14px 34px rgba(0,0,0,.28); }
@media (max-width: 640px) {
  .bme-page-photo-slider-section { padding-bottom: 20px; }
  .bme-page-photo-slider { height: 225px; border-radius: 15px; }
  .bme-page-photo-slide img { object-position: center; }
  .bme-page-photo-overlay { background: linear-gradient(90deg, rgba(4,24,44,.9), rgba(4,24,44,.48) 70%, rgba(4,24,44,.18)), linear-gradient(0deg, rgba(3,20,35,.4), transparent 55%); }
  .bme-page-photo-caption { left: 18px; bottom: 24px; width: calc(100% - 76px); }
  .bme-page-photo-caption h2 { font-size: 23px; }
  .bme-page-photo-caption p { font-size: 11px; }
  .bme-page-photo-caption small { font-size: 8px; }
  .bme-page-photo-control { width: 33px; height: 33px; font-size: 21px; }
  .bme-page-photo-control.is-prev { left: 8px; }
  .bme-page-photo-control.is-next { right: 8px; }
  .bme-page-photo-dots { right: 15px; bottom: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .bme-page-photo-slide, .bme-page-photo-control, .bme-page-photo-dots button { transition: none !important; }
}

/* Keep horizontal tab scrollers inside the responsive content container. */
.bme-academic-quicknav.is-tabs-enhanced { box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; }


/* ========================================================================== 
   BME ITERA v2.5.17 — refined spacing, profile card, autoplay and motion
   ========================================================================== */

/* Keep the page photo slider visually separated from the navigation/Hero above it. */
.bme-page-photo-slider-section {
  padding-top: clamp(26px, 3.4vw, 42px);
  padding-bottom: clamp(26px, 3.2vw, 38px);
}
.bme-page-photo-slider {
  border-radius: 22px;
  box-shadow: 0 18px 42px rgba(9, 42, 66, .14);
}
.bme-page-photo-slider:focus-within {
  outline: 3px solid color-mix(in srgb, var(--bme-accent, #20b5a6) 42%, transparent);
  outline-offset: 4px;
}
.bme-page-photo-control:focus-visible,
.bme-page-photo-dots button:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}
@media (max-width: 640px) {
  .bme-page-photo-slider-section {
    padding-top: 22px;
    padding-bottom: 22px;
  }
  .bme-page-photo-slider { border-radius: 16px; }
}

/* Keep the BME identity-card contents and disciplinary list within one card boundary. */
.bme-profile-aside {
  width: 100%;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.bme-profile-aside > .bme-academic-side,
.bme-profile-aside .bme-profile-identity-card {
  display: block;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  box-sizing: border-box;
  border: 1px solid #d8e6eb;
  border-radius: 18px;
  background: linear-gradient(150deg, #fff 0%, #f5fafb 100%);
  box-shadow: 0 14px 36px rgba(13, 47, 73, .085);
}
.bme-profile-aside .bme-academic-side-mark {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  margin: -1px -1px 0;
  padding: 20px 23px;
  border-radius: 17px 17px 0 0;
}
.bme-profile-aside .bme-academic-side-mark strong {
  flex: 0 0 auto;
  font-size: 27px;
  line-height: 1.1;
}
.bme-profile-aside .bme-academic-side-mark span {
  min-width: 0;
  text-align: right;
  overflow-wrap: anywhere;
  font-size: 10px;
}
.bme-profile-aside .bme-academic-side h3,
.bme-profile-aside .bme-academic-side > p,
.bme-profile-aside .bme-identity-card-kicker,
.bme-profile-aside .bme-identity-card-button {
  margin-left: 22px;
  margin-right: 22px;
}
.bme-profile-aside .bme-academic-side h3 { margin-top: 20px; margin-bottom: 6px; }
.bme-profile-aside .bme-academic-side > p:not(.bme-identity-card-kicker) { margin-bottom: 0; }
.bme-profile-aside .bme-identity-card-features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  width: auto;
  min-width: 0;
  margin: 20px 22px 22px;
  padding: 16px 0 0;
  border: 0;
  border-top: 1px solid #e0ebef;
  list-style: none;
}
.bme-profile-aside .bme-identity-card-features li {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  margin: 0;
  padding: 9px 10px;
  border: 1px solid #e1edf0;
  border-radius: 11px;
  color: #29455b;
  background: #f3f9fa;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.bme-profile-aside .bme-identity-feature-check {
  display: inline-flex;
  flex: 0 0 17px;
  align-items: center;
  justify-content: center;
  width: 17px;
  height: 17px;
  border-radius: 6px;
  color: #08796f;
  background: #d9f4ef;
  font-size: 10px;
  font-weight: 900;
}
html[data-bme-theme="dark"] .bme-profile-aside > .bme-academic-side,
html[data-bme-theme="dark"] .bme-profile-aside .bme-profile-identity-card {
  border-color: #2d465a;
  background: linear-gradient(150deg, #13263a 0%, #102333 100%);
  box-shadow: 0 16px 38px rgba(0,0,0,.22);
}
html[data-bme-theme="dark"] .bme-profile-aside .bme-identity-card-features { border-top-color: #2d465a; }
html[data-bme-theme="dark"] .bme-profile-aside .bme-identity-card-features li {
  border-color: #2b465b;
  color: #d8e6f1;
  background: #172f43;
}
html[data-bme-theme="dark"] .bme-profile-aside .bme-identity-feature-check { color: #9bf0df; background: #174c4b; }
@media (max-width: 640px) {
  .bme-profile-aside .bme-academic-side-mark { padding: 17px 18px; }
  .bme-profile-aside .bme-academic-side h3,
  .bme-profile-aside .bme-academic-side > p,
  .bme-profile-aside .bme-identity-card-kicker,
  .bme-profile-aside .bme-identity-card-button { margin-left: 18px; margin-right: 18px; }
  .bme-profile-aside .bme-identity-card-features { grid-template-columns: minmax(0, 1fr); margin: 17px 18px 18px; }
}

/* Tailwind-inspired interaction rhythm shared by buttons, cards and data surfaces. */
.bme-button,
.bme-header-cta,
.bme-card,
.bme-news-card,
.bme-academic-detail-card,
.bme-document-row,
.bme-curriculum-resource,
.bme-sidebar-box,
.bme-form-panel,
.bme-page-intro-card {
  transition-property: transform, box-shadow, border-color, background-color, color;
  transition-duration: 180ms;
  transition-timing-function: cubic-bezier(.2,.7,.2,1);
}
.bme-button:active,
.bme-header-cta:active { transform: translateY(0) scale(.985); }
.bme-card:focus-within,
.bme-news-card:focus-within,
.bme-academic-detail-card:focus-within { border-color: color-mix(in srgb, var(--bme-accent, #20b5a6) 56%, white); }
.bme-content-area .bme-template-section-head,
.bme-content-area .bme-academic-section-head { margin-bottom: clamp(18px, 2.3vw, 28px); }
.bme-content-area table { border-color: #dbe6ed; }
.bme-content-area th { background: linear-gradient(110deg, #0d3554, #126b70); color: #fff; }
html[data-bme-theme="dark"] .bme-content-area th { background: linear-gradient(110deg, #0b2943, #124b52); }

/* Scroll-reveal animation is progressively enhanced by academic-media.js. */
html.bme-motion-ready [data-bme-reveal] {
  transition: opacity .58s cubic-bezier(.2,.7,.2,1), transform .58s cubic-bezier(.2,.7,.2,1), box-shadow .2s ease, border-color .2s ease;
  will-change: opacity, transform;
}
html.bme-motion-ready [data-bme-reveal]:not(.is-revealed) {
  opacity: 0;
  transform: translate3d(0, 18px, 0);
}
html.bme-motion-ready [data-bme-reveal].is-revealed { opacity: 1; }
.bme-academic-tab-panel.is-active {
  animation: bme-academic-tab-enter .34s cubic-bezier(.2,.7,.2,1) both;
}
@keyframes bme-academic-tab-enter {
  from { opacity: .45; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  html.bme-motion-ready [data-bme-reveal],
  html.bme-motion-ready [data-bme-reveal]:not(.is-revealed),
  .bme-academic-tab-panel.is-active { animation: none !important; transition: none !important; opacity: 1 !important; transform: none !important; }
}

/* v2.5.17 card rhythm correction: let the card padding define one clean content inset. */
.bme-profile-aside .bme-academic-side-mark {
  margin: -24px -24px 22px;
  padding: 20px 23px;
  border-radius: 17px 17px 0 0;
}
.bme-profile-aside .bme-academic-side h3,
.bme-profile-aside .bme-academic-side > p,
.bme-profile-aside .bme-identity-card-kicker,
.bme-profile-aside .bme-identity-card-button {
  margin-left: 0;
  margin-right: 0;
}
.bme-profile-aside .bme-academic-side h3 { margin-top: 0; margin-bottom: 6px; }
.bme-profile-aside .bme-identity-card-features { margin: 20px 0 0; }
.bme-profile-aside .bme-identity-card-features li::before { display: none; content: none; }
@media (max-width: 640px) {
  .bme-profile-aside .bme-academic-side-mark { margin: -20px -20px 18px; padding: 17px 19px; }
  .bme-profile-aside .bme-identity-card-features { margin-top: 17px; }
}


/* ==========================================================================
   BME ITERA v2.5.18 — Footer controls, faculty org profiles and directories
   ========================================================================== */

/* Footer variants are controlled through the WordPress Customizer. */
.bme-footer {
  position: relative;
  padding: clamp(34px, 5vw, 58px) 0 18px;
  border-top: 3px solid var(--bme-accent, #20b5a6);
  background: linear-gradient(125deg, #07192d 0%, #112c49 58%, #0d4854 100%);
  color: #dce7f1;
}
.bme-footer .bme-container {
  width: min(var(--bme-site-max, 1200px), calc(100% - (var(--bme-site-gutter, 24px) * 2)));
  max-width: var(--bme-site-max, 1200px);
  margin-inline: auto;
}
.bme-footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) repeat(2, minmax(160px, .75fr));
  gap: clamp(24px, 4vw, 54px);
  align-items: start;
}
.bme-footer-brand-column,
.bme-footer-link-column { min-width: 0; }
.bme-footer-brand-column > p {
  max-width: 440px;
  margin: 16px 0 0;
  color: #b9c8d8;
  font-size: 13px;
  line-height: 1.8;
}
.bme-footer-link-column h3 {
  margin: 2px 0 14px;
  color: #f5f9fd;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: -.01em;
}
.bme-footer-link-column ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bme-footer-link-column li { margin: 0; padding: 0; }
.bme-footer-link-column a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #b9c8d8;
  font-size: 12px;
  line-height: 1.55;
  text-decoration: none;
  transition: color .18s ease, transform .18s ease;
}
.bme-footer-link-column a:hover { color: #6ee7d4; transform: translateX(3px); }
.bme-footer-bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px 22px;
  margin-top: clamp(28px, 4vw, 44px);
  padding-top: 17px;
  border-top: 1px solid rgba(209, 226, 240, .16);
  color: #a9bacb;
  font-size: 10px;
  line-height: 1.6;
}
.bme-footer-bottom strong { color: #e9f3fb; }
.bme-footer-scheme-teal { background: linear-gradient(125deg, #06243a 0%, #0b4655 58%, #0b706f 100%); }
.bme-footer-scheme-light {
  border-top-color: var(--bme-accent, #20b5a6);
  color: #334155;
  background: #f1f6f9;
}
.bme-footer-scheme-light .bme-footer-brand-column > p,
.bme-footer-scheme-light .bme-footer-link-column a,
.bme-footer-scheme-light .bme-footer-bottom { color: #64748b; }
.bme-footer-scheme-light .bme-footer-link-column h3,
.bme-footer-scheme-light .bme-footer-bottom strong { color: #173653; }
.bme-footer-scheme-light .bme-footer-bottom { border-color: #d8e3ec; }
.bme-footer-scheme-inherit { background: var(--bme-footer-bg, linear-gradient(125deg,#07192d,#112c49,#0d4854)); }

/* Organization chart cards resolve real faculty profiles rather than free-text names. */
.bme-academic-org-chart .bme-org-level,
.bme-academic-org-chart .bme-org-flow {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: clamp(14px, 2vw, 22px);
}
.bme-org-person-card {
  display: flex;
  flex: 0 1 230px;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  max-width: 270px;
  padding: 18px 16px 16px;
  border: 1px solid #d9e5ed;
  border-radius: 17px;
  background: linear-gradient(180deg, #fff 0%, #f7fbfd 100%);
  box-shadow: 0 8px 24px rgba(14, 43, 68, .065);
  text-align: center;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.bme-org-person-card:hover {
  transform: translateY(-4px);
  border-color: rgba(32, 181, 166, .55);
  box-shadow: 0 16px 32px rgba(14, 43, 68, .1);
}
.bme-org-person-position {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 27px;
  margin-bottom: 13px;
  padding: 4px 10px;
  border: 1px solid rgba(32, 181, 166, .24);
  border-radius: 999px;
  color: #08786f;
  background: #e8f8f5;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.35;
  text-transform: uppercase;
  letter-spacing: .055em;
}
.bme-org-person-profile {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  width: 100%;
  color: #173653;
  text-decoration: none;
}
.bme-org-person-photo-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 104px;
  height: 104px;
  overflow: hidden;
  border: 4px solid #fff;
  border-radius: 50%;
  background: #e5f3f4;
  box-shadow: 0 0 0 1px #d8e7ed, 0 7px 17px rgba(11, 45, 66, .11);
}
.bme-org-person-photo { display: block; width: 100%; height: 100%; object-fit: cover; }
.bme-org-person-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #08766e;
  background: linear-gradient(135deg, #d7f5ef, #dbeafe);
  font-size: 23px;
  font-weight: 900;
}
.bme-org-person-name {
  display: block;
  color: #173653;
  font-size: 14px;
  font-weight: 850;
  line-height: 1.45;
}
.bme-org-person-academic-role {
  display: block;
  margin-top: 6px;
  color: #64748b;
  font-size: 11px;
  line-height: 1.45;
}
.bme-org-person-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding-top: 13px;
  color: #08766e;
  font-size: 10px;
  font-weight: 800;
  text-decoration: none;
}
.bme-org-empty,
.bme-directory-empty {
  padding: 28px;
  border: 1px dashed #b7cbd9;
  border-radius: 16px;
  color: #546b7e;
  background: #f8fbfd;
  text-align: center;
}
.bme-org-empty { font-size: 13px; line-height: 1.7; }

/* Staff / laboratory directories. */
.bme-people-content,
.bme-laboratory-content { padding-block: clamp(30px, 4.2vw, 56px) clamp(44px, 6vw, 76px); }
.bme-people-intro,
.bme-laboratory-intro {
  margin: 0 0 32px;
  padding: clamp(18px, 2.6vw, 28px);
  border: 1px solid var(--bme-line, #dce6ed);
  border-radius: 17px;
  background: var(--bme-surface, #fff);
  box-shadow: 0 8px 24px rgba(16, 43, 68, .045);
  color: var(--bme-muted, #60758a);
  font-size: 14px;
  line-height: 1.8;
}
.bme-people-intro > :first-child,
.bme-laboratory-intro > :first-child { margin-top: 0; }
.bme-people-intro > :last-child,
.bme-laboratory-intro > :last-child { margin-bottom: 0; }
.bme-people-group { margin-top: clamp(28px, 4vw, 46px); }
.bme-modern-section-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: space-between;
  gap: 14px 20px;
  margin: 0 0 20px;
}
.bme-modern-section-heading h2 {
  margin: 0;
  color: var(--bme-ink, #173653);
  font-size: clamp(22px, 2.4vw, 30px);
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1.2;
}
.bme-modern-section-heading p:not(.bme-template-kicker) {
  max-width: 700px;
  margin: 8px 0 0;
  color: var(--bme-muted, #64748b);
  font-size: 13px;
  line-height: 1.7;
}
.bme-people-count {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  min-height: 30px;
  padding: 0 11px;
  border: 1px solid rgba(32,181,166,.22);
  border-radius: 999px;
  color: #08766e;
  background: #e8f8f5;
  font-size: 10px;
  font-weight: 800;
}
.bme-staff-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 18px;
}
.bme-staff-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--bme-line, #dce6ed);
  border-radius: 17px;
  background: var(--bme-surface, #fff);
  box-shadow: 0 8px 22px rgba(16,43,68,.045);
  transition: transform .2s ease, box-shadow .2s ease;
}
.bme-staff-card:hover { transform: translateY(-4px); box-shadow: 0 16px 34px rgba(16,43,68,.09); }
.bme-staff-photo {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: linear-gradient(135deg,#e2f5f2,#e6effb);
  text-decoration: none;
}
.bme-staff-photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.bme-staff-card:hover .bme-staff-photo img { transform: scale(1.035); }
.bme-staff-photo-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 82px;
  height: 82px;
  border-radius: 24px;
  color: #fff;
  background: linear-gradient(135deg,#0c3150,#087e79);
  font-size: 25px;
  font-weight: 900;
}
.bme-staff-card-body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 17px 17px 19px; }
.bme-staff-kind {
  display: inline-flex;
  align-items: center;
  min-height: 23px;
  margin-bottom: 9px;
  padding: 0 8px;
  border-radius: 7px;
  color: #08766e;
  background: #e8f8f5;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .07em;
}
.bme-staff-card h3 { margin: 0; color: var(--bme-ink,#173653); font-size: 15px; font-weight: 850; line-height: 1.4; }
.bme-staff-card h3 a { color: inherit; text-decoration: none; }
.bme-staff-role { margin: 6px 0 0; color: #08766e; font-size: 12px; font-weight: 750; line-height: 1.5; }
.bme-staff-unit,.bme-staff-expertise { margin: 7px 0 0; color: var(--bme-muted,#64748b); font-size: 11px; line-height: 1.65; }
.bme-staff-email { margin-top: auto; padding-top: 13px; color: var(--bme-primary,#123a63); font-size: 10px; font-weight: 750; text-decoration: none; overflow-wrap: anywhere; }
.bme-staff-profile-detail {
  display: grid;
  grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr);
  gap: clamp(22px,4vw,42px);
  align-items: start;
  padding: clamp(20px,3vw,32px);
  border: 1px solid var(--bme-line,#dce6ed);
  border-radius: 20px;
  background: var(--bme-surface,#fff);
  box-shadow: 0 12px 34px rgba(16,43,68,.06);
}
.bme-staff-profile-photo { overflow: hidden; border-radius: 15px; background: #e8f0f5; }
.bme-staff-profile-photo img { display: block; width: 100%; height: auto; max-height: 460px; object-fit: cover; }
.bme-staff-profile-content h2 { margin: 0; color: var(--bme-ink,#173653); font-size: clamp(24px,3vw,34px); font-weight: 850; line-height: 1.2; }
.bme-staff-profile-content > p { color: var(--bme-muted,#64748b); font-size: 13px; line-height: 1.7; }
.bme-staff-contact { display: block; margin-top: 8px; color: var(--bme-primary,#123a63); font-size: 12px; text-decoration: none; overflow-wrap: anywhere; }

/* Laboratory profile cards with image slider and content panel. */
.bme-lab-main-heading { margin-bottom: 24px; }
.bme-laboratory-list { display: grid; gap: 26px; }
.bme-lab-profile-card {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
  overflow: hidden;
  border: 1px solid var(--bme-line,#dce6ed);
  border-radius: 21px;
  background: var(--bme-surface,#fff);
  box-shadow: 0 12px 34px rgba(16,43,68,.06);
}
.bme-lab-profile-media { min-width: 0; min-height: 310px; background: #e8f1f5; }
.bme-lab-gallery-slider { position: relative; width: 100%; height: 100%; min-height: 310px; overflow: hidden; background: #0b2945; isolation: isolate; }
.bme-lab-gallery-track { position: absolute; inset: 0; }
.bme-lab-gallery-slide { position: absolute; inset: 0; margin: 0; opacity: 0; visibility: hidden; transition: opacity .5s ease, visibility .5s ease; }
.bme-lab-gallery-slide.is-active { opacity: 1; visibility: visible; }
.bme-lab-gallery-image { display: block; width: 100%; height: 100%; min-height: 310px; object-fit: cover; }
.bme-lab-gallery-arrow {
  position: absolute;
  z-index: 2;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255,255,255,.48);
  border-radius: 50%;
  color: #fff;
  background: rgba(7,29,48,.62);
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
  transform: translateY(-50%);
  backdrop-filter: blur(8px);
}
.bme-lab-gallery-arrow.is-prev { left: 16px; }
.bme-lab-gallery-arrow.is-next { right: 16px; }
.bme-lab-gallery-arrow:hover { background: rgba(8,116,111,.88); }
.bme-lab-gallery-dots {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: 17px;
  display: flex;
  align-items: center;
  gap: 7px;
  transform: translateX(-50%);
}
.bme-lab-gallery-dots button { width: 8px; height: 8px; border: 1px solid #fff; border-radius: 99px; padding: 0; background: rgba(255,255,255,.35); cursor: pointer; }
.bme-lab-gallery-dots button.is-active { width: 22px; background: #65e3d2; border-color: #65e3d2; }
.bme-lab-gallery-count {
  position: absolute;
  z-index: 2;
  right: 14px;
  top: 14px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 999px;
  padding: 5px 9px;
  color: #fff;
  background: rgba(6,28,47,.65);
  font-size: 10px;
  font-weight: 800;
  backdrop-filter: blur(8px);
}
.bme-lab-gallery-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 310px;
  color: #fff;
  background: radial-gradient(circle at 80% 20%,rgba(45,212,191,.25),transparent 35%),linear-gradient(135deg,#08243e,#0e6a70);
}
.bme-lab-gallery-placeholder span { font-size: 48px; font-weight: 950; letter-spacing: -.07em; }
.bme-lab-gallery-placeholder small { margin-top: 8px; font-size: 11px; }
.bme-lab-profile-body { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: clamp(20px,3vw,34px); }
.bme-lab-meta { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }
.bme-lab-meta span { display: inline-flex; align-items: center; min-height: 25px; border-radius: 999px; padding: 0 9px; color: #08766e; background: #e8f8f5; font-size: 10px; font-weight: 800; }
.bme-lab-profile-body h3 { margin: 0; color: var(--bme-ink,#173653); font-size: clamp(20px,2vw,25px); font-weight: 900; line-height: 1.25; letter-spacing: -.03em; }
.bme-lab-profile-body h3 a { color: inherit; text-decoration: none; }
.bme-lab-excerpt { margin: 10px 0 14px; color: var(--bme-muted,#64748b); font-size: 13px; line-height: 1.75; }
.bme-lab-info-block { margin-top: 12px; }
.bme-lab-info-block h4,.bme-lab-single-grid h3 { margin: 0 0 6px; color: var(--bme-ink,#173653); font-size: 12px; font-weight: 850; }
.bme-lab-info-block p,.bme-lab-single-grid p { margin: 0; color: var(--bme-muted,#64748b); font-size: 12px; line-height: 1.7; }
.bme-lab-responsible { display: grid; gap: 3px; margin-top: 14px; padding: 10px 12px; border-left: 3px solid var(--bme-accent,#20b5a6); border-radius: 0 9px 9px 0; background: #f0faf8; }
.bme-lab-responsible span { color: #64748b; font-size: 10px; }
.bme-lab-responsible strong { color: #173653; font-size: 12px; }
.bme-lab-details { width: 100%; margin-top: 9px; border: 1px solid var(--bme-line,#dce6ed); border-radius: 10px; background: #f9fbfc; }
.bme-lab-details summary { padding: 10px 12px; color: #173653; font-size: 11px; font-weight: 800; cursor: pointer; }
.bme-lab-details p { margin: 0; padding: 0 12px 12px; color: #64748b; font-size: 11px; line-height: 1.7; }
.bme-lab-readmore { display: inline-flex; align-items: center; gap: 7px; margin-top: 16px; color: var(--bme-primary,#123a63); font-size: 11px; font-weight: 850; text-decoration: none; }
.bme-lab-readmore span { color: var(--bme-accent,#20b5a6); }
.bme-lab-single-card { overflow: hidden; border: 1px solid var(--bme-line,#dce6ed); border-radius: 20px; background: var(--bme-surface,#fff); box-shadow: 0 12px 32px rgba(16,43,68,.055); }
.bme-lab-gallery-slider-single { min-height: clamp(300px,48vw,600px); aspect-ratio: 16 / 7; }
.bme-lab-gallery-slider-single .bme-lab-gallery-image { min-height: 100%; }
.bme-lab-single-content { padding: clamp(22px,3.2vw,40px); }
.bme-lab-single-content h2 { margin: 20px 0 8px; color: var(--bme-ink,#173653); font-size: 22px; font-weight: 850; }
.bme-lab-single-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; margin-top: 22px; }
.bme-lab-single-grid > section { padding: 16px; border: 1px solid var(--bme-line,#dce6ed); border-radius: 12px; background: #f8fbfd; }

/* Dark theme support for the new directory and profile components. */
html[data-bme-theme="dark"] .bme-org-person-card,
html[data-bme-theme="dark"] .bme-staff-card,
html[data-bme-theme="dark"] .bme-staff-profile-detail,
html[data-bme-theme="dark"] .bme-lab-profile-card,
html[data-bme-theme="dark"] .bme-lab-single-card,
html[data-bme-theme="dark"] .bme-people-intro,
html[data-bme-theme="dark"] .bme-laboratory-intro {
  border-color: #2b4057;
  background: #111e30;
  box-shadow: 0 12px 28px rgba(0,0,0,.18);
}
html[data-bme-theme="dark"] .bme-org-person-name,
html[data-bme-theme="dark"] .bme-staff-card h3,
html[data-bme-theme="dark"] .bme-staff-profile-content h2,
html[data-bme-theme="dark"] .bme-modern-section-heading h2,
html[data-bme-theme="dark"] .bme-lab-profile-body h3,
html[data-bme-theme="dark"] .bme-lab-info-block h4,
html[data-bme-theme="dark"] .bme-lab-single-content h2 {
  color: #e5eef7;
}
html[data-bme-theme="dark"] .bme-staff-role,
html[data-bme-theme="dark"] .bme-staff-unit,
html[data-bme-theme="dark"] .bme-staff-expertise,
html[data-bme-theme="dark"] .bme-lab-excerpt,
html[data-bme-theme="dark"] .bme-lab-info-block p,
html[data-bme-theme="dark"] .bme-lab-single-grid p {
  color: #aebed0;
}
html[data-bme-theme="dark"] .bme-lab-details,
html[data-bme-theme="dark"] .bme-lab-single-grid > section { border-color: #33465d; background: #172b42; }
html[data-bme-theme="dark"] .bme-lab-details summary,
html[data-bme-theme="dark"] .bme-lab-responsible strong { color: #e5eef7; }
html[data-bme-theme="dark"] .bme-footer-scheme-light { color: #dce7f1; background: #101f31; }
html[data-bme-theme="dark"] .bme-footer-scheme-light .bme-footer-link-column h3,
html[data-bme-theme="dark"] .bme-footer-scheme-light .bme-footer-bottom strong { color: #eef6fc; }

/* Responsive layout. */
@media (max-width: 1024px) {
  .bme-staff-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .bme-lab-profile-card { grid-template-columns: minmax(0,1fr); }
  .bme-lab-profile-media { min-height: 280px; }
  .bme-lab-gallery-slider,.bme-lab-gallery-placeholder { min-height: 280px; }
}
@media (max-width: 760px) {
  .bme-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 18px; }
  .bme-footer-brand-column { grid-column: 1 / -1; }
  .bme-staff-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
  .bme-staff-profile-detail { grid-template-columns: minmax(0,1fr); }
  .bme-staff-profile-photo { max-width: 360px; }
  .bme-lab-single-grid { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 520px) {
  .bme-footer-grid { grid-template-columns: minmax(0,1fr); }
  .bme-footer-brand-column { grid-column: auto; }
  .bme-footer-bottom { align-items: flex-start; flex-direction: column; }
  .bme-staff-grid { grid-template-columns: minmax(0,1fr); }
  .bme-staff-card { display: grid; grid-template-columns: 112px minmax(0,1fr); }
  .bme-staff-photo { aspect-ratio: auto; min-height: 130px; }
  .bme-staff-card-body { padding: 13px; }
  .bme-staff-card h3 { font-size: 13px; }
  .bme-staff-email { font-size: 9px; }
  .bme-lab-profile-body { padding: 18px; }
  .bme-lab-profile-media { min-height: 220px; }
  .bme-lab-gallery-slider,.bme-lab-gallery-placeholder { min-height: 220px; }
  .bme-lab-gallery-image { min-height: 220px; }
  .bme-lab-gallery-slider-single { min-height: 240px; }
  .bme-lab-single-content { padding: 18px; }
}


/* v2.5.18 footer palette overrides legacy !important footer reset. */
.bme-footer {
  padding: clamp(34px, 5vw, 58px) 0 18px !important;
  border-top: 3px solid var(--bme-accent, #20b5a6) !important;
  color: #dce7f1 !important;
  background: linear-gradient(125deg, #07192d 0%, #112c49 58%, #0d4854 100%) !important;
}
.bme-footer-scheme-teal {
  background: linear-gradient(125deg, #06243a 0%, #0b4655 58%, #0b706f 100%) !important;
}
.bme-footer-scheme-light {
  border-top-color: var(--bme-accent, #20b5a6) !important;
  color: #334155 !important;
  background: #f1f6f9 !important;
}
.bme-footer-scheme-light .bme-footer-brand-column > p,
.bme-footer-scheme-light .bme-footer-link-column a,
.bme-footer-scheme-light .bme-footer-bottom { color: #64748b !important; }
.bme-footer-scheme-light .bme-footer-link-column h3,
.bme-footer-scheme-light .bme-footer-bottom strong { color: #173653 !important; }
.bme-footer-scheme-light .bme-footer-bottom { border-color: #d8e3ec !important; }
.bme-footer-scheme-inherit {
  background: var(--bme-footer-bg, linear-gradient(125deg,#07192d,#112c49,#0d4854)) !important;
}

/* 2.5.19 compact footer */
.bme-footer {padding:30px 0 12px !important;}
.bme-footer-grid {gap:clamp(16px,2.5vw,30px);grid-template-columns:minmax(0,1.45fr) repeat(2,minmax(140px,.7fr));}
.bme-footer-brand-column > p {margin-top:10px;line-height:1.6;max-width:390px;}
.bme-footer-link-column ul {gap:5px;}
.bme-footer-link-column h3 {margin:0 0 9px;}
.bme-footer-bottom {margin-top:22px;padding-top:12px;}
.bme-footer-link-column a {line-height:1.35;}
@media(max-width:760px){.bme-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.bme-footer-brand-column{grid-column:1/-1}}
@media(max-width:520px){.bme-footer-grid{grid-template-columns:1fr}.bme-footer-brand-column{grid-column:auto}}
.bme-faculty-card[hidden],.bme-faculty-kk-section[hidden]{display:none!important;}
.bme-faculty-kk-section{margin:28px 0 36px}.bme-faculty-kk-section>h3{font-size:21px;margin:0 0 15px;color:var(--bme-ink,#173653);border-left:4px solid #20b5a6;padding-left:12px;}
.bme-faculty-card-links a.bme-profile-icon{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;border:1px solid #d5e4e9;border-radius:9px;background:#f4faf9;color:#164a66;text-decoration:none;margin:0;font-size:11px;font-weight:850;}
.bme-profile-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.bme-profile-icon:hover{background:#def5ef}.bme-faculty-card-links{gap:7px;align-items:center}.bme-faculty-card-links .bme-faculty-detail-link{margin:0}
.bme-faculty-extra-section{margin-top:44px}.bme-faculty-extra-section h2{font-size:clamp(23px,3vw,30px);color:var(--bme-ink,#173653);margin:0 0 18px}.bme-faculty-extra-section .bme-staff-grid{margin-top:14px}
.bme-academic-career-image{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px 12px 0 0;margin-bottom:15px;background:#e5f2f6;}

/* BME ITERA v2.5.21 — Native academic card editor bridge */
.bme-pb-native-card-edit-note {
  margin: 12px 0 18px !important;
  padding: 13px 15px !important;
  border: 1px solid #b8dcd7 !important;
  border-left: 4px solid #1aa997 !important;
  border-radius: 10px !important;
  background: #effaf8 !important;
  color: #24485a !important;
  line-height: 1.65 !important;
}
.bme-academic-details.bme-pb-bg-tint { padding: clamp(22px,3vw,34px); border-radius: 18px; background: #f1f6fa; }
.bme-academic-details.bme-pb-bg-teal { padding: clamp(22px,3vw,34px); border-radius: 18px; background: #eaf8f5; }
.bme-academic-details.bme-pb-bg-dark { padding: clamp(22px,3vw,34px); border-radius: 18px; color: #edf7fb; background: linear-gradient(130deg,#0b223a,#104c58); }
.bme-academic-details.bme-pb-bg-dark .bme-academic-section-head h2,
.bme-academic-details.bme-pb-bg-dark .bme-academic-section-head p,
.bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card h3,
.bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card p { color: #edf7fb; }
.bme-academic-details.bme-pb-align-center .bme-academic-section-head { text-align: center; }
.bme-academic-details .bme-academic-detail-grid { grid-template-columns: repeat(var(--bme-academic-detail-columns,3),minmax(0,1fr)); }
.bme-academic-detail-image,
.bme-academic-details .bme-academic-career-image {
  display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover;
  border-radius: 11px; margin: 0 0 15px; background: #e7f0f4;
}
.bme-academic-detail-card .bme-pb-card-bullets,
.bme-academic-detail-card ul {
  display: grid; gap: 8px; margin: 10px 0 0; padding: 0 0 0 18px;
  list-style: disc; color: var(--bme-muted,#60758a); font-size: 13px; line-height: 1.7;
}
.bme-academic-detail-card .bme-pb-card-bullets li,
.bme-academic-detail-card ul li { margin: 0; padding-left: 2px; }
.bme-academic-detail-card .bme-pb-card-bullets li::marker,
.bme-academic-detail-card ul li::marker { color: var(--bme-accent,#20b5a6); }
.bme-pb-rich-list { display: grid; gap: 8px; margin: 12px 0; padding-left: 22px; line-height: 1.75; }
.bme-pb-rich-list li { padding-left: 3px; }
.bme-pb-rich-list li::marker { color: var(--bme-accent,#20b5a6); font-weight: 800; }
html[data-bme-theme="dark"] .bme-pb-native-card-edit-note { color:#d8f3ec!important;background:#102d35!important;border-color:#285d5c!important; }
html[data-bme-theme="dark"] .bme-academic-details.bme-pb-bg-tint { background:#15263a; }
html[data-bme-theme="dark"] .bme-academic-details.bme-pb-bg-teal { background:#123438; }
@media(max-width:900px) { .bme-academic-details .bme-academic-detail-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
  .bme-academic-details .bme-academic-detail-grid { grid-template-columns:minmax(0,1fr); }
  .bme-academic-details.bme-pb-bg-tint,.bme-academic-details.bme-pb-bg-teal,.bme-academic-details.bme-pb-bg-dark { padding:18px; }
}

/* BME ITERA v2.5.23 — native Information Main cards and Program Identity */
.bme-academic-details {
  box-sizing: border-box;
  margin: clamp(28px, 3.8vw, 46px) 0 clamp(34px, 4.5vw, 54px);
}
.bme-academic-details .bme-academic-section-head {
  margin: 0 0 clamp(18px, 2.4vw, 26px);
}
.bme-academic-details .bme-academic-section-head h2 {
  margin: 0 0 8px;
  font-size: clamp(23px, 2.8vw, 32px);
  line-height: 1.2;
  letter-spacing: -.035em;
}
.bme-academic-details .bme-academic-section-head p {
  max-width: 760px;
  margin: 0;
  font-size: 13px;
  line-height: 1.75;
}
.bme-academic-details .bme-academic-detail-grid {
  display: grid;
  grid-template-columns: repeat(var(--bme-academic-detail-columns, 3), minmax(0, 1fr));
  gap: clamp(13px, 1.6vw, 18px);
  align-items: stretch;
}
.bme-academic-details .bme-academic-detail-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  min-height: 172px;
  box-sizing: border-box;
  padding: clamp(19px, 2vw, 24px);
  border: 1px solid #dce7ee;
  border-radius: 17px;
  color: #344b62;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15, 43, 66, .045);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.bme-academic-details .bme-academic-detail-card:hover {
  transform: translateY(-3px);
  border-color: rgba(32,181,166,.5);
  box-shadow: 0 15px 32px rgba(15,43,66,.085);
}
.bme-academic-details .bme-academic-detail-card h3 {
  margin: 0 0 9px;
  color: #173653;
  font-size: clamp(15px, 1.25vw, 17px);
  font-weight: 850;
  line-height: 1.4;
  letter-spacing: -.015em;
}
.bme-academic-details .bme-academic-detail-card p {
  margin: 0;
  color: #60758a;
  font-size: 12px;
  line-height: 1.75;
}
.bme-academic-details .bme-academic-detail-card .bme-pb-card-bullets,
.bme-academic-details .bme-academic-detail-card > ul {
  margin: 2px 0 0;
  padding-left: 18px;
  color: #526a80;
  font-size: 12px;
  line-height: 1.75;
}
.bme-academic-details .bme-academic-detail-card li { padding-left: 2px; }
.bme-academic-details .bme-academic-detail-card li::marker { color: #10a99b; }
.bme-academic-details .bme-academic-detail-card .bme-academic-card-index {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  margin: 0 0 17px;
  border-radius: 10px;
  color: #087e77;
  background: #e4f8f4;
  font-size: 11px;
  font-weight: 900;
}
/* A dark section keeps its heading white but its white cards use dark text. */
.bme-academic-details.bme-pb-bg-dark .bme-academic-section-head h2,
.bme-academic-details.bme-pb-bg-dark .bme-academic-section-head p { color: #edf7fb !important; }
.bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card {
  border-color: rgba(224,238,245,.88);
  color: #344b62 !important;
  background: #fff;
}
.bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card h3 { color: #173653 !important; }
.bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card p,
.bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card ul,
.bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card li { color: #60758a !important; }
.bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card li::marker { color: #0e9f96; }

/* Dynamic VMTS records are called from Program Identity using published BME Academic data. */
.bme-program-identity-module { margin: clamp(30px, 4vw, 48px) 0; }
.bme-program-identity-module .bme-curriculum-data { margin: 0; }
.bme-program-identity-module .bme-data-heading { margin-bottom: 18px; }
.bme-program-identity-module .bme-program-info { gap: 12px; }
.bme-program-identity-module .bme-program-info > article {
  padding: clamp(17px, 2.2vw, 23px);
  border: 1px solid #dce7ee;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15,43,66,.045);
}
.bme-program-identity-module .bme-program-info > article h3 {
  margin: 0 0 8px;
  color: #173653;
  font-size: 16px;
  font-weight: 850;
}
.bme-program-identity-module .bme-program-info > article p {
  margin: 0;
  color: #526a80;
  font-size: 13px;
  line-height: 1.8;
}
.bme-program-identity-empty {
  margin: clamp(28px, 4vw, 44px) 0;
  padding: clamp(20px, 3vw, 30px);
  border: 1px dashed #b9d4dc;
  border-radius: 18px;
  background: #f4fafb;
  color: #536a7e;
}
.bme-program-identity-empty h2 { margin: 0 0 10px; color: #173653; font-size: clamp(22px,2.5vw,29px); }
.bme-program-identity-empty > p:not(.bme-template-kicker) { max-width: 760px; margin: 0; font-size: 13px; line-height: 1.75; }
.bme-program-identity-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 17px; }
.bme-program-identity-actions .bme-button { padding: 10px 15px; border-radius: 10px; font-size: 12px; }
html[data-bme-theme="dark"] .bme-academic-details .bme-academic-detail-card,
html[data-bme-theme="dark"] .bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card {
  border-color: #2d455b;
  color: #cfdae6 !important;
  background: #13263a;
}
html[data-bme-theme="dark"] .bme-academic-details .bme-academic-detail-card h3,
html[data-bme-theme="dark"] .bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card h3 { color: #e5eef7 !important; }
html[data-bme-theme="dark"] .bme-academic-details .bme-academic-detail-card p,
html[data-bme-theme="dark"] .bme-academic-details .bme-academic-detail-card ul,
html[data-bme-theme="dark"] .bme-academic-details .bme-academic-detail-card li,
html[data-bme-theme="dark"] .bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card p,
html[data-bme-theme="dark"] .bme-academic-details.bme-pb-bg-dark .bme-academic-detail-card ul { color: #b5c5d4 !important; }
html[data-bme-theme="dark"] .bme-program-identity-module .bme-program-info > article,
html[data-bme-theme="dark"] .bme-program-identity-empty { border-color: #2d455b; background: #13263a; }
html[data-bme-theme="dark"] .bme-program-identity-module .bme-program-info > article h3,
html[data-bme-theme="dark"] .bme-program-identity-empty h2 { color: #e5eef7; }
html[data-bme-theme="dark"] .bme-program-identity-module .bme-program-info > article p,
html[data-bme-theme="dark"] .bme-program-identity-empty > p:not(.bme-template-kicker) { color: #b5c5d4; }
@media (max-width: 900px) {
  .bme-academic-details .bme-academic-detail-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .bme-academic-details .bme-academic-detail-grid { grid-template-columns: minmax(0,1fr); }
  .bme-academic-details .bme-academic-detail-card { min-height: 0; padding: 19px; }
}
@media (prefers-reduced-motion: reduce) {
  .bme-academic-details .bme-academic-detail-card { transition: none; }
  .bme-academic-details .bme-academic-detail-card:hover { transform: none; }
}


/* v2.5.24 — Page Builder background variants and semantic list section */
.bme-pb-section.bme-pb-bg-plain { background: #fff !important; }
.bme-pb-section.bme-pb-bg-transparent { background: transparent !important; }
.bme-pb-section.bme-pb-bg-transparent > .bme-pb-section-inner { background: transparent !important; }
.bme-academic-details.bme-pb-bg-plain { background: #fff !important; }
.bme-academic-details.bme-pb-bg-transparent { background: transparent !important; }
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-plain,
html[data-bme-theme="dark"] .bme-academic-details.bme-pb-bg-plain { background: #fff !important; }
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-transparent,
html[data-bme-theme="dark"] .bme-academic-details.bme-pb-bg-transparent { background: transparent !important; }
.bme-pb-list-items { display: grid; grid-template-columns: minmax(0,1fr); gap: 12px; margin: 0; padding: 0; list-style: none; }
.bme-pb-list-item { min-width: 0; margin: 0; padding: 0; list-style: none; }
.bme-pb-list-card { display: flex; flex-direction: row; align-items: flex-start; gap: 16px; min-width: 0; }
.bme-pb-list-card .bme-pb-card-copy { flex: 1; min-width: 0; }
.bme-pb-list-card .bme-pb-card-index { flex: 0 0 auto; }
.bme-pb-bg-dark .bme-pb-list-card { background: #fff; color: #344b62; }
.bme-pb-bg-dark .bme-pb-list-card h3 { color: #173653 !important; }
.bme-pb-bg-dark .bme-pb-list-card p,
.bme-pb-bg-dark .bme-pb-list-card ul { color: #60758a; }
html[data-bme-theme="dark"] .bme-pb-bg-dark .bme-pb-list-card { background: #13263a; color: #cfdae6; }
html[data-bme-theme="dark"] .bme-pb-bg-dark .bme-pb-list-card h3 { color: #e5eef7 !important; }
html[data-bme-theme="dark"] .bme-pb-bg-dark .bme-pb-list-card p,
html[data-bme-theme="dark"] .bme-pb-bg-dark .bme-pb-list-card ul { color: #b5c5d4; }
@media(max-width:620px) { .bme-pb-list-card { flex-direction: column; gap: 10px; } }


/* BME ITERA v2.5.25 — universal Page Builder section surfaces */
.bme-pb-native-additions { display: block; width: 100%; }
.bme-pb-native-additions > .bme-pb-section,
.bme-page-builder-main .bme-pb-section {
  width: 100%;
  box-sizing: border-box;
  margin-block: 0;
  padding-block: clamp(24px, 3.2vw, 40px);
}
.bme-pb-section > .bme-pb-section-inner {
  width: min(100% - 40px, 1200px);
  max-width: 1200px;
  margin-inline: auto;
}
.bme-pb-section.bme-pb-bg-plain { background: #fff !important; }
.bme-pb-section.bme-pb-bg-transparent { background: transparent !important; }
.bme-pb-section.bme-pb-bg-tint { background: #f1f6fa !important; }
.bme-pb-section.bme-pb-bg-teal { background: #eaf8f5 !important; }
.bme-pb-section.bme-pb-bg-dark { color: #edf7fb; background: linear-gradient(130deg,#0b223a,#104c58) !important; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-section-heading h2,
.bme-pb-section.bme-pb-bg-dark .bme-pb-section-heading > p,
.bme-pb-section.bme-pb-bg-dark .bme-pb-rich-text,
.bme-pb-section.bme-pb-bg-dark .bme-pb-split-copy,
.bme-pb-section.bme-pb-bg-dark .bme-pb-cta-copy { color: #edf7fb !important; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-card,
.bme-pb-section.bme-pb-bg-dark .bme-pb-contact-form-panel,
.bme-pb-section.bme-pb-bg-dark .bme-pb-contact-details { color: #344b62; background: #fff; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-card h3,
.bme-pb-section.bme-pb-bg-dark .bme-pb-contact-details h3 { color: #173653 !important; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-card p,
.bme-pb-section.bme-pb-bg-dark .bme-pb-card ul,
.bme-pb-section.bme-pb-bg-dark .bme-pb-contact-details p { color: #60758a !important; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-cta { border-color: rgba(226,244,249,.3); background: rgba(255,255,255,.06); }
.bme-pb-section.bme-pb-bg-transparent > .bme-pb-section-inner { background: transparent !important; }
.bme-pb-section-heading { max-width: 860px; margin: 0 0 clamp(18px,2.4vw,28px); }
.bme-pb-section-heading h2 { margin: 0; }
.bme-pb-section-heading > p:last-child { margin: 8px 0 0; }
.bme-pb-section.bme-pb-align-center .bme-pb-section-heading { margin-inline: auto; text-align: center; }
.bme-pb-section.bme-pb-align-center .bme-pb-rich-text { text-align: center; }
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-tint { background: #15263a !important; }
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-teal { background: #123438 !important; }
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-dark { background: linear-gradient(130deg,#08182a,#0d3944) !important; }
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-plain { background: #fff !important; }
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-plain .bme-pb-section-heading h2,
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-plain .bme-pb-section-heading > p,
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-plain .bme-pb-rich-text,
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-plain .bme-pb-split-copy { color: #173653; }
.bme-pb-list-items { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.bme-pb-list-item { min-width: 0; margin: 0; padding: 0; list-style: none; }
.bme-pb-list-card { display: flex; flex-direction: row; align-items: flex-start; gap: 16px; min-width: 0; }
.bme-pb-list-card .bme-pb-card-copy { flex: 1; min-width: 0; }
.bme-pb-list-card .bme-pb-card-index { flex: 0 0 auto; }
.bme-pb-rich-list { display: grid; gap: 8px; margin: 12px 0; padding-left: 22px; list-style: disc; line-height: 1.75; }
.bme-pb-rich-list li { padding-left: 3px; }
.bme-pb-rich-list li::marker { color: var(--bme-accent,#20b5a6); font-weight: 800; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-rich-list li::marker { color: #6ee7d5; }
@media(max-width:640px) {
  .bme-pb-native-additions > .bme-pb-section,
  .bme-page-builder-main .bme-pb-section { padding-block: 22px; }
  .bme-pb-section > .bme-pb-section-inner { width: min(100% - 32px, 1200px); }
  .bme-pb-list-card { flex-direction: column; gap: 10px; }
}
@media(prefers-reduced-motion:reduce) {
  .bme-pb-card,.bme-pb-list-card,.bme-pb-cta { transition: none !important; }
}


/* v2.5.25 follow-up: all section type renderers inherit the same surface system. */
.bme-pb-section-heading h2 { color: var(--bme-ink,#173653); }
.bme-pb-section-heading > p { color: var(--bme-muted,#64748b); }
.bme-pb-section.bme-pb-bg-dark .bme-pb-section-heading h2,
.bme-pb-section.bme-pb-bg-dark .bme-pb-section-heading > p { color: #edf7fb !important; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-rich-text a,
.bme-pb-section.bme-pb-bg-dark .bme-pb-split-copy a { color: #8dece0; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-cta { color: #edf7fb; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-cta .bme-button { color: #fff; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-contact-details,
.bme-pb-section.bme-pb-bg-dark .bme-pb-contact-form-panel {
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 15px;
  padding: 18px;
  color: #173653;
  background: #fff;
}
.bme-pb-divider-section { min-height: 32px; }
.bme-pb-divider-section .bme-pb-section-inner { padding-block: 0; }
.bme-pb-divider { width: 100%; height: 1px; border: 0; background: var(--bme-line,#dce6ed); }
.bme-pb-section.bme-pb-bg-dark .bme-pb-divider { background: rgba(230,245,250,.25); }
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-dark .bme-pb-contact-details,
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-dark .bme-pb-contact-form-panel {
  border-color: #31465a;
  color: #dce7f1;
  background: #13263a;
}
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-dark .bme-pb-contact-details h3,
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-dark .bme-pb-contact-details strong { color: #e7f0f7; }
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-dark .bme-pb-contact-details p,
html[data-bme-theme="dark"] .bme-pb-section.bme-pb-bg-dark .bme-pb-contact-details a { color: #b6c9d7; }

.bme-pb-list-intro{margin:10px 0 2px;color:inherit;font-weight:700;}


/* BME ITERA v2.5.26 — fully styled Page Builder blocks on EVERY page template.
   The base styles used to be scoped to .bme-page-builder-main only, which left
   additions rendered by academic templates looking like unstyled plain text. */
.bme-pb-native-additions > .bme-pb-section,
.bme-page-builder-main .bme-pb-section { isolation: isolate; }
.bme-pb-section .bme-pb-cards-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  align-items: stretch;
  gap: clamp(12px,1.5vw,18px);
  min-width: 0;
}
.bme-pb-section .bme-pb-cards-grid.bme-pb-cols-1 { grid-template-columns: minmax(0,1fr); }
.bme-pb-section .bme-pb-cards-grid.bme-pb-cols-2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.bme-pb-section .bme-pb-cards-grid.bme-pb-cols-3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.bme-pb-section .bme-pb-cards-grid.bme-pb-cols-4 { grid-template-columns: repeat(4,minmax(0,1fr)); }
.bme-pb-section .bme-pb-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  overflow: hidden;
  border: 1px solid #d8e5ed;
  border-radius: 16px;
  color: #344b62;
  background: #fff;
  box-shadow: 0 8px 24px rgba(16,43,68,.055);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.bme-pb-section .bme-pb-card:hover {
  transform: translateY(-3px);
  border-color: rgba(32,181,166,.45);
  box-shadow: 0 15px 30px rgba(16,43,68,.09);
}
.bme-pb-section .bme-pb-card-image {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #e7f0f5;
}
.bme-pb-section .bme-pb-card-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bme-pb-section .bme-pb-card-copy {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding: clamp(16px,2vw,22px);
}
.bme-pb-section .bme-pb-card-index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  min-height: 31px;
  margin-bottom: 13px;
  padding: 0 9px;
  border-radius: 9px;
  color: #087b72;
  background: #e3f8f4;
  font-size: 10px;
  font-weight: 850;
}
.bme-pb-section .bme-pb-card h3 {
  margin: 0 0 8px;
  color: #203d58;
  font-size: 16px;
  font-weight: 850;
  line-height: 1.4;
}
.bme-pb-section .bme-pb-card p,
.bme-pb-section .bme-pb-card ul {
  margin: 0;
  color: #61758a;
  font-size: 12px;
  line-height: 1.75;
}
.bme-pb-section .bme-pb-card-bullets {
  display: grid;
  gap: 6px;
  margin-top: 5px;
  padding-left: 18px;
  list-style: disc;
}
.bme-pb-section .bme-pb-card-bullets li { padding-left: 2px; }
.bme-pb-section .bme-pb-card-bullets li::marker { color: #0fa99b; }
.bme-pb-section .bme-pb-list-intro { margin: 0 0 7px !important; }
.bme-pb-section .bme-pb-card-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding-top: 15px;
  color: #08796f;
  font-size: 11px;
  font-weight: 850;
  text-decoration: none;
}
.bme-pb-section .bme-pb-card-link:hover { color: #0b4f62; }
.bme-pb-section .bme-pb-list-items {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bme-pb-section .bme-pb-list-item { min-width: 0; margin: 0; padding: 0; list-style: none; }
.bme-pb-section .bme-pb-list-card {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 15px;
  height: auto;
  min-height: 92px;
  padding: 0;
}
.bme-pb-section .bme-pb-list-card .bme-pb-card-copy { padding: 17px 20px; }
.bme-pb-section .bme-pb-list-card .bme-pb-card-index { margin: 17px 0 0 17px; }
.bme-pb-section .bme-pb-split {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  align-items: center;
  gap: clamp(20px,3vw,34px);
}
.bme-pb-section .bme-pb-split.bme-pb-image-right > .bme-pb-split-media { order: 2; }
.bme-pb-section .bme-pb-split-media { min-width: 0; overflow: hidden; border-radius: 16px; }
.bme-pb-section .bme-pb-split-media img { display: block; width: 100%; max-height: 440px; object-fit: cover; }
.bme-pb-section .bme-pb-split-copy,
.bme-pb-section .bme-pb-rich-text { min-width: 0; color: #405b73; font-size: 14px; line-height: 1.85; }
.bme-pb-section .bme-pb-split-copy > :first-child,
.bme-pb-section .bme-pb-rich-text > :first-child { margin-top: 0; }
.bme-pb-section .bme-pb-split-copy > :last-child,
.bme-pb-section .bme-pb-rich-text > :last-child { margin-bottom: 0; }
.bme-pb-section .bme-pb-rich-text p { margin: 0 0 14px; }
.bme-pb-section .bme-pb-rich-list { display: grid; gap: 8px; margin: 10px 0 14px; padding-left: 22px; list-style: disc; line-height: 1.75; }
.bme-pb-section .bme-pb-rich-list li { padding-left: 3px; }
.bme-pb-section .bme-pb-rich-list li::marker { color: #0fa99b; }
.bme-pb-section .bme-pb-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  min-width: 0;
  padding: clamp(20px,3vw,32px);
  border: 1px solid #d8e5ed;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(16,43,68,.06);
}
.bme-pb-section .bme-pb-cta-copy { flex: 1; min-width: 0; color: #405b73; font-size: 14px; line-height: 1.75; }
.bme-pb-section .bme-pb-cta-copy > :first-child { margin-top: 0; }
.bme-pb-section .bme-pb-cta-copy > :last-child { margin-bottom: 0; }
.bme-pb-section .bme-pb-contact-layout { display: grid; grid-template-columns: minmax(220px,.8fr) minmax(0,1.2fr); gap: 20px; align-items: stretch; }
.bme-pb-section .bme-pb-contact-details,
.bme-pb-section .bme-pb-contact-form-panel {
  min-width: 0;
  padding: clamp(18px,2.6vw,26px);
  border: 1px solid #d8e5ed;
  border-radius: 16px;
  color: #405b73;
  background: #fff;
  box-shadow: 0 8px 22px rgba(16,43,68,.045);
}
.bme-pb-section .bme-pb-contact-details h3 { margin: 0 0 13px; color: #173653; font-size: 18px; }
.bme-pb-section .bme-pb-contact-details p { margin: 0 0 12px; font-size: 12px; line-height: 1.7; }
.bme-pb-section .bme-pb-contact-form-panel form { display: grid; gap: 12px; }
.bme-pb-section .bme-pb-contact-form-panel label { display: grid; gap: 6px; color: #29465e; font-size: 12px; font-weight: 750; }
.bme-pb-section .bme-pb-contact-form-panel input,
.bme-pb-section .bme-pb-contact-form-panel textarea {
  width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid #d4e1e9; border-radius: 10px;
  padding: 10px 12px; color: #173653; background: #fff; font: inherit; font-weight: 400;
}
.bme-pb-section .bme-pb-post-meta { margin-bottom: 8px !important; color: #75879a !important; font-size: 10px !important; }
.bme-pb-section .bme-pb-empty { padding: 22px; border: 1px dashed #bdceda; border-radius: 14px; color: #61758a; background: rgba(255,255,255,.72); }
.bme-pb-section.bme-pb-bg-dark .bme-pb-list-card { color: #344b62; background: #fff; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-split-copy,
.bme-pb-section.bme-pb-bg-dark .bme-pb-rich-text,
.bme-pb-section.bme-pb-bg-dark .bme-pb-cta-copy { color: #edf7fb; }
.bme-pb-section.bme-pb-bg-dark .bme-pb-rich-list li::marker { color: #6ee7d5; }
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-card,
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-contact-details,
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-contact-form-panel {
  border-color: #30475c; color: #dce7f1; background: #14283d;
}
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-card h3,
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-contact-details h3 { color: #e6f0f8; }
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-card p,
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-card ul,
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-contact-details p { color: #b8c9d8; }
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-card-index { color: #9bf0df; background: #164744; }
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-contact-form-panel label { color: #dce7f1; }
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-contact-form-panel input,
html[data-bme-theme="dark"] .bme-pb-section .bme-pb-contact-form-panel textarea { border-color: #3a5065; color: #e5eef7; background: #0f2032; }
@media (max-width: 900px) {
  .bme-pb-section .bme-pb-cards-grid.bme-pb-cols-3,
  .bme-pb-section .bme-pb-cards-grid.bme-pb-cols-4 { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 640px) {
  .bme-pb-section .bme-pb-cards-grid,
  .bme-pb-section .bme-pb-cards-grid.bme-pb-cols-2,
  .bme-pb-section .bme-pb-cards-grid.bme-pb-cols-3,
  .bme-pb-section .bme-pb-cards-grid.bme-pb-cols-4 { grid-template-columns: minmax(0,1fr); }
  .bme-pb-section .bme-pb-split,
  .bme-pb-section .bme-pb-contact-layout { grid-template-columns: minmax(0,1fr); }
  .bme-pb-section .bme-pb-split.bme-pb-image-right > .bme-pb-split-media { order: 0; }
  .bme-pb-section .bme-pb-cta { align-items: stretch; flex-direction: column; }
  .bme-pb-section .bme-pb-list-card { gap: 9px; }
  .bme-pb-section .bme-pb-list-card .bme-pb-card-copy { padding: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .bme-pb-section .bme-pb-card,
  .bme-pb-section .bme-pb-card:hover { transition: none !important; transform: none !important; }
}
