
:root{
  --ink:#101828;
  --muted:#667085;
  --line:#dbe6f6;
  --blue:#2563eb;
  --purple:#7c3aed;
  --teal:#14b8a6;
  --bg:#edf4ff;
  --card:rgba(255,255,255,.82);
  --shadow:0 24px 80px rgba(29, 78, 216, .14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at 5% 12%, rgba(20,184,166,.18), transparent 26%),
    radial-gradient(circle at 82% 10%, rgba(124,58,237,.16), transparent 24%),
    linear-gradient(135deg,#f7fbff 0%,#edf4ff 55%,#f3efff 100%);
  min-height:100vh;
}
button,a{font:inherit}
button{cursor:pointer}
.ambient{position:fixed;inset:0;pointer-events:none;z-index:-1;overflow:hidden}
.orb{position:absolute;border-radius:999px;filter:blur(12px);opacity:.45}
.o1{width:340px;height:340px;background:#bfdbfe;left:-120px;top:130px}
.o2{width:420px;height:420px;background:#ddd6fe;right:-160px;top:80px}
.o3{width:280px;height:280px;background:#ccfbf1;left:48%;bottom:-80px}
.symbol{position:absolute;color:#1d4ed8;opacity:.055;font-size:78px}
.s1{left:7%;top:36%}.s2{right:9%;top:24%}.s3{left:62%;top:72%}.s4{right:16%;bottom:12%}

.site-header{
  width:min(1440px,calc(100% - 42px));
  margin:22px auto 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:14px 18px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(219,230,246,.9);
  border-radius:24px;
  backdrop-filter:blur(18px);
  box-shadow:0 12px 36px rgba(15,23,42,.06);
  position:sticky;
  top:14px;
  z-index:10;
}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.brand-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--blue),var(--purple));display:grid;place-items:center;position:relative;overflow:hidden}
.brand-mark span:first-child{width:22px;height:22px;background:white;border-radius:50% 50% 8px 50%;transform:rotate(-35deg);position:absolute;left:8px;top:8px;opacity:.95}
.brand-mark span:last-child{width:20px;height:20px;background:#ccfbf1;border-radius:50% 50% 50% 8px;transform:rotate(-35deg);position:absolute;right:8px;bottom:8px;opacity:.95}

.domain-logo-mark{background:transparent;box-shadow:0 10px 24px rgba(15,23,42,.12)}
.domain-logo-mark img{width:42px;height:42px;border-radius:14px;object-fit:cover;display:block}
.domain-logo-mark span{display:none}

.brand small{display:block;color:var(--muted);font-weight:750;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
nav.primary-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.nav-group{position:relative}
.nav-parent{
  border:1px solid transparent;
  background:transparent;
  color:#344054;
  text-decoration:none;
  font-weight:850;
  border-radius:999px;
  padding:10px 12px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
}
.nav-parent::after{content:"▾";font-size:10px;color:#667085}
.nav-link-direct::after{content:""}
.nav-parent:hover,.nav-group:focus-within .nav-parent,.nav-group:hover .nav-parent{background:#fff;border-color:var(--line);box-shadow:0 10px 22px rgba(15,23,42,.06)}
.nav-future{background:linear-gradient(135deg,#a855f7,#14b8a6);color:white;border:0;box-shadow:0 12px 24px rgba(20,184,166,.18)}
.nav-future::after{color:white}
.nav-dropdown{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  min-width:230px;
  padding:10px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(219,230,246,.95);
  border-radius:18px;
  box-shadow:0 20px 50px rgba(15,23,42,.14);
  backdrop-filter:blur(18px);
  display:none;
  z-index:50;
}
.nav-dropdown-right{left:auto;right:0}
.nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown{display:grid;gap:4px}
.nav-dropdown a,.nav-dropdown button{
  width:100%;
  text-align:left;
  border:0;
  background:transparent;
  color:#344054;
  text-decoration:none;
  font-weight:780;
  border-radius:12px;
  padding:10px 11px;
}
.nav-dropdown a:hover,.nav-dropdown button:hover{background:#eef4ff;color:#1d4ed8}
.nav-login,.contact,.secondary,.ghost{
  border:1px solid var(--line);
  background:#fff;
  color:#1d2939;
  border-radius:999px;
  padding:10px 16px;
  font-weight:850;
  text-decoration:none;
}
.contact{background:linear-gradient(135deg,#a855f7,#14b8a6);color:white;border:0}

main{width:min(1440px,calc(100% - 42px));margin:28px auto 40px}
.hero{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:34px;
  align-items:center;
  padding:54px;
  border-radius:38px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(219,230,246,.92);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.eyebrow{margin:0 0 12px;color:#2563eb;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:950}
h1{font-size:clamp(46px,6vw,92px);line-height:.92;margin:0 0 20px;letter-spacing:-.06em}
h2{font-size:clamp(30px,3vw,52px);line-height:1;margin:0 0 16px;letter-spacing:-.04em}
h3{font-size:30px;line-height:1.02;margin:10px 0 10px;letter-spacing:-.035em}
.lead{font-size:20px;line-height:1.55;color:#475467;max-width:760px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.primary,.link-button{
  border:0;
  color:white;
  background:linear-gradient(135deg,var(--blue),var(--purple));
  box-shadow:0 18px 38px rgba(37,99,235,.24);
  border-radius:999px;
  padding:13px 20px;
  font-weight:950;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.ghost{display:inline-flex;align-items:center}
.trust-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.trust-strip span{background:#eef4ff;border:1px solid #dbe6f6;color:#31507a;border-radius:999px;padding:9px 13px;font-size:13px;font-weight:850}
.hero-visual img{width:100%;display:block;filter:drop-shadow(0 24px 50px rgba(37,99,235,.18))}
.hero-logo-lockup{display:inline-flex;align-items:center;gap:12px;margin:0 0 16px;padding:10px 14px;border:1px solid rgba(219,230,246,.95);border-radius:999px;background:rgba(255,255,255,.78);box-shadow:0 12px 30px rgba(15,23,42,.08)}
.hero-logo-lockup img{width:46px;height:46px;border-radius:16px;object-fit:cover;display:block;box-shadow:0 8px 22px rgba(15,23,42,.12)}
.hero-logo-lockup span{font-weight:950;color:#1d2939;letter-spacing:.01em}
@media (max-width:640px){.hero-logo-lockup{border-radius:22px}.hero-logo-lockup img{width:40px;height:40px}.hero-logo-lockup span{font-size:14px}}


.login-panel,.dashboard,.section-intro,.architecture{
  margin-top:22px;
  padding:32px;
  border-radius:30px;
  background:rgba(255,255,255,.78);
  border:1px solid var(--line);
  box-shadow:0 16px 52px rgba(15,23,42,.08);
}
.login-panel{display:grid;grid-template-columns:1fr 1.1fr;gap:24px;align-items:end}
.login-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}
label{font-weight:900;color:#344054;font-size:13px;display:grid;gap:8px}
input{width:100%;border:1px solid #cfdcf0;border-radius:16px;background:white;padding:13px 14px;font:inherit;color:var(--ink)}
.dashboard{display:flex;align-items:center;justify-content:space-between;gap:22px}
.muted{color:var(--muted);line-height:1.55}

.section-intro{text-align:center;max-width:900px;margin:46px auto 24px}
.section-intro p:last-child{font-size:18px;color:#667085;line-height:1.55}

.course-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
}
.course-card{
  min-height:390px;
  position:relative;
  border-radius:34px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 22px 60px rgba(15,23,42,.14);
  isolation:isolate;
}
.course-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.course-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,.06),rgba(15,23,42,.16) 40%,rgba(124,58,237,.72));z-index:-1}
.course-content{height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;color:white}
.status{align-self:flex-start;background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(12px);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.course-card p{line-height:1.45;color:rgba(255,255,255,.88);font-weight:620}
.course-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.course-actions button{border:0;border-radius:999px;padding:10px 13px;font-weight:950}
.open-course{background:white;color:#172033}
.request-course{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.36)!important;color:white}
.course-card[data-status*="connected"] .status{background:#dcfce7;color:#14532d}
.course-card[data-status*="active"] .status{background:#dbeafe;color:#1e3a8a}
.course-card[data-status*="coming"] .status{background:#fef3c7;color:#78350f}

.roadmap{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;margin-top:28px}
.roadmap-card{background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:32px;padding:32px;box-shadow:0 16px 52px rgba(15,23,42,.08)}
.roadmap-card ol{padding-left:22px;color:#475467;line-height:1.8}
.roadmap-card.accent{background:linear-gradient(135deg,rgba(37,99,235,.95),rgba(124,58,237,.92));color:white}
.roadmap-card.accent .eyebrow,.roadmap-card.accent p{color:rgba(255,255,255,.86)}
.arch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.arch-grid div{border:1px solid #dbe6f6;border-radius:18px;padding:18px;background:#fff}
.arch-grid b{display:block;font-size:18px;margin-bottom:7px}
.arch-grid span{color:#667085;line-height:1.4}

.modal{position:fixed;inset:0;background:rgba(15,23,42,.42);display:grid;place-items:center;padding:24px;z-index:50}
.modal-card{width:min(680px,100%);background:white;border-radius:30px;padding:32px;position:relative;box-shadow:0 24px 90px rgba(15,23,42,.28)}
.modal-close{position:absolute;right:18px;top:16px;border:0;background:#f2f4f7;border-radius:999px;width:38px;height:38px;font-size:24px}
.modal-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.fineprint{font-size:13px;color:#667085;margin-top:18px}
.hidden{display:none!important}
footer{width:min(1440px,calc(100% - 42px));margin:0 auto 40px;padding:24px;color:#667085;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

@media(max-width:1180px){.course-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.login-form{grid-template-columns:1fr}.login-panel{grid-template-columns:1fr}.roadmap{grid-template-columns:1fr}.arch-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.site-header{position:relative;top:0;align-items:flex-start}.site-header,nav.primary-nav{flex-direction:column;align-items:stretch;width:100%}.nav-group,.nav-parent,.nav-link-direct{width:100%}.nav-dropdown{position:static;box-shadow:none;margin:4px 0 8px;min-width:100%}.nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown{display:grid}main,.site-header,footer{width:calc(100% - 24px)}.hero{padding:28px}.course-grid{grid-template-columns:1fr}.arch-grid{grid-template-columns:1fr}.dashboard{flex-direction:column;align-items:flex-start}h1{font-size:44px}}


/* v1.1 polish: course cards readability and no-title-overlap cleanup */
.course-grid{
  grid-template-columns:repeat(5,1fr);
  gap:18px;
}
.course-card{
  min-height:430px;
  border-radius:30px;
}
.course-overlay{
  background:
    linear-gradient(180deg,rgba(15,23,42,.05) 0%,rgba(15,23,42,.10) 30%,rgba(15,23,42,.72) 69%,rgba(15,23,42,.88) 100%),
    linear-gradient(135deg,rgba(37,99,235,.10),rgba(124,58,237,.26));
}
.course-content{
  padding:22px;
  justify-content:flex-end;
}
.course-content h3{
  font-size:clamp(22px,1.75vw,31px);
  line-height:1.02;
  text-shadow:0 5px 20px rgba(0,0,0,.25);
}
.course-card p{
  font-size:14px;
  line-height:1.43;
  max-height:104px;
  overflow:hidden;
}
.status{
  font-size:10px;
  padding:7px 10px;
}
.course-actions{
  gap:8px;
}
.course-actions button{
  font-size:13px;
  padding:9px 11px;
}
.hero{
  background:
    radial-gradient(circle at 72% 24%,rgba(124,58,237,.10),transparent 34%),
    rgba(255,255,255,.76);
}
.section-intro{
  margin-top:38px;
}
@media(max-width:1350px){.course-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1080px){.course-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.course-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.course-grid{grid-template-columns:1fr}.course-card{min-height:360px}}


/* v1.2 layout fix: keep nav from visually cutting into the program intro */
.site-header{
  position:relative !important;
  top:auto !important;
  margin-bottom:26px !important;
}
main{
  margin-top:0 !important;
}
.hero{
  margin-top:0;
}
.section-intro{
  margin-top:42px !important;
  position:relative;
  z-index:1;
}
.course-grid{
  position:relative;
  z-index:1;
}
.hero-visual img text,
.hero-visual text{
  letter-spacing:.18em;
}
@media(max-width:720px){
  .site-header{margin-bottom:18px !important}
}


/* v1.3 course identity + beautiful medical backdrop */
body{
  background-image:
    linear-gradient(rgba(245,250,255,.78),rgba(245,250,255,.78)),
    url("assets/homeport-medical-backdrop.svg") !important;
  background-size:cover !important;
  background-attachment:fixed !important;
  background-position:center !important;
}
.hero,.login-panel,.dashboard,.section-intro,.architecture,.roadmap-card{
  background:rgba(255,255,255,.70) !important;
  backdrop-filter:blur(22px) saturate(1.25);
  border:1px solid rgba(255,255,255,.72);
}
.roadmap-card.accent{
  background:linear-gradient(135deg,rgba(37,99,235,.92),rgba(124,58,237,.90)) !important;
}
.course-card{
  min-height:455px;
}
.course-content{
  position:relative;
}
.course-logo-wrap{
  width:86px;
  height:86px;
  border-radius:26px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.22);
  border:1px solid rgba(255,255,255,.35);
  backdrop-filter:blur(14px);
  box-shadow:0 18px 38px rgba(15,23,42,.22);
  margin-bottom:12px;
}
.course-logo{
  width:72px;
  height:72px;
  object-fit:contain;
  border-radius:20px;
  display:block;
}
.course-content h3{
  margin-top:8px;
}
.course-card[data-slug="radiochemistry"] h3,
.course-card[data-slug="educational-studies"] h3{
  font-size:clamp(20px,1.55vw,28px);
}
.course-card[data-slug="allied-health-professional"] h3,
.course-card[data-slug="anatomy-physiology"] h3{
  font-size:clamp(20px,1.6vw,29px);
}
.trust-strip span{
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(16px);
}
@media(max-width:560px){
  .course-logo-wrap{width:76px;height:76px;border-radius:22px}
  .course-logo{width:64px;height:64px}
}


/* v1.4 highly detailed course doors */
.hero,.login-panel,.dashboard,.section-intro,.architecture,.roadmap-card{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    0 24px 80px rgba(37,99,235,.13),
    0 1px 0 rgba(255,255,255,.9) !important;
}
.hero{
  border:1px solid rgba(255,255,255,.82) !important;
  position:relative;
}
.hero::after{
  content:"";
  position:absolute;
  inset:16px;
  border-radius:28px;
  border:1px solid rgba(37,99,235,.08);
  pointer-events:none;
}
.course-grid{
  gap:22px !important;
}
.course-card{
  min-height:520px !important;
  border-radius:34px !important;
  border:1px solid rgba(255,255,255,.82) !important;
  box-shadow:
    0 28px 80px rgba(15,23,42,.18),
    inset 0 1px 0 rgba(255,255,255,.48) !important;
  transform:translateZ(0);
}
.course-card::before{
  content:"";
  position:absolute;
  inset:10px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.30);
  z-index:2;
  pointer-events:none;
}
.course-card::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:18px;
  height:38%;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,0));
  z-index:1;
  pointer-events:none;
}
.course-door-frame{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    linear-gradient(90deg,rgba(255,255,255,.32),transparent 18%,transparent 82%,rgba(255,255,255,.20)),
    linear-gradient(180deg,rgba(255,255,255,.20),transparent 30%,rgba(0,0,0,.18));
}
.course-overlay{
  z-index:1;
  background:
    linear-gradient(180deg,rgba(2,6,23,.02) 0%,rgba(2,6,23,.10) 28%,rgba(2,6,23,.72) 66%,rgba(2,6,23,.94) 100%),
    radial-gradient(circle at 28% 24%,rgba(255,255,255,.24),transparent 36%) !important;
}
.course-content{
  z-index:3;
  padding:24px !important;
}
.course-logo-wrap{
  width:96px !important;
  height:96px !important;
  border-radius:30px !important;
  margin-bottom:14px !important;
  background:rgba(255,255,255,.24) !important;
  box-shadow:
    0 20px 44px rgba(2,6,23,.28),
    inset 0 1px 0 rgba(255,255,255,.48) !important;
}
.course-logo{
  width:82px !important;
  height:82px !important;
  border-radius:24px !important;
}
.course-detail{
  color:rgba(255,255,255,.92) !important;
  font-size:12px !important;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:950 !important;
  line-height:1.35 !important;
  margin:0 0 9px !important;
  max-height:none !important;
}
.course-content h3{
  font-size:clamp(23px,1.62vw,32px) !important;
  margin-bottom:9px !important;
}
.course-card[data-slug="radiochemistry"] h3,
.course-card[data-slug="anatomy-physiology"] h3,
.course-card[data-slug="allied-health-professional"] h3{
  font-size:clamp(21px,1.45vw,29px) !important;
}
.course-card p:not(.course-detail){
  font-size:13.5px !important;
  line-height:1.48 !important;
  color:rgba(255,255,255,.84) !important;
  max-height:118px !important;
}
.status{
  border:1px solid rgba(255,255,255,.45) !important;
  box-shadow:0 10px 22px rgba(2,6,23,.15);
}
.course-actions button{
  box-shadow:0 12px 28px rgba(2,6,23,.22);
}
.open-course{
  background:rgba(255,255,255,.95) !important;
}
.request-course{
  background:rgba(255,255,255,.18) !important;
}
.section-intro{
  border-radius:34px !important;
}
@media(max-width:560px){
  .course-card{min-height:470px !important}
}


/* v1.5 mission frontpage */
.mission-script{
  font-size:clamp(36px,5.4vw,86px);
  line-height:.96;
  letter-spacing:-.065em;
  font-weight:950;
  max-width:820px;
  margin:0 0 20px;
  background:linear-gradient(135deg,#0f172a 0%,#1d4ed8 42%,#7c3aed 72%,#0f766e 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  position:relative;
}
.mission-script::after{
  content:"";
  display:block;
  width:min(420px,70%);
  height:7px;
  border-radius:999px;
  margin-top:18px;
  background:linear-gradient(90deg,#14b8a6,#2563eb,#7c3aed);
  box-shadow:0 14px 28px rgba(37,99,235,.18);
}
.hero h1{
  font-size:clamp(34px,4.7vw,70px) !important;
  line-height:.95 !important;
  margin-top:4px !important;
  color:#0f172a;
}
.hero .lead{
  max-width:780px;
}
.mission-note{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.mission-note span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.76);
  border:1px solid rgba(219,230,246,.9);
  color:#31507a;
  font-size:13px;
  font-weight:900;
  box-shadow:0 10px 24px rgba(15,23,42,.06);
}
.mission-note span::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  background:linear-gradient(135deg,#14b8a6,#7c3aed);
}
.mission-band{
  margin:24px 0 24px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:22px;
  align-items:center;
  padding:30px 34px;
  border-radius:34px;
  background:
    radial-gradient(circle at 12% 20%,rgba(20,184,166,.18),transparent 30%),
    linear-gradient(135deg,rgba(255,255,255,.78),rgba(255,255,255,.58));
  backdrop-filter:blur(22px) saturate(1.2);
  border:1px solid rgba(255,255,255,.78);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.75),
    0 22px 70px rgba(37,99,235,.12);
  position:relative;
  overflow:hidden;
}
.mission-band::after{
  content:"";
  position:absolute;
  inset:14px;
  border-radius:24px;
  border:1px solid rgba(37,99,235,.08);
  pointer-events:none;
}
.mission-mark{
  width:104px;
  height:104px;
  border-radius:30px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#2563eb,#7c3aed,#14b8a6);
  color:white;
  font-size:54px;
  font-weight:900;
  box-shadow:0 22px 52px rgba(37,99,235,.25);
}
.mission-band h2{
  font-size:clamp(28px,3.2vw,52px);
  margin-bottom:10px;
}
.mission-band p:last-child{
  margin:0;
  color:#475467;
  font-size:17px;
  line-height:1.55;
  max-width:960px;
}
@media(max-width:820px){
  .mission-band{
    grid-template-columns:1fr;
    padding:24px;
  }
  .mission-mark{
    width:82px;
    height:82px;
    font-size:42px;
    border-radius:24px;
  }
}


/* v1.6 opening concept slideshow */
.opening-slideshow{
  margin:24px 0;
  position:relative;
}
.slideshow-shell{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:28px;
  align-items:center;
  min-height:360px;
  padding:34px;
  border-radius:36px;
  background:
    radial-gradient(circle at 18% 20%,rgba(20,184,166,.20),transparent 34%),
    radial-gradient(circle at 92% 22%,rgba(124,58,237,.18),transparent 32%),
    linear-gradient(135deg,rgba(255,255,255,.82),rgba(255,255,255,.58));
  border:1px solid rgba(255,255,255,.80);
  backdrop-filter:blur(24px) saturate(1.25);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.78),
    0 28px 86px rgba(37,99,235,.14);
  overflow:hidden;
}
.slideshow-shell::before{
  content:"";
  position:absolute;
  inset:18px;
  border-radius:26px;
  border:1px solid rgba(37,99,235,.08);
  pointer-events:none;
}
.slideshow-shell::after{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-160px;
  top:-180px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(124,58,237,.17),transparent 68%);
  pointer-events:none;
}
.slide-copy{
  position:relative;
  z-index:2;
}
.slide-copy h2{
  font-size:clamp(34px,4.4vw,68px);
  line-height:.96;
  letter-spacing:-.055em;
  max-width:900px;
  margin-bottom:16px;
  background:linear-gradient(135deg,#0f172a,#1d4ed8 52%,#7c3aed 86%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.slide-copy p:not(.eyebrow){
  color:#475467;
  font-size:18px;
  line-height:1.58;
  max-width:820px;
}
.slide-controls{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}
.slide-progress{
  display:flex;
  gap:8px;
  margin-top:20px;
}
.slide-progress span{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#cbd5e1;
  transition:all .3s ease;
}
.slide-progress span.active{
  width:42px;
  background:linear-gradient(90deg,#14b8a6,#2563eb,#7c3aed);
}
.slide-stage{
  position:relative;
  min-height:300px;
  display:grid;
  place-items:center;
  z-index:2;
}
.slide-visual-card{
  width:min(360px,100%);
  aspect-ratio:1/1;
  border-radius:46px;
  position:relative;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 28% 18%,rgba(255,255,255,.62),transparent 42%),
    linear-gradient(135deg,#2563eb,#7c3aed 58%,#14b8a6);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.55),
    inset 0 -18px 38px rgba(2,6,23,.18),
    0 28px 74px rgba(37,99,235,.28);
  overflow:hidden;
}
.slide-visual-card::before{
  content:"";
  position:absolute;
  inset:18px;
  border-radius:34px;
  border:1px solid rgba(255,255,255,.28);
}
.slide-orbit{
  position:absolute;
  inset:48px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.30);
}
.slide-orbit span{
  position:absolute;
  inset:34px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.18);
}
.slide-orbit span:nth-child(2){
  transform:rotate(60deg) scaleX(1.35);
}
.slide-orbit span:nth-child(3){
  transform:rotate(-60deg) scaleX(1.35);
}
.slide-icon{
  position:relative;
  z-index:2;
  width:150px;
  height:150px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#2563eb;
  font-size:78px;
  font-weight:950;
  box-shadow:0 20px 48px rgba(2,6,23,.20);
}
.slide-mini-lines{
  position:absolute;
  left:62px;
  right:62px;
  bottom:58px;
  display:grid;
  gap:11px;
}
.slide-mini-lines i{
  height:16px;
  border-radius:999px;
  background:rgba(255,255,255,.70);
}
.slide-mini-lines i:nth-child(2){width:72%;margin:auto}
.slide-mini-lines i:nth-child(3){width:48%;margin:auto}
.slide-animate .slide-copy,
.slide-animate .slide-visual-card{
  animation:slideSoftIn .55s ease both;
}
@keyframes slideSoftIn{
  from{opacity:.2;transform:translateY(10px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@media(max-width:980px){
  .slideshow-shell{
    grid-template-columns:1fr;
  }
  .slide-stage{
    min-height:240px;
  }
  .slide-visual-card{
    width:min(300px,100%);
  }
}

/* v1.7 HomePort account creation gateway */
.account-gateway{
  grid-template-columns:.9fr 1.35fr !important;
  align-items:start !important;
}
.account-note{
  margin-top:18px;
  padding:14px 16px;
  border-radius:18px;
  background:rgba(37,99,235,.08);
  border:1px solid rgba(37,99,235,.14);
  color:#274060;
  line-height:1.45;
}
.account-workspace{
  display:grid;
  gap:16px;
}
.account-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:7px;
  border-radius:999px;
  background:rgba(239,246,255,.92);
  border:1px solid rgba(207,220,240,.92);
}
.account-tab{
  border:0;
  border-radius:999px;
  padding:12px 15px;
  background:transparent;
  color:#274060;
  font-weight:950;
}
.account-tab.active{
  background:linear-gradient(135deg,var(--blue),var(--purple));
  color:white;
  box-shadow:0 14px 30px rgba(37,99,235,.22);
}
.account-form{
  grid-template-columns:1fr 1fr !important;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.70);
  border:1px solid rgba(219,230,246,.92);
}
.account-form .primary{
  min-height:50px;
  align-self:end;
}
.account-form select{
  width:100%;
  border:1px solid #cfdcf0;
  border-radius:16px;
  background:white;
  padding:13px 14px;
  font:inherit;
  color:var(--ink);
}
.full-row{
  grid-column:1 / -1;
}
.form-help{
  margin:0;
  color:#5f6f86;
  line-height:1.45;
  font-size:13px;
}
.account-message{
  padding:15px 17px;
  border-radius:18px;
  font-weight:850;
  line-height:1.45;
  border:1px solid transparent;
}
.account-message.success{
  background:#ecfdf5;
  color:#065f46;
  border-color:#a7f3d0;
}
.account-message.error{
  background:#fef2f2;
  color:#991b1b;
  border-color:#fecaca;
}
.footer-admin{
  border:1px solid rgba(37,99,235,.25);
  background:rgba(255,255,255,.86);
  color:#1d4ed8;
  border-radius:999px;
  padding:10px 14px;
  font-weight:950;
}
@media(max-width:900px){
  .account-gateway{grid-template-columns:1fr !important;}
  .account-form{grid-template-columns:1fr !important;}
  .account-tabs{grid-template-columns:1fr;border-radius:24px;}
}

/* v1.8 HomePort HIPAA-aligned registration + setup code workflow */
.form-step{
  padding:14px 16px;
  border-radius:18px;
  background:rgba(37,99,235,.075);
  border:1px solid rgba(37,99,235,.14);
  color:#274060;
  line-height:1.45;
}
.checkbox-line{
  display:grid !important;
  grid-template-columns:auto 1fr;
  align-items:start !important;
  gap:10px !important;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(207,220,240,.92);
  font-weight:750 !important;
  line-height:1.45;
}
.checkbox-line input{
  width:18px !important;
  height:18px;
  margin-top:2px;
  accent-color:var(--blue);
}
.account-form button.full-row{
  width:100%;
}
#studentVerifyForm{
  grid-template-columns:1fr 1fr !important;
}
#studentVerifyForm .form-step,
#studentVerifyForm .form-help{
  grid-column:1 / -1;
}
@media(max-width:900px){
  #studentVerifyForm{grid-template-columns:1fr !important;}
}

/* v1.9 Universal account first + course-specific request workflow */
.student-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.student-meta span{
  display:inline-flex;
  gap:6px;
  align-items:center;
  padding:8px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(203,213,225,.8);
  color:#334155;
  font-size:13px;
}
.request-log{
  margin-top:16px;
  padding:14px;
  border-radius:18px;
  background:rgba(248,250,252,.86);
  border:1px solid rgba(203,213,225,.8);
}
.request-chip{
  display:grid;
  gap:3px;
  margin-top:10px;
  padding:10px 12px;
  border-radius:14px;
  background:white;
  border:1px solid rgba(226,232,240,.95);
}
.request-chip span{
  font-weight:900;
  color:#0f172a;
}
.request-chip small{
  color:#475569;
  line-height:1.35;
}


/* v1.10 account confirmation modal */
.account-setup-card{width:min(760px,100%)}
.modal-lead{color:#475467;font-size:17px;line-height:1.55;margin:6px 0 18px}
.setup-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}
.setup-summary .summary-item{border:1px solid #dbe6f6;background:#f8fbff;border-radius:18px;padding:14px 16px}
.setup-summary .summary-item span{display:block;color:#667085;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:6px}
.setup-summary .summary-item b{font-size:17px;color:#101828;word-break:break-word}
.setup-summary .summary-item.full{grid-column:1/-1}
.instruction-box{border:1px solid rgba(37,99,235,.18);background:linear-gradient(135deg,rgba(239,246,255,.95),rgba(245,243,255,.95));border-radius:20px;padding:16px 18px;color:#344054;line-height:1.55}
.instruction-box ol{margin:8px 0 0 20px;padding:0}
.instruction-box li{margin:6px 0}
.account-message.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
.account-message.success{background:#ecfdf5;color:#065f46;border:1px solid #bbf7d0}
@media(max-width:720px){.setup-summary{grid-template-columns:1fr}.account-setup-card{padding:26px}.modal-actions{flex-direction:column}.modal-actions button,.modal-actions a{width:100%;justify-content:center}}

/* v1.11 universal account + instructor course-control patch */
body.modal-open{overflow:hidden}
.admin-portal-card{width:min(1040px,100%);max-height:88vh;overflow:auto}
.admin-login-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;margin:18px 0 20px;padding:16px;border-radius:22px;background:#f8fbff;border:1px solid rgba(37,99,235,.12)}
.admin-login-form label{display:grid;gap:7px;font-weight:800;color:#1d2939;font-size:14px}
.admin-login-form input{padding:12px 14px;border-radius:14px;border:1px solid rgba(15,23,42,.16);font:inherit;background:#fff}
.admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}
.admin-tab{border:1px solid rgba(37,99,235,.18);background:#fff;color:#1d2939;border-radius:999px;padding:9px 12px;font-weight:800;cursor:pointer;font-size:12px}
.admin-tab.active{background:linear-gradient(135deg,#2563eb,#7c3aed);color:white;border-color:transparent;box-shadow:0 10px 26px rgba(37,99,235,.22)}
.admin-panel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}
.admin-stat{padding:15px;border-radius:20px;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(15,23,42,.08)}
.admin-stat span{display:block;color:#667085;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.admin-stat b{display:block;margin-top:5px;font-size:24px;color:#101828}
.admin-request-list{display:grid;gap:10px}
.admin-empty,.admin-request-card{padding:16px;border-radius:20px;background:#f8fbff;border:1px solid rgba(15,23,42,.08);display:grid;gap:6px;color:#344054}
.admin-request-card b{color:#101828}.admin-request-card small{color:#667085}.admin-empty span{color:#667085}
@media(max-width:800px){.admin-login-form,.admin-panel-grid{grid-template-columns:1fr}.admin-login-form button{width:100%}}

/* v1.13 verification + admin direct links */
.admin-direct-link { text-decoration: none; display: inline-flex; align-items: center; justify-content: center; }
.version-pill { display: inline-flex; align-items: center; border: 1px solid rgba(37,99,235,.18); background: rgba(37,99,235,.08); color: #1d4ed8; border-radius: 999px; padding: 6px 10px; font-weight: 900; font-size: .78rem; }

/* v1.16 user ID, password reset, and institution management patch */
.modal-password-box{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:12px 0 10px;
}
.modal-password-box label{
  display:grid;
  gap:7px;
  font-weight:900;
  color:#1d2939;
  font-size:14px;
}
.modal-password-box input{
  width:100%;
  padding:13px 14px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.16);
  font:inherit;
  background:#fff;
}
@media(max-width:720px){.modal-password-box{grid-template-columns:1fr}}

/* Homepage polish: fixed slideshow height and student-facing bottom content */
.opening-slideshow{
  min-height:430px;
  display:block;
}
.slideshow-shell{
  min-height:430px;
  height:430px;
}
.slide-copy{
  min-height:330px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.slide-copy h2{
  min-height:150px;
  display:flex;
  align-items:flex-end;
}
.slide-copy p:not(.eyebrow){
  min-height:86px;
}
.slide-stage{
  min-height:330px;
}
.outcome-list{
  margin:18px 0 0;
  padding-left:20px;
  color:#475467;
  line-height:1.62;
}
.outcome-list li{margin:9px 0;}
.permission-points{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}
.permission-points span{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:10px 13px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.24);
  color:#fff;
  font-weight:900;
  font-size:.88rem;
}
.version-pill{display:none !important;}
@media(max-width:980px){
  .opening-slideshow{min-height:680px;}
  .slideshow-shell{height:auto;min-height:680px;}
  .slide-copy{min-height:330px;}
  .slide-copy h2{min-height:140px;}
  .slide-copy p:not(.eyebrow){min-height:96px;}
}
@media(max-width:640px){
  .opening-slideshow{min-height:720px;}
  .slideshow-shell{min-height:720px;padding:26px;}
  .slide-copy h2{min-height:170px;}
  .slide-copy p:not(.eyebrow){min-height:120px;}
}

.title-accent { display: inline-block; font-size: 0.72em; letter-spacing: 0.06em; text-transform: uppercase; color: #2563eb; }


/* v1.22 application logo placement and sharp hero identity */
.text-brand-mark{
  background:linear-gradient(135deg,#2563eb,#7c3aed) !important;
  color:#fff;
  font-weight:1000;
  font-size:13px;
  letter-spacing:.06em;
  text-align:center;
  box-shadow:0 10px 24px rgba(37,99,235,.18);
}
.hero-logo-lockup{display:none !important}
.hero-logo-visual{
  display:grid;
  place-items:center;
}
.hero-logo-visual img{
  width:min(560px,100%) !important;
  max-width:100%;
  height:auto;
  object-fit:contain;
  image-rendering:auto;
  filter:drop-shadow(0 32px 64px rgba(37,99,235,.22)) !important;
  transform:scale(1.04);
}
@media(max-width:720px){
  .hero-logo-visual img{width:min(360px,100%) !important;transform:none}
}


/* Detailed application logo rendering */
.hero-logo-visual img{
  width:min(520px,100%) !important;
  border-radius:38px;
  image-rendering:auto;
  filter:drop-shadow(0 34px 72px rgba(37,99,235,.24)) saturate(1.03) contrast(1.02) !important;
}
@media(max-width:720px){.hero-logo-visual img{width:min(330px,100%) !important;border-radius:28px}}

/* v1.24 header rebuild: compact logo lockup + controlled dropdown navigation */
.rotunda-header-v124{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  min-height:76px !important;
  padding:14px 18px !important;
  overflow:visible !important;
}
.brand-v124{
  flex:0 0 auto !important;
  min-width:280px !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
.brand-logo-cube{
  width:54px !important;
  height:54px !important;
  border-radius:18px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(124,58,237,.10)) !important;
  border:1px solid rgba(219,230,246,.96) !important;
  box-shadow:0 14px 30px rgba(37,99,235,.14) !important;
}
.brand-logo-cube img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  image-rendering:auto !important;
  transform:scale(1.06) !important;
}
.brand-name-lockup b{
  display:block !important;
  font-size:15px !important;
  line-height:1.05 !important;
  letter-spacing:-.02em !important;
  color:#101828 !important;
}
.brand-name-lockup small{
  display:block !important;
  margin-top:4px !important;
  color:#667085 !important;
  font-size:10px !important;
  line-height:1.15 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  font-weight:900 !important;
}
.nav-v124{
  flex:1 1 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  flex-wrap:nowrap !important;
  min-width:0 !important;
}
.nav-v124 .nav-item{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  text-decoration:none !important;
}
.nav-v124 .nav-trigger,
.nav-v124 .nav-item.direct{
  appearance:none !important;
  -webkit-appearance:none !important;
  border:1px solid rgba(219,230,246,.95) !important;
  background:rgba(255,255,255,.72) !important;
  color:#23314a !important;
  border-radius:999px !important;
  padding:10px 13px !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.01em !important;
  box-shadow:none !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}
.nav-v124 .nav-trigger::after{
  content:"▾" !important;
  font-size:10px !important;
  margin-left:7px !important;
  color:#667085 !important;
}
.nav-v124 .nav-item.direct::after{content:"" !important;margin:0 !important;}
.nav-v124 .student-login-trigger{
  color:#fff !important;
  background:linear-gradient(135deg,#2563eb,#7c3aed) !important;
  border-color:transparent !important;
  box-shadow:0 12px 28px rgba(37,99,235,.22) !important;
}
.nav-v124 .student-login-trigger::after{color:#fff !important;}
.nav-v124 .nav-trigger:hover,
.nav-v124 .nav-item.direct:hover,
.nav-v124 .dropdown:focus-within .nav-trigger,
.nav-v124 .dropdown:hover .nav-trigger{
  transform:translateY(-1px) !important;
  box-shadow:0 14px 30px rgba(15,23,42,.10) !important;
  border-color:rgba(37,99,235,.22) !important;
}
.nav-v124 .nav-menu{
  position:absolute !important;
  top:calc(100% + 12px) !important;
  left:0 !important;
  min-width:230px !important;
  padding:10px !important;
  display:none !important;
  grid-template-columns:1fr !important;
  gap:4px !important;
  background:rgba(255,255,255,.98) !important;
  border:1px solid rgba(219,230,246,.98) !important;
  border-radius:20px !important;
  box-shadow:0 26px 60px rgba(15,23,42,.18) !important;
  backdrop-filter:blur(18px) !important;
  z-index:1000 !important;
}
.nav-v124 .nav-menu-right{
  left:auto !important;
  right:0 !important;
}
.nav-v124 .dropdown:hover .nav-menu,
.nav-v124 .dropdown:focus-within .nav-menu,
.nav-v124 .dropdown.open .nav-menu{
  display:grid !important;
}
.nav-v124 .nav-menu a,
.nav-v124 .nav-menu button{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:block !important;
  width:100% !important;
  border:0 !important;
  background:transparent !important;
  border-radius:13px !important;
  padding:11px 12px !important;
  color:#344054 !important;
  text-align:left !important;
  text-decoration:none !important;
  font-size:14px !important;
  line-height:1.15 !important;
  font-weight:850 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}
.nav-v124 .nav-menu a:hover,
.nav-v124 .nav-menu button:hover{
  background:#eef4ff !important;
  color:#1d4ed8 !important;
}
@media(max-width:1100px){
  .rotunda-header-v124{align-items:flex-start !important;flex-direction:column !important;}
  .brand-v124{min-width:0 !important;width:100% !important;}
  .nav-v124{width:100% !important;justify-content:flex-start !important;flex-wrap:wrap !important;}
  .nav-v124 .nav-menu-right{left:0 !important;right:auto !important;}
}
@media(max-width:720px){
  .rotunda-header-v124{position:relative !important;top:0 !important;border-radius:22px !important;}
  .nav-v124{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;}
  .nav-v124 .nav-item,.nav-v124 .nav-trigger,.nav-v124 .nav-item.direct{width:100% !important;justify-content:space-between !important;}
  .nav-v124 .nav-menu{position:static !important;min-width:100% !important;margin-top:8px !important;box-shadow:0 14px 34px rgba(15,23,42,.10) !important;}
}


/* v1.25 final dropdown header: true hover/click dropdown lists */
.rotunda-header-v125{
  width:min(1440px,calc(100% - 42px)) !important;
  margin:22px auto 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:22px !important;
  min-height:78px !important;
  padding:14px 18px !important;
  overflow:visible !important;
  position:sticky !important;
  top:14px !important;
  z-index:2000 !important;
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(219,230,246,.95) !important;
  border-radius:28px !important;
  box-shadow:0 18px 46px rgba(15,23,42,.08) !important;
  backdrop-filter:blur(18px) !important;
}
.brand-v125{
  flex:0 0 auto !important;
  min-width:250px !important;
  max-width:310px !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  color:#101828 !important;
  text-decoration:none !important;
}
.brand-v125 .brand-logo-cube{
  width:52px !important;
  height:52px !important;
  border-radius:17px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid rgba(219,230,246,.96) !important;
  box-shadow:0 14px 30px rgba(37,99,235,.14) !important;
}
.brand-v125 .brand-logo-cube img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
.brand-v125 .brand-name-lockup b{
  display:block !important;
  font-size:14px !important;
  line-height:1.08 !important;
  letter-spacing:-.02em !important;
  color:#101828 !important;
}
.brand-v125 .brand-name-lockup small{
  display:block !important;
  margin-top:4px !important;
  color:#667085 !important;
  font-size:10px !important;
  line-height:1.15 !important;
  letter-spacing:.11em !important;
  text-transform:uppercase !important;
  font-weight:900 !important;
}
.rotunda-nav-v125{
  flex:1 1 auto !important;
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
  flex-wrap:nowrap !important;
}
.rotunda-nav-v125 .nav-dd,
.rotunda-nav-v125 .nav-primary-link{
  position:relative !important;
}
.rotunda-nav-v125 .nav-dd{
  display:inline-flex !important;
  align-items:center !important;
}
.rotunda-nav-v125 .nav-primary-link{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  min-height:42px !important;
  border:1px solid rgba(219,230,246,.95) !important;
  background:rgba(255,255,255,.74) !important;
  color:#23314a !important;
  border-radius:999px !important;
  padding:11px 15px !important;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.01em !important;
  text-decoration:none !important;
  box-shadow:none !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}
.rotunda-nav-v125 .nav-dd-trigger::after,
.rotunda-nav-v125 .nav-login-primary::after{
  content:"▾" !important;
  display:inline-block !important;
  font-size:10px !important;
  line-height:1 !important;
  color:#667085 !important;
  transform:translateY(1px) !important;
}
.rotunda-nav-v125 .nav-primary-link:hover,
.rotunda-nav-v125 .nav-dd:focus-within > .nav-primary-link,
.rotunda-nav-v125 .nav-dd:hover > .nav-primary-link,
.rotunda-nav-v125 .nav-dd.open > .nav-primary-link{
  transform:translateY(-1px) !important;
  background:#fff !important;
  border-color:rgba(37,99,235,.24) !important;
  box-shadow:0 14px 30px rgba(15,23,42,.10) !important;
}
.rotunda-nav-v125 .nav-login-primary{
  color:#fff !important;
  background:linear-gradient(135deg,#2563eb,#7c3aed) !important;
  border-color:transparent !important;
  box-shadow:0 12px 28px rgba(37,99,235,.24) !important;
}
.rotunda-nav-v125 .nav-login-primary::after{color:#fff !important;}
.rotunda-nav-v125 .nav-dd-menu{
  position:absolute !important;
  top:calc(100% + 12px) !important;
  left:0 !important;
  min-width:250px !important;
  padding:10px !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:5px !important;
  background:rgba(255,255,255,.98) !important;
  border:1px solid rgba(219,230,246,.98) !important;
  border-radius:20px !important;
  box-shadow:0 26px 60px rgba(15,23,42,.18) !important;
  backdrop-filter:blur(18px) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(-6px) scale(.98) !important;
  transform-origin:top left !important;
  transition:opacity .16s ease, transform .16s ease, visibility .16s ease !important;
  z-index:5000 !important;
}
.rotunda-nav-v125 .nav-dd-menu-right{
  left:auto !important;
  right:0 !important;
  transform-origin:top right !important;
}
.rotunda-nav-v125 .nav-dd:hover > .nav-dd-menu,
.rotunda-nav-v125 .nav-dd:focus-within > .nav-dd-menu,
.rotunda-nav-v125 .nav-dd.open > .nav-dd-menu{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) scale(1) !important;
}
.rotunda-nav-v125 .nav-dd-menu a,
.rotunda-nav-v125 .nav-dd-menu button{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  min-height:38px !important;
  border:0 !important;
  background:transparent !important;
  border-radius:13px !important;
  padding:10px 12px !important;
  color:#344054 !important;
  text-align:left !important;
  text-decoration:none !important;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
  font-size:14px !important;
  line-height:1.15 !important;
  font-weight:850 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}
.rotunda-nav-v125 .nav-dd-menu a:hover,
.rotunda-nav-v125 .nav-dd-menu button:hover,
.rotunda-nav-v125 .nav-dd-menu a:focus,
.rotunda-nav-v125 .nav-dd-menu button:focus{
  outline:none !important;
  background:#eef4ff !important;
  color:#1d4ed8 !important;
}
@media(max-width:1180px){
  .rotunda-header-v125{align-items:flex-start !important;flex-direction:column !important;}
  .brand-v125{min-width:0 !important;width:100% !important;}
  .rotunda-nav-v125{width:100% !important;justify-content:flex-start !important;flex-wrap:wrap !important;}
  .rotunda-nav-v125 .nav-dd-menu-right{left:0 !important;right:auto !important;transform-origin:top left !important;}
}
@media(max-width:720px){
  .rotunda-header-v125{position:relative !important;top:0 !important;border-radius:22px !important;width:calc(100% - 24px) !important;}
  .rotunda-nav-v125{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;}
  .rotunda-nav-v125 .nav-dd,
  .rotunda-nav-v125 .nav-primary-link{width:100% !important;justify-content:space-between !important;}
  .rotunda-nav-v125 .nav-dd-menu{
    position:static !important;
    min-width:100% !important;
    margin-top:8px !important;
    box-shadow:0 14px 34px rgba(15,23,42,.10) !important;
    transform:none !important;
  }
  .rotunda-nav-v125 .nav-dd:not(.open):not(:focus-within):not(:hover) .nav-dd-menu{display:none !important;}
}


/* v1.26 polished dropdown navigation + detailed hero image standardization */
.rotunda-header-v126{
  min-height:84px !important;
  padding:14px 20px !important;
  border-radius:30px !important;
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(248,251,255,.84)) !important;
  border:1px solid rgba(219,230,246,.96) !important;
  box-shadow:0 20px 54px rgba(15,23,42,.09) !important;
  overflow:visible !important;
}
.rotunda-header-v126::before{
  content:"" !important;
  position:absolute !important;
  inset:1px !important;
  border-radius:29px !important;
  pointer-events:none !important;
  background:radial-gradient(circle at 12% 25%,rgba(37,99,235,.10),transparent 32%),radial-gradient(circle at 88% 10%,rgba(124,58,237,.10),transparent 28%),linear-gradient(90deg,rgba(20,184,166,.05),rgba(255,255,255,0)) !important;
}
.rotunda-header-v126 .brand-v125{
  position:relative !important;
  z-index:2 !important;
  min-width:252px !important;
}
.rotunda-header-v126 .brand-logo-cube{
  width:48px !important;
  height:48px !important;
  border-radius:16px !important;
  background:linear-gradient(135deg,#eef6ff,#ffffff) !important;
}
.rotunda-header-v126 .brand-logo-cube img{
  object-fit:cover !important;
  image-rendering:auto !important;
  transform:scale(1.04) !important;
}
.rotunda-header-v126 .brand-name-lockup b{
  font-size:15px !important;
  max-width:190px !important;
}
.rotunda-header-v126 .brand-name-lockup small{
  font-size:10px !important;
  letter-spacing:.10em !important;
}
.rotunda-nav-v126{
  position:relative !important;
  z-index:5 !important;
  gap:9px !important;
  padding:6px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.46) !important;
  border:1px solid rgba(219,230,246,.70) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65) !important;
}
.rotunda-nav-v126 .nav-dd,
.rotunda-nav-v126 .nav-primary-link{
  isolation:isolate !important;
}
.rotunda-nav-v126 .nav-primary-link,
.rotunda-nav-v126 button.nav-primary-link{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#1f2a44 !important;
  min-height:40px !important;
  padding:11px 14px !important;
  border-radius:999px !important;
  font-size:13.5px !important;
  letter-spacing:-.015em !important;
  transition:transform .16s ease, background .16s ease, box-shadow .16s ease, color .16s ease !important;
}
.rotunda-nav-v126 .nav-primary-link:hover,
.rotunda-nav-v126 .nav-dd:focus-within > .nav-primary-link,
.rotunda-nav-v126 .nav-dd:hover > .nav-primary-link,
.rotunda-nav-v126 .nav-dd.open > .nav-primary-link{
  background:#fff !important;
  color:#1d4ed8 !important;
  box-shadow:0 12px 28px rgba(37,99,235,.12) !important;
}
.rotunda-nav-v126 .nav-login-primary{
  background:linear-gradient(135deg,#2563eb,#7c3aed) !important;
  color:#fff !important;
  box-shadow:0 14px 30px rgba(37,99,235,.22) !important;
}
.rotunda-nav-v126 .nav-login-primary:hover,
.rotunda-nav-v126 .nav-dd:hover > .nav-login-primary,
.rotunda-nav-v126 .nav-dd.open > .nav-login-primary{
  color:#fff !important;
  background:linear-gradient(135deg,#1d4ed8,#6d28d9) !important;
}
.rotunda-nav-v126 .nav-dd-trigger::after,
.rotunda-nav-v126 .nav-login-primary::after{
  margin-left:3px !important;
  opacity:.72 !important;
}
.rotunda-nav-v126 .nav-dd-menu{
  top:calc(100% + 14px) !important;
  min-width:286px !important;
  padding:12px !important;
  gap:7px !important;
  border-radius:24px !important;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(245,249,255,.97)) !important;
  border:1px solid rgba(219,230,246,.98) !important;
  box-shadow:0 26px 70px rgba(15,23,42,.18),0 0 0 1px rgba(255,255,255,.6) inset !important;
  backdrop-filter:blur(20px) !important;
}
.rotunda-nav-v126 .nav-dd-menu::before{
  content:"" !important;
  position:absolute !important;
  top:-7px !important;
  left:24px !important;
  width:14px !important;
  height:14px !important;
  transform:rotate(45deg) !important;
  background:rgba(255,255,255,.98) !important;
  border-left:1px solid rgba(219,230,246,.98) !important;
  border-top:1px solid rgba(219,230,246,.98) !important;
}
.rotunda-nav-v126 .nav-dd-menu-right::before{
  left:auto !important;
  right:30px !important;
}
.rotunda-nav-v126 .nav-dd-menu a,
.rotunda-nav-v126 .nav-dd-menu button{
  min-height:44px !important;
  border-radius:16px !important;
  padding:11px 13px 11px 42px !important;
  position:relative !important;
  color:#344054 !important;
  background:rgba(255,255,255,.55) !important;
  border:1px solid rgba(219,230,246,.62) !important;
  white-space:normal !important;
  font-size:13.5px !important;
}
.rotunda-nav-v126 .nav-dd-menu a::before,
.rotunda-nav-v126 .nav-dd-menu button::before{
  content:"" !important;
  position:absolute !important;
  left:12px !important;
  top:50% !important;
  width:18px !important;
  height:18px !important;
  transform:translateY(-50%) !important;
  border-radius:7px !important;
  background:linear-gradient(135deg,#60a5fa,#a78bfa) !important;
  box-shadow:0 8px 18px rgba(37,99,235,.18) !important;
}
.rotunda-nav-v126 .nav-dd-menu a:hover,
.rotunda-nav-v126 .nav-dd-menu button:hover,
.rotunda-nav-v126 .nav-dd-menu a:focus,
.rotunda-nav-v126 .nav-dd-menu button:focus{
  background:linear-gradient(135deg,#eef4ff,#f8f5ff) !important;
  color:#1d4ed8 !important;
  border-color:rgba(37,99,235,.22) !important;
  transform:translateX(2px) !important;
}
.hero-logo-visual{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.hero-logo-visual img[src*="rotunda-health-science-hero-detailed"]{
  width:min(520px,100%) !important;
  max-height:520px !important;
  object-fit:contain !important;
  border-radius:42px !important;
  image-rendering:auto !important;
  filter:drop-shadow(0 26px 58px rgba(37,99,235,.23)) !important;
}
@media(max-width:1220px){
  .rotunda-header-v126{align-items:flex-start !important;flex-direction:column !important;gap:12px !important;}
  .rotunda-nav-v126{width:100% !important;justify-content:flex-start !important;flex-wrap:wrap !important;border-radius:24px !important;}
}
@media(max-width:720px){
  .rotunda-nav-v126{display:grid !important;grid-template-columns:1fr !important;background:transparent !important;border:0 !important;padding:0 !important;}
  .rotunda-nav-v126 .nav-primary-link{background:#fff !important;border:1px solid rgba(219,230,246,.86) !important;}
  .rotunda-nav-v126 .nav-login-primary{background:linear-gradient(135deg,#2563eb,#7c3aed) !important;}
  .hero-logo-visual img[src*="rotunda-health-science-hero-detailed"]{width:min(370px,100%) !important;}
}

/* v1.27 hard rebuild: actual primary dropdown menus only */
.site-header.rotunda-header-v125.rotunda-header-v126{
  width:min(1440px,calc(100% - 42px)) !important;
  min-height:76px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  overflow:visible !important;
  padding:14px 18px !important;
  position:sticky !important;
  z-index:1000 !important;
}
.site-header .brand-v125{
  flex:0 0 auto !important;
  min-width:250px !important;
  max-width:310px !important;
}
.ahs-main-nav{
  flex:1 1 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
  flex-wrap:nowrap !important;
  padding:8px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.58) !important;
  border:1px solid rgba(219,230,246,.78) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75) !important;
  position:relative !important;
  z-index:1001 !important;
}
.ahs-main-nav *{box-sizing:border-box !important;}
.ahs-nav-menu{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
}
.ahs-nav-menu > summary::-webkit-details-marker{display:none !important;}
.ahs-nav-menu > summary::marker{content:"" !important;}
.ahs-nav-item{
  appearance:none !important;
  -webkit-appearance:none !important;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  color:#1f2a44 !important;
  text-decoration:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  min-height:42px !important;
  border-radius:999px !important;
  padding:11px 15px !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.01em !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  user-select:none !important;
  box-shadow:none !important;
}
.ahs-nav-menu > summary.ahs-nav-item::after{
  content:"▾" !important;
  font-size:10px !important;
  color:#667085 !important;
  transform:translateY(1px) !important;
}
.ahs-nav-item:hover,
.ahs-nav-menu[open] > .ahs-nav-item,
.ahs-nav-menu:hover > .ahs-nav-item,
.ahs-nav-menu:focus-within > .ahs-nav-item{
  background:#fff !important;
  color:#1d4ed8 !important;
  box-shadow:0 12px 28px rgba(37,99,235,.12) !important;
}
.ahs-login-summary{
  color:#fff !important;
  background:linear-gradient(135deg,#2563eb,#7c3aed) !important;
  box-shadow:0 14px 30px rgba(37,99,235,.22) !important;
}
.ahs-login-summary::after{color:#fff !important;}
.ahs-login-summary:hover,
.ahs-student-menu[open] > .ahs-login-summary,
.ahs-student-menu:hover > .ahs-login-summary{
  color:#fff !important;
  background:linear-gradient(135deg,#1d4ed8,#6d28d9) !important;
}
.ahs-dropdown{
  position:absolute !important;
  top:calc(100% + 14px) !important;
  left:0 !important;
  min-width:292px !important;
  display:none !important;
  grid-template-columns:1fr !important;
  gap:8px !important;
  padding:12px !important;
  border-radius:24px !important;
  background:linear-gradient(135deg,rgba(255,255,255,.99),rgba(246,249,255,.98)) !important;
  border:1px solid rgba(219,230,246,.98) !important;
  box-shadow:0 26px 70px rgba(15,23,42,.18),0 0 0 1px rgba(255,255,255,.6) inset !important;
  backdrop-filter:blur(20px) !important;
  z-index:10000 !important;
}
.ahs-dropdown-right{left:auto !important;right:0 !important;}
.ahs-dropdown::before{
  content:"" !important;
  position:absolute !important;
  top:-7px !important;
  left:24px !important;
  width:14px !important;
  height:14px !important;
  transform:rotate(45deg) !important;
  background:rgba(255,255,255,.99) !important;
  border-left:1px solid rgba(219,230,246,.98) !important;
  border-top:1px solid rgba(219,230,246,.98) !important;
}
.ahs-dropdown-right::before{left:auto !important;right:30px !important;}
.ahs-nav-menu[open] > .ahs-dropdown,
.ahs-nav-menu:hover > .ahs-dropdown,
.ahs-nav-menu:focus-within > .ahs-dropdown{
  display:grid !important;
}
.ahs-dropdown a,
.ahs-dropdown button{
  appearance:none !important;
  -webkit-appearance:none !important;
  width:100% !important;
  min-height:44px !important;
  display:flex !important;
  align-items:center !important;
  border-radius:16px !important;
  border:1px solid rgba(219,230,246,.62) !important;
  background:rgba(255,255,255,.68) !important;
  color:#344054 !important;
  text-align:left !important;
  text-decoration:none !important;
  font-size:14px !important;
  line-height:1.15 !important;
  font-weight:850 !important;
  padding:11px 13px 11px 42px !important;
  position:relative !important;
  cursor:pointer !important;
  white-space:normal !important;
}
.ahs-dropdown a::before,
.ahs-dropdown button::before{
  content:"" !important;
  position:absolute !important;
  left:12px !important;
  top:50% !important;
  width:18px !important;
  height:18px !important;
  border-radius:7px !important;
  transform:translateY(-50%) !important;
  background:linear-gradient(135deg,#60a5fa,#a78bfa) !important;
  box-shadow:0 8px 18px rgba(37,99,235,.18) !important;
}
.ahs-dropdown a:hover,
.ahs-dropdown button:hover,
.ahs-dropdown a:focus,
.ahs-dropdown button:focus{
  outline:none !important;
  background:linear-gradient(135deg,#eef4ff,#f8f5ff) !important;
  color:#1d4ed8 !important;
  border-color:rgba(37,99,235,.22) !important;
  transform:translateX(2px) !important;
}
@media(max-width:1180px){
  .site-header.rotunda-header-v125.rotunda-header-v126{align-items:flex-start !important;flex-direction:column !important;}
  .site-header .brand-v125{min-width:0 !important;width:100% !important;}
  .ahs-main-nav{width:100% !important;justify-content:flex-start !important;flex-wrap:wrap !important;border-radius:24px !important;}
  .ahs-dropdown-right{left:0 !important;right:auto !important;}
}
@media(max-width:720px){
  .ahs-main-nav{display:grid !important;grid-template-columns:1fr !important;background:transparent !important;border:0 !important;padding:0 !important;gap:8px !important;}
  .ahs-nav-menu,.ahs-nav-item{width:100% !important;justify-content:space-between !important;}
  .ahs-dropdown{position:static !important;min-width:100% !important;margin-top:8px !important;box-shadow:0 14px 34px rgba(15,23,42,.10) !important;}
  .ahs-dropdown::before{display:none !important;}
  .ahs-nav-menu:not([open]):not(:hover):not(:focus-within) > .ahs-dropdown{display:none !important;}
}

/* v1.28 full-page visual depth and alignment polish */
:root{
  --rotunda-ink:#101828;
  --rotunda-blue:#2563eb;
  --rotunda-violet:#7c3aed;
  --rotunda-teal:#14b8a6;
  --rotunda-soft:#f8fbff;
}
body{
  background:
    radial-gradient(circle at 12% 7%, rgba(20,184,166,.14), transparent 28%),
    radial-gradient(circle at 88% 12%, rgba(124,58,237,.16), transparent 32%),
    radial-gradient(circle at 42% 46%, rgba(37,99,235,.10), transparent 36%),
    linear-gradient(135deg,#eef8ff 0%,#f7f3ff 48%,#f7fffb 100%) !important;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(37,99,235,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(37,99,235,.04) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:radial-gradient(circle at 50% 18%, #000 0, transparent 72%);
  z-index:-1;
}
.site-header.rotunda-header-v125.rotunda-header-v126{
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(248,251,255,.78)) !important;
  border:1px solid rgba(219,230,246,.95) !important;
  box-shadow:0 22px 80px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.ahs-main-nav{
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(210,223,245,.9) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 12px 36px rgba(15,23,42,.06) !important;
}
.ahs-dropdown{
  background:
    radial-gradient(circle at top left, rgba(37,99,235,.10), transparent 38%),
    radial-gradient(circle at bottom right, rgba(20,184,166,.10), transparent 40%),
    rgba(255,255,255,.98) !important;
}
.ahs-dropdown a,
.ahs-dropdown button{
  transition:transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease !important;
}
.ahs-dropdown a:hover,
.ahs-dropdown button:hover{
  box-shadow:0 12px 26px rgba(37,99,235,.12) !important;
}
.hero,
.opening-slideshow,
.mission-band,
.login-panel,
.dashboard,
.section-intro,
.roadmap-card,
.rotunda-detail-grid article{
  backdrop-filter:blur(18px);
}
.hero{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(219,230,246,.9) !important;
  box-shadow:0 28px 90px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.88) !important;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 10% 18%, rgba(37,99,235,.10), transparent 28%),
    radial-gradient(circle at 72% 22%, rgba(124,58,237,.12), transparent 30%),
    linear-gradient(135deg,rgba(255,255,255,.62),rgba(255,255,255,0));
  z-index:0;
}
.hero > *{position:relative;z-index:1}
.hero-logo-visual{
  display:flex;
  align-items:center;
  justify-content:center;
}
.hero-logo-visual img[src*="rotunda-health-science-hero-detailed"]{
  max-width:460px !important;
  width:min(460px,100%) !important;
  border-radius:34px;
  box-shadow:0 28px 70px rgba(37,99,235,.22),0 0 0 1px rgba(255,255,255,.8) inset;
}
.rotunda-detail-grid{
  width:min(1440px,calc(100% - 42px));
  margin:26px auto;
  display:grid;
  grid-template-columns:1.15fr .85fr .85fr .85fr;
  gap:18px;
  align-items:stretch;
}
.detail-feature,
.detail-mini-card{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(249,251,255,.72));
  border:1px solid rgba(219,230,246,.92);
  border-radius:34px;
  box-shadow:0 20px 70px rgba(15,23,42,.09), inset 0 1px 0 rgba(255,255,255,.82);
}
.detail-feature::before,
.detail-mini-card::before{
  content:"";
  position:absolute;
  inset:auto -30% -35% 22%;
  height:160px;
  background:radial-gradient(circle,rgba(37,99,235,.13),transparent 68%);
  pointer-events:none;
}
.detail-feature-wide{
  grid-column:span 2;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:20px;
  padding:26px;
}
.detail-copy h2{
  font-size:clamp(28px,3vw,46px);
  line-height:.98;
  letter-spacing:-.055em;
  margin:8px 0 14px;
  color:#101828;
}
.detail-copy p{
  color:#526071;
  line-height:1.65;
  font-weight:650;
  margin:0;
}
.detail-badges{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:18px;
}
.detail-badges span{
  padding:9px 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(219,230,246,.9);
  color:#1d4ed8;
  font-weight:900;
  font-size:12px;
}
.detail-image-card{
  display:flex;
  align-items:center;
  justify-content:center;
}
.detail-image-card img,
.detail-mini-card img{
  width:100%;
  display:block;
  border-radius:26px;
}
.detail-mini-card{
  padding:18px;
}
.detail-mini-card img{
  aspect-ratio: 1.45 / 1;
  object-fit:cover;
  margin-bottom:16px;
  box-shadow:0 14px 34px rgba(15,23,42,.08);
}
.detail-mini-card h3{
  margin:0 0 8px;
  color:#101828;
  font-size:20px;
  letter-spacing:-.03em;
}
.detail-mini-card p{
  margin:0;
  color:#5b6678;
  font-weight:650;
  line-height:1.5;
  font-size:14px;
}
.section-intro{
  position:relative;
  background:
    linear-gradient(135deg,rgba(255,255,255,.9),rgba(245,249,255,.72)),
    radial-gradient(circle at 50% 0%, rgba(37,99,235,.12), transparent 40%) !important;
}
.course-grid{
  align-items:stretch;
}
.course-card{
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}
.course-card:hover{
  transform:translateY(-6px) scale(1.01) !important;
  box-shadow:0 32px 80px rgba(15,23,42,.20) !important;
}
.course-logo-wrap{
  box-shadow:0 16px 38px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.45) !important;
}
.roadmap{
  align-items:stretch;
  margin-bottom:28px;
}
.student-overview-card{
  position:relative;
  overflow:hidden;
}
.student-overview-card::after{
  content:"";
  position:absolute;
  right:-80px;
  top:-90px;
  width:240px;
  height:240px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(20,184,166,.16),transparent 70%);
}
.permission-points{
  display:grid;
  gap:9px;
  margin-top:18px;
}
.permission-points span{
  display:block;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.22);
  font-weight:850;
}
@media(max-width:1180px){
  .rotunda-detail-grid{grid-template-columns:1fr 1fr;}
  .detail-feature-wide{grid-column:1/-1;}
}
@media(max-width:720px){
  .rotunda-detail-grid{width:calc(100% - 24px);grid-template-columns:1fr;}
  .detail-feature-wide{grid-template-columns:1fr;padding:20px;}
  .detail-copy h2{font-size:32px;}
  .hero-logo-visual img[src*="rotunda-health-science-hero-detailed"]{max-width:330px !important;}
}

/* v1.29 section-by-section copy tightening and layout fixation */
.hero-copy .lead{max-width:620px;line-height:1.55 !important;font-size:clamp(15px,1.15vw,18px) !important;}
.hero{align-items:center;gap:clamp(28px,4vw,70px);}
.hero-actions{margin-top:22px !important;}
.trust-strip{margin-top:18px !important;}

.opening-slideshow{min-height:430px !important;display:flex;align-items:center;}
.slideshow-shell{min-height:350px !important;align-items:center;}
.slide-copy h2{font-size:clamp(32px,4.3vw,56px) !important;line-height:.98 !important;max-width:680px;}
.slide-copy p#slideText{max-width:640px;font-size:clamp(15px,1.25vw,18px) !important;line-height:1.5 !important;}
.slide-stage{min-height:260px;display:flex;align-items:center;justify-content:center;}

.mission-band{padding:22px 28px !important;min-height:0 !important;align-items:center;}
.mission-band h2{font-size:clamp(24px,2.5vw,38px) !important;line-height:1.05 !important;margin-bottom:6px !important;}
.mission-band p:last-child{font-size:clamp(14px,1.05vw,16px) !important;max-width:920px;}

.rotunda-detail-grid{gap:18px !important;margin-top:22px !important;}
.rotunda-detail-grid article{padding:22px !important;}
.detail-feature-wide{min-height:300px !important;}
.detail-feature h2{font-size:clamp(26px,3vw,42px) !important;line-height:1.05 !important;margin-bottom:10px !important;}
.detail-feature p,.detail-mini-card p{font-size:14px !important;line-height:1.45 !important;}
.detail-mini-card{min-height:260px !important;}
.detail-mini-card img{max-height:104px !important;object-fit:contain;}
.detail-mini-card h3{font-size:20px !important;margin:10px 0 6px !important;}
.detail-badges{gap:8px !important;margin-top:14px !important;}
.detail-badges span{padding:8px 11px !important;font-size:12px !important;}

.login-panel{padding:26px !important;gap:24px !important;}
.login-panel h2{font-size:clamp(26px,3vw,40px) !important;line-height:1.05 !important;}
.login-panel p,.account-note,.form-step,.form-help{font-size:14px !important;line-height:1.45 !important;}

.section-intro{padding:24px 26px !important;margin-top:24px !important;}
.section-intro h2{font-size:clamp(28px,3.2vw,44px) !important;line-height:1.05 !important;}
.section-intro p{font-size:15px !important;line-height:1.5 !important;max-width:760px;margin-left:auto;margin-right:auto;}

.course-grid{gap:18px !important;margin-top:22px !important;}
.course-card{min-height:410px !important;}
.course-card h3{font-size:clamp(20px,1.8vw,28px) !important;line-height:1.03 !important;}
.course-card p:not(.course-detail){font-size:13px !important;line-height:1.42 !important;}
.course-detail{font-size:11px !important;line-height:1.35 !important;}
.course-logo-wrap{width:74px !important;height:74px !important;}
.course-logo{max-width:54px !important;max-height:54px !important;}
.course-actions{gap:8px !important;}
.course-actions button{padding:8px 11px !important;font-size:11px !important;}

.roadmap{gap:18px !important;margin-top:24px !important;}
.roadmap-card{padding:26px !important;}
.roadmap-card h2{font-size:clamp(26px,3vw,42px) !important;line-height:1.05 !important;margin-bottom:10px !important;}
.roadmap-card p,.roadmap-card li{font-size:14px !important;line-height:1.5 !important;}
.outcome-list{display:grid;gap:8px;margin-top:14px;}
.permission-points{gap:8px !important;margin-top:16px !important;}
.permission-points span{padding:10px 12px !important;font-size:13px !important;}

@media(max-width:860px){
  .opening-slideshow{min-height:520px !important;}
  .slideshow-shell{min-height:470px !important;}
  .rotunda-detail-grid{grid-template-columns:1fr !important;}
  .detail-mini-card{min-height:auto !important;}
  .course-card{min-height:380px !important;}
}

/* v1.30: full formatted entry hero image */
.hero-entry-image{
  display:block !important;
  position:relative !important;
  padding:0 !important;
  border-radius:34px !important;
  overflow:hidden !important;
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(238,244,255,.72)) !important;
  border:1px solid rgba(219,230,246,.95) !important;
  box-shadow:0 30px 90px rgba(37,99,235,.16),0 10px 36px rgba(15,23,42,.08) !important;
  min-height:unset !important;
}
.hero-entry-image::before,
.hero-entry-image::after{
  display:none !important;
  content:none !important;
}
.entry-hero-art{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:3 / 2 !important;
  object-fit:cover !important;
  border-radius:34px !important;
  image-rendering:auto !important;
  transform:translateZ(0) !important;
}
.hero-entry-image .hero-hotspot{
  position:absolute !important;
  z-index:5 !important;
  display:block !important;
  border-radius:999px !important;
  text-indent:-9999px !important;
  overflow:hidden !important;
  outline-offset:4px !important;
}
.hero-entry-image .hero-hotspot:focus-visible{
  outline:3px solid rgba(37,99,235,.7) !important;
  background:rgba(255,255,255,.16) !important;
}
.hero-hotspot-login{left:5.1%;top:74.5%;width:16.4%;height:6.5%;}
.hero-hotspot-courses{left:23.2%;top:74.5%;width:15.6%;height:6.5%;}
.hero-hotspot-create{left:5.7%;top:83.6%;width:14.5%;height:3.2%;}
@media(max-width:860px){
  .hero-entry-image{border-radius:24px !important;}
  .entry-hero-art{border-radius:24px !important;}
}
@media(max-width:560px){
  .hero-entry-image{min-height:520px !important;background:#f6f8ff !important;}
  .entry-hero-art{height:520px !important;aspect-ratio:auto !important;object-fit:cover !important;object-position:33% center !important;}
  .hero-hotspot-login{left:6%;top:74%;width:27%;height:6.7%;}
  .hero-hotspot-courses{left:36%;top:74%;width:26%;height:6.7%;}
  .hero-hotspot-create{left:7%;top:83.5%;width:28%;height:4%;}
}


/* v1.31 authenticated content gate, course visuals, and locked course indicators */
body:not(.is-authenticated) .content-requires-login{
  display:none !important;
}
body.is-authenticated .public-access-note{
  display:none !important;
}
.public-access-note{
  width:min(1500px,calc(100% - 36px));
  margin:22px auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:24px 28px;
  border-radius:32px;
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(239,246,255,.74));
  border:1px solid rgba(148,163,184,.24);
  box-shadow:0 18px 60px rgba(15,23,42,.10);
}
.public-access-note h2{
  margin:4px 0 8px;
  font-size:clamp(24px,2.4vw,38px);
  line-height:1.05;
}
.public-access-note p:last-child{
  margin:0;
  color:#475569;
  max-width:850px;
  line-height:1.5;
}
.course-card{
  background:#071225 !important;
}
.course-card .course-art{
  filter:saturate(1.14) contrast(1.04) brightness(.98);
}
.course-card .course-overlay{
  background:
    linear-gradient(180deg,rgba(2,6,23,.03) 0%,rgba(2,6,23,.10) 32%,rgba(2,6,23,.58) 62%,rgba(2,6,23,.96) 100%),
    radial-gradient(circle at 28% 18%,rgba(255,255,255,.26),transparent 34%) !important;
}
.course-lock-badge{
  position:absolute;
  top:18px;
  right:18px;
  z-index:5;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:rgba(3,7,18,.42);
  border:1px solid rgba(255,255,255,.30);
  color:white;
  font-size:18px;
  box-shadow:0 14px 30px rgba(2,6,23,.30);
  backdrop-filter:blur(14px);
}
.course-card.approved-course .course-lock-badge{
  background:rgba(16,185,129,.30);
  border-color:rgba(187,247,208,.62);
}
.course-card.restricted-course .course-lock-badge{
  background:rgba(15,23,42,.52);
}
.course-card.pending-course .course-lock-badge{
  background:rgba(245,158,11,.32);
  border-color:rgba(253,230,138,.66);
}
.course-actions .open-course{
  background:rgba(15,23,42,.58) !important;
  border:1px solid rgba(255,255,255,.30) !important;
  color:#fff !important;
  backdrop-filter:blur(16px);
  box-shadow:0 14px 34px rgba(2,6,23,.24), inset 0 1px 0 rgba(255,255,255,.22) !important;
}
.course-actions .open-course:hover{
  background:rgba(30,41,59,.72) !important;
  transform:translateY(-1px);
}
.course-actions .request-course{
  background:linear-gradient(135deg,rgba(37,99,235,.78),rgba(124,58,237,.76)) !important;
  border:1px solid rgba(255,255,255,.25) !important;
}
.course-card .status{
  padding-left:12px !important;
}
.course-card:not(.approved-course) .status::before{
  content:"🔒 ";
}
.course-card.approved-course .status::before{
  content:"✓ ";
}
@media(max-width:760px){
  .public-access-note{
    flex-direction:column;
    align-items:flex-start;
    padding:22px;
  }
}


/* v1.32 exact course-card visual application
   Uses the approved generated card images as the full visual surface while preserving portal actions. */
.course-grid{
  align-items:stretch !important;
}
.course-card{
  aspect-ratio:303 / 506 !important;
  min-height:unset !important;
  padding:0 !important;
  border-radius:24px !important;
  overflow:hidden !important;
  background:#071225 !important;
  box-shadow:0 24px 54px rgba(15,23,42,.22), inset 0 0 0 1px rgba(255,255,255,.18) !important;
}
.course-card .course-art{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  z-index:0 !important;
  filter:none !important;
  transform:none !important;
}
.course-card:hover .course-art{
  transform:scale(1.015) !important;
  transition:transform .35s ease;
}
.course-card .course-door-frame,
.course-card .course-overlay{
  display:none !important;
}
.course-card .course-content{
  position:absolute !important;
  inset:0 !important;
  z-index:4 !important;
  padding:0 !important;
  display:block !important;
  pointer-events:none;
}
.course-card .course-logo-wrap,
.course-card .status,
.course-card h3,
.course-card .course-detail,
.course-card p{
  display:none !important;
}
.course-card .course-actions{
  position:absolute !important;
  left:7.5% !important;
  right:7.5% !important;
  bottom:7.9% !important;
  height:8.2% !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:6.5% !important;
  margin:0 !important;
  pointer-events:auto;
}
.course-card .course-actions button{
  opacity:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:transparent !important;
  cursor:pointer !important;
  width:100% !important;
  height:100% !important;
  padding:0 !important;
}
.course-lock-badge{
  top:14px !important;
  right:14px !important;
  z-index:8 !important;
  width:38px !important;
  height:38px !important;
  border-radius:14px !important;
  background:rgba(2,6,23,.48) !important;
  border:1px solid rgba(255,255,255,.34) !important;
  backdrop-filter:blur(13px) !important;
}
.course-card.approved-course .course-lock-badge{
  background:rgba(16,185,129,.34) !important;
}
.course-card.pending-course .course-lock-badge{
  background:rgba(245,158,11,.34) !important;
}
@media(max-width:560px){
  .course-card{aspect-ratio:303 / 506 !important;}
}


/* v1.33 modal viewport fix: password setup must always be scrollable and completable */
.modal{
  align-items:start;
  justify-items:center;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding:clamp(12px, 3vh, 28px) 18px;
  z-index:9999;
}
.modal-card,
.account-setup-card{
  max-height:calc(100dvh - 32px);
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  scrollbar-gutter:stable;
}
.account-setup-card{
  padding-bottom:18px;
}
.account-setup-card .modal-actions{
  position:sticky;
  bottom:-18px;
  background:linear-gradient(180deg, rgba(255,255,255,.86), #fff 35%);
  border-top:1px solid rgba(15,23,42,.08);
  padding:14px 0 10px;
  margin-top:18px;
  z-index:3;
}
.account-setup-card .modal-close{
  position:sticky;
  float:right;
  top:0;
  z-index:4;
}
@media(max-width:720px){
  .modal{padding:10px 10px 16px;place-items:start center;}
  .modal-card,.account-setup-card{width:100%;max-height:calc(100dvh - 20px);border-radius:22px;padding:22px;}
  .account-setup-card .modal-actions{bottom:-22px;padding-bottom:12px;}
  .setup-summary .summary-item{padding:12px 14px;}
  .modal-lead{font-size:15px;}
}

/* v1.35 mobile compatibility and app-ready responsive polish */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{min-width:320px;overflow-x:hidden;}
img,svg,video{max-width:100%;height:auto;}
button,a,input,select,summary{touch-action:manipulation;}
input,select,textarea,button{font-size:16px;}

/* Safer overall spacing on tablets and phones */
main,.site-header,footer{max-width:1440px;}
@media(max-width:900px){
  main,.site-header,footer{width:calc(100% - 24px) !important;}
  body{padding-top:8px;}
}
@media(max-width:480px){
  main,.site-header,footer{width:calc(100% - 16px) !important;}
}

/* App-like mobile header: compact identity + horizontal primary menu, with real dropdown panels */
@media(max-width:900px){
  .site-header.rotunda-header-v125.rotunda-header-v126{
    position:sticky !important;
    top:8px !important;
    width:calc(100% - 24px) !important;
    padding:10px !important;
    border-radius:24px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    z-index:3000 !important;
  }
  .site-header .brand-v125{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
  }
  .brand-logo-cube{width:42px !important;height:42px !important;border-radius:15px !important;flex:0 0 auto !important;}
  .brand-name-lockup b{font-size:13px !important;line-height:1.08 !important;}
  .brand-name-lockup small{font-size:10px !important;letter-spacing:.06em !important;}
  .ahs-main-nav{
    width:100% !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    justify-content:flex-start !important;
    gap:8px !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    -webkit-overflow-scrolling:touch !important;
    scrollbar-width:none !important;
    padding:6px !important;
    border-radius:20px !important;
    background:rgba(255,255,255,.68) !important;
  }
  .ahs-main-nav::-webkit-scrollbar{display:none !important;}
  .ahs-nav-menu,
  .ahs-nav-item{flex:0 0 auto !important;width:auto !important;}
  .ahs-nav-item{
    min-height:38px !important;
    padding:10px 13px !important;
    font-size:12px !important;
    border:1px solid rgba(219,230,246,.78) !important;
    background:rgba(255,255,255,.74) !important;
    box-shadow:0 8px 18px rgba(15,23,42,.06) !important;
  }
  .ahs-login-summary{background:linear-gradient(135deg,#2563eb,#7c3aed) !important;color:#fff !important;border-color:transparent !important;}
  .ahs-dropdown{
    position:fixed !important;
    top:118px !important;
    left:12px !important;
    right:12px !important;
    min-width:0 !important;
    width:auto !important;
    max-height:calc(100dvh - 144px) !important;
    overflow:auto !important;
    z-index:5000 !important;
    border-radius:24px !important;
    box-shadow:0 24px 80px rgba(15,23,42,.22) !important;
  }
  .ahs-dropdown-right{left:12px !important;right:12px !important;}
  .ahs-dropdown::before{display:none !important;}
  .ahs-dropdown a,.ahs-dropdown button{min-height:48px !important;font-size:15px !important;}
}
@media(max-width:480px){
  .site-header.rotunda-header-v125.rotunda-header-v126{width:calc(100% - 16px) !important;top:6px !important;border-radius:20px !important;}
  .ahs-dropdown{top:112px !important;left:8px !important;right:8px !important;max-height:calc(100dvh - 126px) !important;}
}

/* Hero image adapts instead of forcing the page to overflow */
@media(max-width:900px){
  .hero-entry-image{border-radius:28px !important;margin-top:10px !important;}
  .entry-hero-art{
    aspect-ratio:auto !important;
    height:auto !important;
    min-height:0 !important;
    object-fit:contain !important;
    object-position:center center !important;
    border-radius:28px !important;
  }
  .public-access-note{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
    padding:22px !important;
    border-radius:26px !important;
  }
  .public-access-note h2{font-size:clamp(22px,6vw,34px) !important;}
  .public-access-note button{width:100% !important;min-height:48px !important;}
}
@media(max-width:520px){
  .hero-entry-image{border-radius:22px !important;}
  .entry-hero-art{border-radius:22px !important;width:100% !important;height:auto !important;object-fit:contain !important;}
  .hero-hotspot-login,.hero-hotspot-courses,.hero-hotspot-create{display:none !important;}
}

/* Account/login workspace becomes comfortable on phones */
@media(max-width:820px){
  .login-panel.account-gateway,
  .login-panel{
    display:grid !important;
    grid-template-columns:1fr !important;
    padding:22px !important;
    border-radius:26px !important;
    gap:18px !important;
  }
  .account-tabs{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;}
  .account-tab{min-height:46px !important;}
  .login-form,.account-form{display:grid !important;grid-template-columns:1fr !important;gap:12px !important;}
  .login-form button,.account-form button,.primary,.secondary{width:100%;min-height:48px;}
  .panel-copy h2{font-size:clamp(28px,8vw,42px) !important;line-height:1.04 !important;}
}

/* Course cards: two columns on tablet, one polished column on phone */
@media(max-width:1180px){
  .course-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;}
}
@media(max-width:860px){
  .section-intro{padding:24px !important;border-radius:26px !important;margin:28px auto 18px !important;}
  .course-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;}
  .course-card{border-radius:22px !important;}
}
@media(max-width:560px){
  .course-grid{grid-template-columns:1fr !important;gap:18px !important;}
  .course-card{
    width:min(100%,360px) !important;
    margin-inline:auto !important;
    border-radius:24px !important;
    aspect-ratio:303/506 !important;
  }
  .course-lock-badge{width:34px !important;height:34px !important;top:12px !important;right:12px !important;border-radius:12px !important;font-size:15px !important;}
}

/* Learning/detail sections stack cleanly */
@media(max-width:920px){
  .opening-slideshow,.slideshow-shell{min-height:auto !important;}
  .slideshow-shell{grid-template-columns:1fr !important;padding:24px !important;gap:18px !important;}
  .slide-stage{min-height:240px !important;}
  .mission-band{grid-template-columns:auto 1fr !important;padding:22px !important;border-radius:26px !important;}
  .rotunda-detail-grid{display:grid !important;grid-template-columns:1fr !important;gap:16px !important;}
  .detail-feature-wide{grid-template-columns:1fr !important;}
  .detail-image-card{min-height:220px !important;}
  .roadmap{grid-template-columns:1fr !important;gap:16px !important;}
  .roadmap-card{padding:24px !important;border-radius:26px !important;}
}
@media(max-width:520px){
  .mission-band{grid-template-columns:1fr !important;text-align:left !important;}
  .mission-mark{width:48px !important;height:48px !important;}
  .slide-controls{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;}
  .detail-badges{display:grid !important;grid-template-columns:1fr !important;}
  .roadmap-card h2,.section-intro h2{font-size:clamp(26px,8vw,36px) !important;}
}

/* Modal behavior for mobile and app-like browser chrome */
@media(max-width:760px){
  .modal{padding:8px !important;align-items:start !important;}
  .modal-card,.account-setup-card,.admin-portal-card{
    width:100% !important;
    max-width:100% !important;
    max-height:calc(100dvh - 16px) !important;
    border-radius:22px !important;
    padding:20px !important;
    overflow-y:auto !important;
  }
  .setup-summary{grid-template-columns:1fr !important;gap:10px !important;}
  .modal-password-box{grid-template-columns:1fr !important;}
  .modal-actions{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;}
  .modal-actions button,.modal-actions a{width:100% !important;}
}

/* Admin dashboard: app-style tabs, separated panels, mobile scroll safety */
@media(max-width:1000px){
  .admin-dashboard-page,.admin-login-panel{padding:22px !important;border-radius:26px !important;}
  .admin-toolbar{display:grid !important;grid-template-columns:1fr !important;gap:12px !important;}
  .admin-actions-row{display:grid !important;grid-template-columns:1fr 1fr !important;gap:10px !important;}
  .admin-tool-tabs,
  .admin-tabs-page{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
    gap:10px !important;
    padding-bottom:8px !important;
    scrollbar-width:none !important;
  }
  .admin-tool-tabs::-webkit-scrollbar,.admin-tabs-page::-webkit-scrollbar{display:none !important;}
  .admin-tool-tab,.admin-tab-page{flex:0 0 auto !important;min-width:max-content !important;}
  .admin-grid-page,.admin-panel-grid{grid-template-columns:1fr !important;}
  .admin-form-grid{grid-template-columns:1fr !important;}
  .admin-form-grid label{grid-column:auto !important;}
}
@media(max-width:620px){
  .admin-actions-row{grid-template-columns:1fr !important;}
  .admin-login-panel h1,.admin-login-panel h2,.admin-toolbar h2{font-size:clamp(28px,8vw,40px) !important;line-height:1.05 !important;}
  .admin-tool-tab{padding:11px 13px !important;border-radius:18px !important;}
  .admin-tool-tab span{font-size:10px !important;}
  .admin-tool-tab b{font-size:13px !important;}
  .admin-request-card,.admin-empty,.admin-list-page > *{overflow-wrap:anywhere;}
}

/* Footer and bottom controls */
@media(max-width:700px){
  footer{display:grid !important;grid-template-columns:1fr !important;gap:12px !important;text-align:left !important;padding:18px 4px 28px !important;}
  .footer-admin,.admin-direct-link{width:100% !important;justify-content:center !important;}
}

/* PWA/app viewport comfort for devices with safe areas */
@supports(padding:max(0px)){
  body{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right));}
  .site-header.rotunda-header-v125.rotunda-header-v126{margin-top:max(0px,env(safe-area-inset-top));}
}


/* v1.40 session controls */
.session-choice {
  align-items: center;
  background: rgba(37, 99, 235, 0.06);
  border: 1px solid rgba(37, 99, 235, 0.12);
  border-radius: 16px;
  padding: 10px 12px;
  font-size: 0.92rem;
}
.session-choice input { width: auto !important; margin-right: 8px; }

/* v1.45 course-code registration and admin delete controls */
.course-code-preview {
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 16px;
  padding: 12px 14px;
  background: rgba(15, 23, 42, .45);
  color: rgba(255,255,255,.78);
  font-size: .92rem;
  line-height: 1.45;
}
.course-code-preview.verified {
  border-color: rgba(52, 211, 153, .55);
  background: rgba(6, 95, 70, .28);
  color: #ecfdf5;
}
.course-code-preview.invalid {
  border-color: rgba(248, 113, 113, .6);
  background: rgba(127, 29, 29, .28);
  color: #fee2e2;
}
.admin-mini-btn.danger,
.delete-student-account {
  border-color: rgba(248, 113, 113, .45) !important;
  background: rgba(127, 29, 29, .22) !important;
  color: #fecaca !important;
}
.admin-mini-btn.danger:hover,
.delete-student-account:hover {
  background: rgba(185, 28, 28, .34) !important;
}
.section-card .temp-code-box {
  margin-top: 10px;
  display: grid;
  gap: 4px;
}
.section-card .temp-code-box b {
  letter-spacing: .05em;
}
@media (max-width: 760px) {
  .student-directory-table th:nth-child(1),
  .student-directory-table td:nth-child(1),
  .student-directory-table th:nth-child(6),
  .student-directory-table td:nth-child(6) {
    min-width: 150px;
  }
}


/* v1.46 clean-slate admin course access controls */
.course-access-card .admin-actions-row { align-items: center; }
.admin-mini-btn.access-on { background: rgba(6, 95, 70, .16) !important; color: #065f46 !important; border: 1px solid rgba(16, 185, 129, .28) !important; }
.admin-mini-btn.access-on:hover { background: rgba(16, 185, 129, .24) !important; }
.admin-mini-btn.access-off { background: rgba(127, 29, 29, .14) !important; color: #991b1b !important; border: 1px solid rgba(248, 113, 113, .30) !important; }
.admin-mini-btn.access-off:hover { background: rgba(248, 113, 113, .22) !important; }
.course-card.inactive-course .course-visual,
.course-card.inactive-course .course-card-img { filter: grayscale(.35) brightness(.75); }


/* v1.47 locked course cards and clear admin access toggle states */
.course-actions .open-course { display: none !important; }
.course-actions { justify-content: flex-start !important; }
.course-actions .request-course { min-width: 150px; text-align: center; }
.course-actions .request-course.enter-course {
  background: linear-gradient(135deg, rgba(16,185,129,.88), rgba(20,184,166,.78)) !important;
  border-color: rgba(187,247,208,.55) !important;
  color: #fff !important;
}
.course-card:not(.approved-course) .course-art { filter: saturate(.9) contrast(1.04) brightness(.78); }
.course-card:not(.approved-course)::after {
  content: "LOCKED";
  position: absolute;
  top: 18px;
  left: 18px;
  z-index: 4;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(15,23,42,.55);
  color: rgba(255,255,255,.92);
  border: 1px solid rgba(255,255,255,.22);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  backdrop-filter: blur(14px);
}
.course-card.approved-course::after {
  content: "UNLOCKED";
  position: absolute;
  top: 18px;
  left: 18px;
  z-index: 4;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(16,185,129,.32);
  color: #ecfdf5;
  border: 1px solid rgba(187,247,208,.55);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  backdrop-filter: blur(14px);
}
.course-card.approved-course .course-lock-badge{ background:rgba(16,185,129,.36) !important; border-color:rgba(187,247,208,.70) !important; }
.course-card.pending-course .course-lock-badge,
.course-card.inactive-course .course-lock-badge,
.course-card.restricted-course .course-lock-badge { background:rgba(15,23,42,.62) !important; border-color:rgba(255,255,255,.24) !important; }
.course-request-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:8px;}
.admin-current-status{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:950;letter-spacing:.07em;border:1px solid transparent;}
.admin-current-status.status-active{background:rgba(16,185,129,.16);color:#065f46;border-color:rgba(16,185,129,.32);}
.admin-current-status.status-inactive{background:rgba(248,113,113,.14);color:#991b1b;border-color:rgba(248,113,113,.30);}
.admin-current-status.status-pending{background:rgba(245,158,11,.14);color:#92400e;border-color:rgba(245,158,11,.30);}
.course-access-card.access-card-active{border-color:rgba(16,185,129,.35) !important;box-shadow:0 18px 45px rgba(6,95,70,.10) !important;}
.course-access-card.access-card-inactive{border-color:rgba(248,113,113,.30) !important;box-shadow:0 18px 45px rgba(127,29,29,.08) !important;}
.access-toggle-row .admin-mini-btn[disabled]{opacity:.58;cursor:not-allowed;filter:saturate(.75);}
.access-toggle-row .admin-mini-btn.is-current{box-shadow:inset 0 0 0 2px rgba(255,255,255,.28), 0 8px 20px rgba(15,23,42,.08) !important;}
@media(max-width:760px){.course-request-header{align-items:flex-start}.admin-current-status{width:100%;justify-content:center}.course-card:not(.approved-course)::after,.course-card.approved-course::after{top:12px;left:12px;font-size:10px}}


/* v1.49 Workflow cleanup: simplified entry actions, fixed rotunda navigation, password reveal controls, and stronger footer */
.public-access-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center}
.public-access-actions .secondary,.admin-portal-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;padding:12px 16px;font-weight:950}
.password-field{display:flex !important;align-items:center;gap:8px;width:100%}
.password-field input{flex:1;min-width:0}
.password-toggle{border:1px solid rgba(15,23,42,.14);background:#fff;border-radius:12px;padding:10px 12px;cursor:pointer;font-weight:900;color:#1d2939}
body.is-authenticated .site-header.rotunda-header-v125.rotunda-header-v126{position:sticky !important;top:8px !important;z-index:1000 !important;backdrop-filter:blur(18px) !important}
body.is-authenticated .ahs-main-nav::after{content:"Rotunda  •  Messenger  •  EHealth";display:inline-flex;align-items:center;padding:8px 13px;border-radius:999px;background:linear-gradient(135deg,rgba(37,99,235,.10),rgba(124,58,237,.10));color:#1d2939;font-weight:950;font-size:12px;letter-spacing:.03em;white-space:nowrap}
footer{background:linear-gradient(135deg,#0b1533,#172554) !important;color:#dbeafe !important;border-radius:28px !important;border:1px solid rgba(255,255,255,.12) !important;box-shadow:0 20px 60px rgba(15,23,42,.18) !important}
footer a,footer button,footer strong{color:#fff !important}
@media(max-width:720px){.public-access-note{display:grid !important}.public-access-actions{justify-content:stretch}.public-access-actions .primary,.public-access-actions .secondary,.admin-portal-button{width:100%}.password-toggle{padding:10px}.site-header.rotunda-header-v125.rotunda-header-v126{position:sticky !important}}


/* v1.52 Course/Section lean admin cards + visible course logos */
.course-card .course-content{position:relative !important;z-index:4 !important;padding-top:112px !important;}
.course-card .course-logo-wrap{
  position:absolute !important;
  top:20px !important;
  left:20px !important;
  width:86px !important;
  height:86px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:rgba(255,255,255,.94) !important;
  border:1px solid rgba(219,234,254,.92) !important;
  box-shadow:0 18px 42px rgba(2,6,23,.28), inset 0 1px 0 rgba(255,255,255,.95) !important;
  backdrop-filter:blur(18px) saturate(1.2) !important;
  opacity:1 !important;
  visibility:visible !important;
  z-index:8 !important;
}
.course-card .course-logo{
  width:68px !important;
  height:68px !important;
  max-width:68px !important;
  max-height:68px !important;
  object-fit:contain !important;
  opacity:1 !important;
  display:block !important;
  filter:none !important;
  mix-blend-mode:normal !important;
}
.course-card .course-lock-badge{z-index:9 !important;}

.v52-section-group{gap:14px !important;background:linear-gradient(180deg,#ffffff,#f8fbff) !important;}
.org-section-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:4px;}
.org-section-heading b{font-size:1.05rem;}
.org-section-heading small{color:#64748b;font-weight:800;}
.section-row.section-row-lean{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  padding:14px !important;
  border-radius:20px !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(37,99,235,.12) !important;
  box-shadow:0 10px 26px rgba(15,23,42,.045) !important;
}
.section-main-line{display:grid;grid-template-columns:minmax(280px,1fr) minmax(260px,.72fr);gap:14px;align-items:center;}
.section-course-identity{display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center;min-width:0;}
.section-course-logo{width:58px;height:58px;border-radius:18px;object-fit:contain;background:#fff;border:1px solid rgba(37,99,235,.12);box-shadow:0 10px 20px rgba(15,23,42,.08);padding:6px;}
.section-overline,.section-metrics span,.section-code-line span{display:block;text-transform:uppercase;letter-spacing:.12em;color:#64748b;font-size:.62rem;font-weight:950;margin-bottom:3px;}
.section-course-identity b{display:block;font-size:1.02rem;line-height:1.1;color:#0b1533;}
.section-course-identity small,.section-students-line{display:block;color:#64748b;font-weight:750;margin-top:4px;}
.section-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.section-metrics div{padding:10px 12px;border-radius:16px;background:#f8fafc;border:1px solid rgba(15,23,42,.07);}
.section-metrics b{display:block;color:#0b1533;}
.section-status-active{color:#15803d !important;}
.section-status-locked{color:#991b1b !important;}
.section-code-line{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:10px 12px;border-radius:16px;background:#eef2ff;border:1px solid rgba(99,102,241,.16);}
.section-code-line span{margin:0;}
.section-code-line b{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;color:#3730a3;font-size:.92rem;overflow-wrap:anywhere;text-align:right;}
.section-actions-compact{margin-top:0 !important;gap:8px !important;}
.section-actions-compact .admin-mini-btn{min-width:0 !important;padding:8px 11px !important;font-size:.78rem !important;border-radius:999px !important;}
.section-actions-compact .delete-section{background:#fee2e2 !important;color:#991b1b !important;opacity:.78;}
.section-row-deleted .section-course-logo{filter:grayscale(1);opacity:.72;}
@media(max-width:760px){
  .course-card .course-logo-wrap{width:76px !important;height:76px !important;top:16px !important;left:16px !important;}
  .course-card .course-logo{width:58px !important;height:58px !important;max-width:58px !important;max-height:58px !important;}
  .section-main-line{grid-template-columns:1fr;}
  .section-metrics{grid-template-columns:1fr;}
  .section-code-line{align-items:flex-start;flex-direction:column;}
  .section-code-line b{text-align:left;}
}

/* v1.53 Homepage course visual correction
   The approved generated course-card images already include the course logo artwork.
   Remove the extra DOM logo badge that was sitting on top of the artwork and creating
   the large dark oval seen on desktop. Admin Course/Section logos remain visible through
   .section-course-logo and are not affected by this homepage-only correction. */
.course-grid .course-card .course-logo-wrap,
.course-grid .course-card .course-logo{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.course-grid .course-card .course-content{
  position:absolute !important;
  inset:0 !important;
  padding:0 !important;
  z-index:4 !important;
  pointer-events:none !important;
}
.course-grid .course-card .course-art{
  z-index:0 !important;
  opacity:1 !important;
  filter:none !important;
}
.course-grid .course-card:not(.approved-course) .course-art{
  filter:saturate(.98) contrast(1.04) brightness(.95) !important;
}
.course-grid .course-card.approved-course .course-art{
  filter:saturate(1.04) contrast(1.05) brightness(1.02) !important;
}


/* v1.54 hard removal of homepage course-logo overlay.
   The course artwork PNGs already include their own logo/visual; this fully removes
   the separate oval/logo badge and prevents any legacy pseudo overlay from covering it. */
.course-grid .course-card .course-logo-wrap,
.course-grid .course-card .course-logo{
  display:none !important;
  width:0 !important;
  height:0 !important;
  max-width:0 !important;
  max-height:0 !important;
  opacity:0 !important;
  visibility:hidden !important;
  overflow:hidden !important;
  pointer-events:none !important;
}
.course-grid .course-card::before,
.course-grid .course-card::after,
.course-grid .course-card .course-door-frame,
.course-grid .course-card .course-overlay{
  display:none !important;
  content:none !important;
  background:none !important;
  opacity:0 !important;
}
.course-grid .course-card .course-art{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  opacity:1 !important;
  z-index:0 !important;
}
.course-grid .course-card .course-content{
  background:transparent !important;
}

/* v1.57 Course preview and access portal polish */
.request-course.preview-course,
.course-card:not(.approved-course) .request-course {
  background: rgba(255,255,255,.92);
  color: #163044;
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 10px 26px rgba(8,20,31,.18);
}
.request-course.enter-course,
.course-card.approved-course .request-course {
  background: linear-gradient(135deg, #168f63, #45c489);
  color: #ffffff;
  border: 1px solid rgba(255,255,255,.36);
  box-shadow: 0 12px 30px rgba(22,143,99,.28);
}
#modalText p {
  line-height: 1.65;
  margin: .75rem 0;
}
.preview-section-title {
  margin-top: 1rem;
  font-weight: 800;
  color: #17364a;
  letter-spacing: .01em;
}
.preview-pill-grid {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin: .75rem 0 1rem;
}
.preview-pill-grid span {
  border: 1px solid rgba(23,54,74,.16);
  background: rgba(238,247,250,.9);
  color: #1c4a61;
  border-radius: 999px;
  padding: .42rem .7rem;
  font-weight: 700;
  font-size: .82rem;
}
.preview-note {
  border-left: 4px solid rgba(69,196,137,.7);
  background: rgba(243,250,247,.95);
  border-radius: 14px;
  padding: .8rem .9rem;
  color: #204254;
}
#modalRequest:disabled {
  opacity: .6;
  cursor: not-allowed;
}
.course-room-body {
  min-height: 100vh;
  background: radial-gradient(circle at 20% 0%, rgba(139,213,232,.28), transparent 34%), linear-gradient(135deg, #f7fbfd, #edf6f8 52%, #f7faf8);
  color: #102a3b;
}
.course-room-shell {
  width: min(1120px, calc(100% - 2rem));
  margin: 0 auto;
  padding: 2rem 0 3rem;
}
.course-room-hero {
  display: grid;
  grid-template-columns: minmax(220px, 340px) 1fr;
  gap: 1.4rem;
  align-items: center;
  border: 1px solid rgba(24,54,75,.12);
  border-radius: 34px;
  padding: 1.1rem;
  background: rgba(255,255,255,.82);
  box-shadow: 0 24px 70px rgba(14,38,55,.13);
  overflow: hidden;
}
.course-room-hero img {
  width: 100%;
  aspect-ratio: 1.2 / 1;
  object-fit: cover;
  border-radius: 26px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.45);
}
.course-room-hero h1 {
  margin: .25rem 0 .75rem;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: .98;
}
.course-room-hero p {
  line-height: 1.7;
  color: #37576a;
  font-size: 1.02rem;
}
.course-room-status {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: 1rem;
}
.course-room-status span,
.module-card span {
  border-radius: 999px;
  padding: .45rem .75rem;
  font-size: .82rem;
  font-weight: 800;
  color: #17405a;
  background: rgba(230,245,250,.96);
  border: 1px solid rgba(32,86,112,.12);
}
.course-room-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  margin-top: 1.3rem;
}
.module-card {
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(24,54,75,.12);
  border-radius: 24px;
  padding: 1.1rem;
  box-shadow: 0 16px 46px rgba(14,38,55,.1);
}
.module-card h3 {
  margin: .8rem 0 .45rem;
}
.module-card p {
  color: #49687a;
  line-height: 1.55;
}
.course-room-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1.2rem;
}
@media (max-width: 820px) {
  .course-room-hero,
  .course-room-grid {
    grid-template-columns: 1fr;
  }
}

/* v1.58 Course card access cleanup
   Course-card image assets have had the old baked-in two-button footer removed.
   The live portal now renders exactly one functional access control over the clean footer:
   Preview when restricted/pending, Open Access when admin-approved. */
.course-grid .course-card .course-actions{
  position:absolute !important;
  left:7.5% !important;
  right:7.5% !important;
  bottom:7.2% !important;
  height:auto !important;
  min-height:44px !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  margin:0 !important;
  z-index:12 !important;
  pointer-events:auto !important;
}
.course-grid .course-card .course-actions button,
.course-grid .course-card .request-course{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  width:100% !important;
  height:44px !important;
  padding:0 16px !important;
  border-radius:15px !important;
  font-size:14px !important;
  font-weight:950 !important;
  letter-spacing:.01em !important;
  color:#10213a !important;
  background:rgba(255,255,255,.94) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 12px 28px rgba(2,6,23,.22), inset 0 1px 0 rgba(255,255,255,.88) !important;
  cursor:pointer !important;
}
.course-grid .course-card.approved-course .request-course,
.course-grid .course-card .request-course.enter-course{
  color:#ffffff !important;
  background:linear-gradient(135deg,#129869,#48c98f) !important;
  border:1px solid rgba(190,255,224,.62) !important;
  box-shadow:0 14px 34px rgba(18,152,105,.32), inset 0 1px 0 rgba(255,255,255,.34) !important;
}
.course-grid .course-card.pending-course .request-course{
  color:#493018 !important;
  background:linear-gradient(135deg,#fff7ed,#fde68a) !important;
  border-color:rgba(251,191,36,.38) !important;
}
.course-grid .course-card .course-content{
  pointer-events:none !important;
}
.course-grid .course-card .course-actions,
.course-grid .course-card .course-actions *{
  pointer-events:auto !important;
}

/* v1.59 Animated course-card rebuild.
   The previous generated PNG cards included old button artwork baked into the image.
   This version treats each course as a layered portal card with independent animated logos,
   live text, and one real access button only. */
.course-grid{
  grid-template-columns:repeat(auto-fit,minmax(248px,1fr)) !important;
  gap:24px !important;
}
.course-grid .course-card{
  --card-a:#2436a8;
  --card-b:#7c3aed;
  --card-c:#0f172a;
  position:relative !important;
  aspect-ratio:303 / 506 !important;
  min-height:460px !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 50% 24%, rgba(255,255,255,.24), transparent 24%),
    radial-gradient(circle at 82% 12%, rgba(255,255,255,.18), transparent 26%),
    linear-gradient(145deg,var(--card-a),var(--card-b) 45%,var(--card-c)) !important;
  border:1px solid rgba(255,255,255,.26) !important;
  box-shadow:0 28px 70px rgba(15,23,42,.26), inset 0 1px 0 rgba(255,255,255,.18) !important;
  isolation:isolate;
}
.course-grid .course-card[data-slug="educational-studies"]{--card-a:#5b21b6;--card-b:#8b5cf6;--card-c:#170b3d;}
.course-grid .course-card[data-slug="hipaa"]{--card-a:#143b9c;--card-b:#2563eb;--card-c:#061334;}
.course-grid .course-card[data-slug="cma"]{--card-a:#2734ba;--card-b:#7c3aed;--card-c:#130b35;}
.course-grid .course-card[data-slug="allied-health-professional"]{--card-a:#064e5f;--card-b:#0891b2;--card-c:#06202c;}
.course-grid .course-card[data-slug="medical-terminology"]{--card-a:#7e1d77;--card-b:#c026d3;--card-c:#2b082b;}
.course-grid .course-card[data-slug="anatomy-physiology"]{--card-a:#0f766e;--card-b:#14b8a6;--card-c:#062621;}
.course-grid .course-card[data-slug="administrative-ma"]{--card-a:#075985;--card-b:#0284c7;--card-c:#06223a;}
.course-grid .course-card[data-slug="radiation-science"]{--card-a:#92400e;--card-b:#f59e0b;--card-c:#2b1606;}
.course-grid .course-card[data-slug="radiochemistry"]{--card-a:#9d174d;--card-b:#ec4899;--card-c:#31081d;}
.course-grid .course-card[data-slug="nuclear-medicine"]{--card-a:#0369a1;--card-b:#38bdf8;--card-c:#061827;}
.course-grid .course-card::before{
  content:"" !important;
  display:block !important;
  position:absolute;
  inset:0;
  z-index:0;
  background:
    linear-gradient(90deg,transparent 0 48%,rgba(255,255,255,.18) 49%,transparent 51% 100%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.045) 0 1px, transparent 1px 38px),
    repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px, transparent 1px 34px);
  opacity:.42 !important;
}
.course-grid .course-card::after{
  content:"" !important;
  display:block !important;
  position:absolute;
  left:10%;right:10%;bottom:28%;height:2px;
  z-index:1;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);
  box-shadow:0 0 24px rgba(255,255,255,.75);
  animation:coursePulseLine 3.8s ease-in-out infinite;
}
.course-grid .course-card .course-art{
  display:none !important;
}
.course-grid .course-card .course-door-frame,
.course-grid .course-card .course-overlay,
.course-grid .course-card .course-logo-wrap,
.course-grid .course-card .course-logo{
  display:none !important;
}
.course-kinetic-logo{
  position:absolute;
  top:58px;
  left:50%;
  width:156px;
  height:156px;
  transform:translateX(-50%);
  z-index:3;
  display:grid;
  place-items:center;
  pointer-events:none;
  animation:courseLogoFloat 5.6s ease-in-out infinite;
}
.course-kinetic-logo::before{
  content:"";
  position:absolute;
  inset:18px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.82);
  box-shadow:0 22px 60px rgba(2,6,23,.26), inset 0 1px 0 rgba(255,255,255,.95);
  backdrop-filter:blur(18px) saturate(1.35);
}
.course-kinetic-logo img{
  position:relative;
  z-index:2;
  width:92px;
  height:92px;
  object-fit:contain;
  filter:drop-shadow(0 12px 18px rgba(15,23,42,.26));
  animation:courseLogoListen 4.2s ease-in-out infinite;
}
.kinetic-ring{
  position:absolute;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 0 26px rgba(255,255,255,.18);
}
.ring-one{inset:0;animation:courseRingSpin 13s linear infinite;}
.ring-two{inset:13px;border-style:dashed;opacity:.68;animation:courseRingSpin 18s linear reverse infinite;}
.course-grid .course-card .course-content{
  position:absolute !important;
  inset:0 !important;
  z-index:4 !important;
  padding:235px 22px 22px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
  gap:8px !important;
  pointer-events:none !important;
  background:linear-gradient(180deg,transparent 0 42%,rgba(2,6,23,.18) 52%,rgba(2,6,23,.72) 100%) !important;
}
.course-grid .course-card .status{
  display:inline-flex !important;
  align-self:flex-start;
  width:auto;
  opacity:1 !important;
  visibility:visible !important;
  padding:7px 10px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.16) !important;
  border:1px solid rgba(255,255,255,.24) !important;
  color:#fff !important;
  font-size:10px !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  font-weight:950 !important;
  backdrop-filter:blur(12px) !important;
}
.course-grid .course-card h3,
.course-grid .course-card .course-detail,
.course-grid .course-card p{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  color:#fff !important;
  margin:0 !important;
  text-shadow:0 2px 14px rgba(2,6,23,.32);
}
.course-grid .course-card h3{
  font-size:clamp(24px,2.1vw,32px) !important;
  line-height:1.02 !important;
  letter-spacing:-.05em !important;
  font-weight:1000 !important;
}
.course-grid .course-card .course-detail{
  color:rgba(255,255,255,.86) !important;
  font-size:11px !important;
  line-height:1.35 !important;
  font-weight:850 !important;
}
.course-grid .course-card p:not(.course-detail){
  color:rgba(255,255,255,.82) !important;
  font-size:12px !important;
  line-height:1.42 !important;
  font-weight:650 !important;
}
.course-grid .course-card .course-actions{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  height:auto !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  margin-top:12px !important;
  pointer-events:auto !important;
}
.course-grid .course-card .course-actions button{
  opacity:1 !important;
  color:#10213f !important;
  width:100% !important;
  height:auto !important;
  min-height:46px !important;
  border-radius:15px !important;
  padding:12px 14px !important;
  font-size:13px !important;
  font-weight:1000 !important;
  letter-spacing:.01em !important;
  border:1px solid rgba(255,255,255,.60) !important;
  background:rgba(255,255,255,.92) !important;
  box-shadow:0 16px 34px rgba(2,6,23,.20) !important;
  cursor:pointer !important;
}
.course-grid .course-card.approved-course .course-actions button{
  color:#fff !important;
  background:linear-gradient(135deg,#059669,#34d399) !important;
  border-color:rgba(187,247,208,.62) !important;
}
.course-grid .course-card .course-lock-badge{
  top:16px !important;
  right:16px !important;
  z-index:8 !important;
}
.course-grid .course-card:hover .course-kinetic-logo{
  animation-duration:3.4s;
}
.course-grid .course-card:hover .course-kinetic-logo img{
  transform:scale(1.05);
}
@keyframes courseLogoFloat{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(-10px)}
}
@keyframes courseLogoListen{
  0%,100%{transform:scale(1) rotate(0deg)}
  35%{transform:scale(1.035) rotate(-1.5deg)}
  65%{transform:scale(.99) rotate(1.5deg)}
}
@keyframes courseRingSpin{to{transform:rotate(360deg)}}
@keyframes coursePulseLine{
  0%,100%{opacity:.42;transform:scaleX(.78)}
  50%{opacity:.92;transform:scaleX(1)}
}
@media(max-width:760px){
  .course-grid .course-card{min-height:430px !important;}
  .course-kinetic-logo{top:48px;width:138px;height:138px;}
  .course-kinetic-logo img{width:80px;height:80px;}
  .course-grid .course-card .course-content{padding:212px 18px 18px !important;}
}
@media(prefers-reduced-motion:reduce){
  .course-kinetic-logo,.course-kinetic-logo img,.kinetic-ring,.course-grid .course-card::after{animation:none !important;}
}


/* v1.60 definitive course-card rebuild: no baked image cards, no old image buttons.
   This forces the homepage/student course cards to render as CSS/HTML cards only. */
.course-grid .course-card .course-art,
.course-grid .course-card img.course-art,
.course-grid .course-card .course-card-img,
.course-grid .course-card .course-visual{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  width:0 !important;
  height:0 !important;
  pointer-events:none !important;
}
.course-grid .course-card{
  background:
    radial-gradient(circle at 50% 23%, rgba(255,255,255,.24), transparent 25%),
    radial-gradient(circle at 78% 14%, rgba(255,255,255,.14), transparent 23%),
    linear-gradient(145deg,var(--card-a),var(--card-b) 45%,var(--card-c)) !important;
}
.course-grid .course-card .course-content{
  padding-top:232px !important;
  justify-content:flex-end !important;
}
.course-grid .course-card .course-actions button::before,
.course-grid .course-card .course-actions button::after{
  display:none !important;
  content:none !important;
}
.course-grid .course-card .course-actions button{
  text-transform:none !important;
}
.course-grid .course-card:not(.approved-course) .course-actions button{
  background:rgba(255,255,255,.94) !important;
  color:#14213d !important;
}
.course-grid .course-card.approved-course .course-actions button,
.course-grid .course-card .course-actions button.enter-course{
  background:linear-gradient(135deg,#059669,#34d399) !important;
  color:#fff !important;
}
.course-grid .course-card .course-actions{
  grid-template-columns:1fr !important;
}
.course-grid .course-card .course-actions button + button{
  display:none !important;
}


/* v1.61 Layer-pack course visuals: realistic separated background + animated main logo.
   Uses uploaded enhanced layer packs so each course has an individual reusable logo and background. */
.course-grid .course-card{
  background:#07111f !important;
}
.course-grid .course-card[data-slug="educational-studies"]{--course-bg:url("assets/course-layers/educational-studies/background.png?v=62");}
.course-grid .course-card[data-slug="hipaa"]{--course-bg:url("assets/course-layers/hipaa/background.png?v=62");}
.course-grid .course-card[data-slug="cma"]{--course-bg:url("assets/course-layers/cma/background.png?v=62");}
.course-grid .course-card[data-slug="allied-health-professional"]{--course-bg:url("assets/course-layers/allied-health-professional/background.png?v=62");}
.course-grid .course-card[data-slug="medical-terminology"]{--course-bg:url("assets/course-layers/medical-terminology/background.png?v=62");}
.course-grid .course-card[data-slug="anatomy-physiology"]{--course-bg:url("assets/course-layers/anatomy-physiology/background.png?v=62");}
.course-grid .course-card[data-slug="administrative-ma"]{--course-bg:url("assets/course-layers/administrative-ma/background.png?v=62");}
.course-grid .course-card[data-slug="radiation-science"]{--course-bg:url("assets/course-layers/radiation-science/background.png?v=62");}
.course-grid .course-card[data-slug="radiochemistry"]{--course-bg:url("assets/course-layers/radiochemistry/background.png?v=62");}
.course-grid .course-card[data-slug="nuclear-medicine"]{--course-bg:url("assets/course-layers/nuclear-medicine/background.png?v=62");}
.course-layer-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background-image:var(--course-bg);
  background-size:cover;
  background-position:center;
  filter:saturate(1.1) contrast(1.04) brightness(.78);
  transform:scale(1.012);
  transition:filter .25s ease, transform .35s ease;
}
.course-grid .course-card.approved-course .course-layer-bg{filter:saturate(1.16) contrast(1.05) brightness(.95);}
.course-grid .course-card:hover .course-layer-bg{transform:scale(1.045);filter:saturate(1.2) contrast(1.08) brightness(.92);}
.course-grid .course-card::before{z-index:1 !important;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 35%),repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px, transparent 1px 42px) !important;}
.course-grid .course-card::after{z-index:2 !important;bottom:31% !important;}
.course-kinetic-logo{z-index:3 !important;top:44px !important;width:190px !important;height:190px !important;}
.course-kinetic-logo::before{inset:21px !important;background:rgba(255,255,255,.70) !important;border:1px solid rgba(255,255,255,.70) !important;box-shadow:0 24px 70px rgba(2,6,23,.32), inset 0 1px 0 rgba(255,255,255,.95) !important;}
.course-kinetic-logo img{width:132px !important;height:132px !important;object-fit:contain !important;filter:drop-shadow(0 18px 24px rgba(2,6,23,.38)) !important;}
.course-grid .course-card .course-content{
  padding:244px 22px 22px !important;
  background:linear-gradient(180deg,transparent 0 40%,rgba(2,6,23,.18) 50%,rgba(2,6,23,.78) 100%) !important;
}
@media(max-width:760px){
  .course-kinetic-logo{top:42px !important;width:160px !important;height:160px !important;}
  .course-kinetic-logo img{width:112px !important;height:112px !important;}
  .course-grid .course-card .course-content{padding:220px 18px 18px !important;}
}
.course-room-layered{position:relative;overflow:hidden;isolation:isolate;}
.course-room-bg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center;filter:saturate(1.1) brightness(.7);transform:scale(1.03);}
.course-room-layered::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(2,6,23,.72),rgba(2,6,23,.22));}
.course-room-layered > *:not(.course-room-bg){position:relative;z-index:2;}
.course-room-logo{width:min(280px,42vw) !important;max-height:300px !important;object-fit:contain !important;background:rgba(255,255,255,.72);border-radius:30px;padding:20px;box-shadow:0 24px 70px rgba(2,6,23,.32);animation:courseLogoFloat 5.6s ease-in-out infinite;}
@media(prefers-reduced-motion:reduce){.course-room-logo,.course-kinetic-logo,.course-kinetic-logo img,.ring-one,.ring-two{animation:none !important;}}

/* v1.62 trimmed course-logo system + distinct animated course marks.
   Each course now uses a transparent, trimmed reusable logo asset in /assets/course-logos/.
   Backgrounds remain separated from the logo layer so cards, course rooms, and admin references can reuse them independently. */
.course-grid .course-card{
  --logo-glow: rgba(255,255,255,.72);
  --logo-accent: rgba(56,189,248,.52);
}
.course-grid .course-card .course-layer-bg{
  background-size: cover !important;
  background-position: center !important;
}
.course-grid .course-card .course-kinetic-logo{
  top:38px !important;
  width:198px !important;
  height:198px !important;
  animation: courseMarkFloat 5.6s ease-in-out infinite !important;
  transform-origin:center center;
}
.course-grid .course-card .course-kinetic-logo::before{
  background: radial-gradient(circle at 30% 18%, rgba(255,255,255,.94), rgba(255,255,255,.66) 52%, rgba(255,255,255,.34)) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:
    0 24px 72px rgba(2,6,23,.34),
    0 0 44px var(--logo-accent),
    inset 0 1px 0 rgba(255,255,255,.98) !important;
}
.course-grid .course-card .course-kinetic-logo::after{
  content:"";
  position:absolute;
  inset:24px;
  z-index:4;
  border-radius:999px;
  pointer-events:none;
  background:linear-gradient(115deg, transparent 0 32%, rgba(255,255,255,.65) 46%, transparent 58% 100%);
  transform:translateX(-135%) rotate(12deg);
  opacity:.0;
  animation:courseLogoGlisten 4.9s ease-in-out infinite;
  mix-blend-mode:screen;
}
.course-grid .course-card .course-kinetic-logo img{
  width:138px !important;
  height:138px !important;
  object-fit:contain !important;
  filter: drop-shadow(0 18px 24px rgba(2,6,23,.42)) drop-shadow(0 0 18px var(--logo-accent)) !important;
  animation:courseLogoBreathe 4.4s ease-in-out infinite !important;
  transform-origin:center center;
}
.course-grid .course-card[data-slug="educational-studies"]{--logo-accent:rgba(196,181,253,.56)}
.course-grid .course-card[data-slug="hipaa"]{--logo-accent:rgba(147,197,253,.58)}
.course-grid .course-card[data-slug="cma"]{--logo-accent:rgba(221,214,254,.62)}
.course-grid .course-card[data-slug="allied-health-professional"]{--logo-accent:rgba(103,232,249,.60)}
.course-grid .course-card[data-slug="medical-terminology"]{--logo-accent:rgba(240,171,252,.58)}
.course-grid .course-card[data-slug="anatomy-physiology"]{--logo-accent:rgba(94,234,212,.60)}
.course-grid .course-card[data-slug="administrative-ma"]{--logo-accent:rgba(125,211,252,.56)}
.course-grid .course-card[data-slug="radiation-science"]{--logo-accent:rgba(252,211,77,.62)}
.course-grid .course-card[data-slug="radiochemistry"]{--logo-accent:rgba(249,168,212,.60)}
.course-grid .course-card[data-slug="nuclear-medicine"]{--logo-accent:rgba(125,211,252,.64)}

/* Give each course its own personality while keeping the motion subtle and professional. */
.course-grid .course-card[data-slug="educational-studies"] .course-kinetic-logo img{animation:courseLogoNod 5.2s ease-in-out infinite !important;}
.course-grid .course-card[data-slug="hipaa"] .course-kinetic-logo img{animation:courseLogoSecurePulse 4.8s ease-in-out infinite !important;}
.course-grid .course-card[data-slug="cma"] .course-kinetic-logo img{animation:courseLogoHeartbeat 3.6s ease-in-out infinite !important;}
.course-grid .course-card[data-slug="allied-health-professional"] .course-kinetic-logo img{animation:courseLogoTeamFloat 4.9s ease-in-out infinite !important;}
.course-grid .course-card[data-slug="medical-terminology"] .course-kinetic-logo img{animation:courseLogoLetterSpark 5.4s ease-in-out infinite !important;}
.course-grid .course-card[data-slug="anatomy-physiology"] .course-kinetic-logo img{animation:courseLogoBreatheDeep 5.8s ease-in-out infinite !important;}
.course-grid .course-card[data-slug="administrative-ma"] .course-kinetic-logo img{animation:courseLogoFileSlide 5.0s ease-in-out infinite !important;}
.course-grid .course-card[data-slug="radiation-science"] .course-kinetic-logo img{animation:courseLogoRadiate 4.4s ease-in-out infinite !important;}
.course-grid .course-card[data-slug="radiochemistry"] .course-kinetic-logo img{animation:courseLogoIonDrift 5.6s ease-in-out infinite !important;}
.course-grid .course-card[data-slug="nuclear-medicine"] .course-kinetic-logo img{animation:courseLogoOrbitBreathe 5.2s ease-in-out infinite !important;}
.course-grid .course-card:hover .course-kinetic-logo img{
  filter: drop-shadow(0 22px 30px rgba(2,6,23,.44)) drop-shadow(0 0 28px var(--logo-accent)) !important;
}

/* Course logos reused in admin Course/Section rows. */
.section-course-logo{
  width:52px !important;
  height:52px !important;
  object-fit:contain !important;
  background:rgba(255,255,255,.86) !important;
  border-radius:16px !important;
  padding:6px !important;
  box-shadow:0 10px 24px rgba(15,23,42,.16) !important;
}
.course-room-logo{
  object-fit:contain !important;
  background:rgba(255,255,255,.70) !important;
  animation:courseRoomLogoEntrance 6.2s ease-in-out infinite !important;
}

@keyframes courseMarkFloat{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(-12px)}
}
@keyframes courseLogoGlisten{
  0%,38%{opacity:0;transform:translateX(-135%) rotate(12deg)}
  48%{opacity:.72}
  62%{opacity:0;transform:translateX(135%) rotate(12deg)}
  100%{opacity:0;transform:translateX(135%) rotate(12deg)}
}
@keyframes courseLogoBreathe{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
@keyframes courseLogoNod{0%,100%{transform:translateY(0) rotate(0) scale(1)}40%{transform:translateY(-4px) rotate(-2deg) scale(1.03)}70%{transform:translateY(2px) rotate(1.2deg) scale(.995)}}
@keyframes courseLogoSecurePulse{0%,100%{transform:scale(1);filter:drop-shadow(0 18px 24px rgba(2,6,23,.42))}50%{transform:scale(1.055);filter:drop-shadow(0 18px 24px rgba(2,6,23,.42)) drop-shadow(0 0 22px rgba(147,197,253,.7))}}
@keyframes courseLogoHeartbeat{0%,100%{transform:scale(1)}14%{transform:scale(1.055)}24%{transform:scale(.99)}38%{transform:scale(1.045)}58%{transform:scale(1)}}
@keyframes courseLogoTeamFloat{0%,100%{transform:translateX(0) translateY(0) scale(1)}45%{transform:translateX(4px) translateY(-5px) scale(1.035)}70%{transform:translateX(-3px) translateY(2px) scale(1)}}
@keyframes courseLogoLetterSpark{0%,100%{transform:rotate(0) scale(1)}35%{transform:rotate(-2deg) scale(1.04)}64%{transform:rotate(2deg) scale(1.01)}}
@keyframes courseLogoBreatheDeep{0%,100%{transform:scale(1)}50%{transform:scale(1.07)}}
@keyframes courseLogoFileSlide{0%,100%{transform:translateX(0) scale(1)}45%{transform:translateX(5px) scale(1.025)}72%{transform:translateX(-3px) scale(1)}}
@keyframes courseLogoRadiate{0%,100%{transform:scale(1) rotate(0deg)}50%{transform:scale(1.065) rotate(2deg)}}
@keyframes courseLogoIonDrift{0%,100%{transform:translate(0,0) rotate(0) scale(1)}33%{transform:translate(3px,-4px) rotate(-2deg) scale(1.035)}66%{transform:translate(-3px,2px) rotate(1.5deg) scale(1.01)}}
@keyframes courseLogoOrbitBreathe{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.055) rotate(-2deg)}}
@keyframes courseRoomLogoEntrance{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.035)}}
@media(max-width:760px){
  .course-grid .course-card .course-kinetic-logo{top:34px !important;width:168px !important;height:168px !important;}
  .course-grid .course-card .course-kinetic-logo img{width:116px !important;height:116px !important;}
  .course-grid .course-card .course-content{padding-top:214px !important;}
}
@media(prefers-reduced-motion:reduce){
  .course-grid .course-card .course-kinetic-logo,
  .course-grid .course-card .course-kinetic-logo img,
  .course-grid .course-card .course-kinetic-logo::after,
  .course-room-logo{animation:none !important;}
}

/* v1.63 Course Background + Logo Identity Polish
   - Cleaner original-style backgrounds from layer packs
   - Larger, centered course identity logos in circular orbs
   - Equal card sizing and protected text/button zones
   - Distinct randomized-feel motion timing per course */
.course-grid{
  align-items:stretch !important;
  grid-auto-rows:1fr !important;
}
.course-grid .course-card{
  min-height:560px !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
  overflow:hidden !important;
  border-radius:30px !important;
  --motion-delay:0s;
  --logo-size:214px;
  --logo-img-size:194px;
}
.course-grid .course-card[data-slug="educational-studies"]{--course-bg:url("assets/course-polish/educational-studies/background-original-clean.png?v=63");--motion-delay:-.35s;--orbit-speed:8.2s;--pulse-speed:5.8s;}
.course-grid .course-card[data-slug="hipaa"]{--course-bg:url("assets/course-polish/hipaa/background-original-clean.png?v=63");--motion-delay:-1.1s;--orbit-speed:7.4s;--pulse-speed:4.9s;}
.course-grid .course-card[data-slug="cma"]{--course-bg:url("assets/course-polish/cma/background-original-clean.png?v=63");--motion-delay:-.72s;--orbit-speed:7.9s;--pulse-speed:3.7s;}
.course-grid .course-card[data-slug="allied-health-professional"]{--course-bg:url("assets/course-polish/allied-health-professional/background-original-clean.png?v=63");--motion-delay:-1.8s;--orbit-speed:8.7s;--pulse-speed:5.2s;}
.course-grid .course-card[data-slug="medical-terminology"]{--course-bg:url("assets/course-polish/medical-terminology/background-original-clean.png?v=63");--motion-delay:-.18s;--orbit-speed:9.1s;--pulse-speed:5.5s;}
.course-grid .course-card[data-slug="anatomy-physiology"]{--course-bg:url("assets/course-polish/anatomy-physiology/background-original-clean.png?v=63");--motion-delay:-2.05s;--orbit-speed:8.5s;--pulse-speed:6.0s;}
.course-grid .course-card[data-slug="administrative-ma"]{--course-bg:url("assets/course-polish/administrative-ma/background-original-clean.png?v=63");--motion-delay:-.94s;--orbit-speed:7.6s;--pulse-speed:5.1s;}
.course-grid .course-card[data-slug="radiation-science"]{--course-bg:url("assets/course-polish/radiation-science/background-original-clean.png?v=63");--motion-delay:-1.42s;--orbit-speed:6.8s;--pulse-speed:4.4s;}
.course-grid .course-card[data-slug="radiochemistry"]{--course-bg:url("assets/course-polish/radiochemistry/background-original-clean.png?v=63");--motion-delay:-2.55s;--orbit-speed:8.9s;--pulse-speed:5.7s;}
.course-grid .course-card[data-slug="nuclear-medicine"]{--course-bg:url("assets/course-polish/nuclear-medicine/background-original-clean.png?v=63");--motion-delay:-1.25s;--orbit-speed:7.2s;--pulse-speed:5.0s;}
.course-grid .course-card .course-layer-bg{
  background-image:var(--course-bg) !important;
  background-size:cover !important;
  background-position:center !important;
  filter:saturate(1.08) contrast(1.03) brightness(.92) !important;
  opacity:.96 !important;
  transform:scale(1.006) !important;
}
.course-grid .course-card:hover .course-layer-bg{
  transform:scale(1.025) !important;
  filter:saturate(1.13) contrast(1.05) brightness(.98) !important;
}
.course-grid .course-card::before{
  z-index:1 !important;
  background:
    radial-gradient(circle at 50% 25%, rgba(255,255,255,.10), transparent 32%),
    linear-gradient(180deg, rgba(2,6,23,.08) 0%, rgba(2,6,23,.10) 42%, rgba(2,6,23,.52) 70%, rgba(2,6,23,.88) 100%) !important;
}
.course-grid .course-card::after{
  z-index:2 !important;
  bottom:33% !important;
  opacity:.48 !important;
  animation:courseCardSlowSweep var(--orbit-speed,8s) ease-in-out infinite !important;
  animation-delay:var(--motion-delay) !important;
}
.course-grid .course-card .course-kinetic-logo{
  top:34px !important;
  left:50% !important;
  width:var(--logo-size) !important;
  height:var(--logo-size) !important;
  border-radius:999px !important;
  z-index:5 !important;
  animation:courseOrbFloat var(--pulse-speed,5.2s) ease-in-out infinite !important;
  animation-delay:var(--motion-delay) !important;
  filter:drop-shadow(0 22px 40px rgba(2,6,23,.38));
}
.course-grid .course-card .course-kinetic-logo::before{
  inset:0 !important;
  border-radius:999px !important;
  background:
    radial-gradient(circle at 35% 20%, rgba(255,255,255,.42), transparent 28%),
    radial-gradient(circle at center, rgba(255,255,255,.20), rgba(255,255,255,.08) 55%, rgba(255,255,255,.03) 72%) !important;
  border:1px solid rgba(255,255,255,.52) !important;
  box-shadow:
    0 28px 84px rgba(2,6,23,.34),
    0 0 44px var(--logo-accent),
    inset 0 2px 0 rgba(255,255,255,.40),
    inset 0 -18px 45px rgba(15,23,42,.22) !important;
}
.course-grid .course-card .course-kinetic-logo::after{
  inset:0 !important;
  border-radius:999px !important;
  background:linear-gradient(115deg, transparent 0 31%, rgba(255,255,255,.72) 45%, transparent 58% 100%) !important;
  mix-blend-mode:screen !important;
  animation:courseLogoGlisten var(--orbit-speed,7.8s) ease-in-out infinite !important;
  animation-delay:calc(var(--motion-delay) - .4s) !important;
}
.course-grid .course-card .course-kinetic-logo img{
  width:var(--logo-img-size) !important;
  height:var(--logo-img-size) !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  border-radius:999px !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 16px 28px rgba(2,6,23,.36)) drop-shadow(0 0 16px var(--logo-accent)) !important;
  animation:courseLogoMicroMotion var(--pulse-speed,5.2s) ease-in-out infinite !important;
  animation-delay:calc(var(--motion-delay) - .2s) !important;
}
.course-grid .course-card .ring-one,
.course-grid .course-card .ring-two{
  border-color:rgba(255,255,255,.36) !important;
  box-shadow:0 0 24px var(--logo-accent) !important;
  animation:courseRingOrbit var(--orbit-speed,8s) linear infinite !important;
  animation-delay:var(--motion-delay) !important;
}
.course-grid .course-card .ring-two{
  animation-direction:reverse !important;
  animation-duration:calc(var(--orbit-speed,8s) * 1.22) !important;
  opacity:.72 !important;
}
.course-grid .course-card .course-content{
  position:relative !important;
  z-index:6 !important;
  display:flex !important;
  flex-direction:column !important;
  min-height:286px !important;
  padding:254px 22px 22px !important;
  background:linear-gradient(180deg, transparent 0 24%, rgba(2,6,23,.18) 45%, rgba(2,6,23,.82) 100%) !important;
}
.course-grid .course-card .status{
  align-self:flex-start !important;
  flex:0 0 auto !important;
  margin:0 0 10px !important;
}
.course-grid .course-card h3{
  min-height:64px !important;
  margin:0 0 8px !important;
  font-size:clamp(23px,2vw,30px) !important;
  line-height:1.04 !important;
  letter-spacing:-.045em !important;
  overflow-wrap:anywhere !important;
}
.course-grid .course-card .course-detail{
  min-height:36px !important;
  margin:0 0 8px !important;
  font-size:12.5px !important;
  line-height:1.34 !important;
  opacity:.93 !important;
}
.course-grid .course-card p:not(.course-detail){
  min-height:58px !important;
  margin:0 0 14px !important;
  font-size:13.2px !important;
  line-height:1.42 !important;
}
.course-grid .course-card .course-actions{
  margin-top:auto !important;
  position:relative !important;
  inset:auto !important;
  min-height:54px !important;
  display:flex !important;
  align-items:flex-end !important;
  z-index:7 !important;
  background:transparent !important;
}
.course-grid .course-card .course-actions button,
.course-grid .course-card .request-course{
  width:100% !important;
  min-height:48px !important;
  border-radius:999px !important;
  position:relative !important;
  z-index:8 !important;
  white-space:nowrap !important;
  box-shadow:0 14px 32px rgba(2,6,23,.26) !important;
}
.course-grid .course-card.approved-course .request-course,
.course-grid .course-card .request-course.enter-course{
  background:linear-gradient(135deg,#10b981,#22c55e) !important;
  color:white !important;
}
.course-grid .course-card:not(.approved-course) .request-course{
  background:linear-gradient(135deg,#f8fafc,#dbeafe) !important;
  color:#172554 !important;
}
@keyframes courseOrbFloat{
  0%,100%{transform:translateX(-50%) translateY(0) scale(1)}
  45%{transform:translateX(-50%) translateY(-10px) scale(1.015)}
  72%{transform:translateX(-50%) translateY(3px) scale(.998)}
}
@keyframes courseLogoMicroMotion{
  0%,100%{transform:scale(1) rotate(0deg)}
  38%{transform:scale(1.035) rotate(-1.25deg)}
  68%{transform:scale(1.012) rotate(1.1deg)}
}
@keyframes courseRingOrbit{
  0%{transform:rotate(0deg) scale(1)}
  50%{transform:rotate(180deg) scale(1.045)}
  100%{transform:rotate(360deg) scale(1)}
}
@keyframes courseCardSlowSweep{
  0%,100%{opacity:.28;transform:translateX(-12%) skewX(-8deg)}
  48%{opacity:.55;transform:translateX(12%) skewX(-8deg)}
}
.course-grid .course-card[data-slug="educational-studies"] .course-kinetic-logo img{animation-name:courseLogoMicroMotion !important;}
.course-grid .course-card[data-slug="hipaa"] .course-kinetic-logo img{animation-name:courseLogoSecurePulse !important;}
.course-grid .course-card[data-slug="cma"] .course-kinetic-logo img{animation-name:courseLogoHeartbeat !important;}
.course-grid .course-card[data-slug="allied-health-professional"] .course-kinetic-logo img{animation-name:courseLogoTeamFloat !important;}
.course-grid .course-card[data-slug="medical-terminology"] .course-kinetic-logo img{animation-name:courseLogoLetterSpark !important;}
.course-grid .course-card[data-slug="anatomy-physiology"] .course-kinetic-logo img{animation-name:courseLogoBreatheDeep !important;}
.course-grid .course-card[data-slug="administrative-ma"] .course-kinetic-logo img{animation-name:courseLogoFileSlide !important;}
.course-grid .course-card[data-slug="radiation-science"] .course-kinetic-logo img{animation-name:courseLogoRadiate !important;}
.course-grid .course-card[data-slug="radiochemistry"] .course-kinetic-logo img{animation-name:courseLogoIonDrift !important;}
.course-grid .course-card[data-slug="nuclear-medicine"] .course-kinetic-logo img{animation-name:courseLogoOrbitBreathe !important;}
.section-course-logo,
.course-room-logo{
  content:normal !important;
  object-fit:cover !important;
  border-radius:999px !important;
  padding:0 !important;
  background:rgba(255,255,255,.78) !important;
}
@media(max-width:760px){
  .course-grid .course-card{min-height:535px !important;--logo-size:180px;--logo-img-size:164px;}
  .course-grid .course-card .course-kinetic-logo{top:32px !important;}
  .course-grid .course-card .course-content{padding:218px 18px 18px !important;min-height:300px !important;}
  .course-grid .course-card h3{min-height:58px !important;font-size:clamp(22px,6vw,28px) !important;}
  .course-grid .course-card .course-detail{min-height:auto !important;}
  .course-grid .course-card p:not(.course-detail){min-height:auto !important;}
}

/* v1.64 Remarkable animated homepage layer system
   Uses the enhanced Rotunda entry layer pack as separated background, heart, orbit, and atmosphere layers. */
.rotunda-live-hero.hero-entry-image{
  min-height:clamp(620px,64vw,900px) !important;
  display:grid !important;
  grid-template-columns:minmax(360px,.92fr) minmax(420px,1.08fr) !important;
  align-items:center !important;
  padding:clamp(38px,5vw,78px) !important;
  border-radius:38px !important;
  overflow:hidden !important;
  position:relative !important;
  isolation:isolate !important;
  background:#eef4ff !important;
  box-shadow:0 38px 120px rgba(37,99,235,.20), 0 18px 48px rgba(15,23,42,.12) !important;
}
.rotunda-live-background,
.rotunda-live-layer{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  pointer-events:none !important;
}
.rotunda-live-background{z-index:0;overflow:hidden;border-radius:inherit;}
.rotunda-live-layer{object-fit:cover;object-position:center;}
.layer-background{z-index:0;filter:saturate(1.08) contrast(1.02) brightness(1.02);transform:scale(1.012);}
.layer-right-cluster{z-index:2;animation:rotundaRightDrift 13s ease-in-out infinite;filter:drop-shadow(0 20px 48px rgba(37,99,235,.18));}
.layer-orbit{z-index:3;animation:rotundaOrbitBreath 9.5s ease-in-out infinite;mix-blend-mode:screen;filter:saturate(1.15) drop-shadow(0 0 24px rgba(147,197,253,.44));}
.layer-heart{z-index:4;animation:rotundaHeartFloat 5.8s ease-in-out infinite;filter:drop-shadow(0 26px 60px rgba(2,6,23,.30));transform-origin:67% 55%;}
.rotunda-live-hero::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:
    radial-gradient(circle at 70% 50%, rgba(59,130,246,.08), transparent 34%),
    linear-gradient(90deg, rgba(255,255,255,.92) 0%, rgba(255,255,255,.72) 34%, rgba(255,255,255,.14) 57%, rgba(255,255,255,.02) 100%);
  pointer-events:none !important;
}
.rotunda-live-hero::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:-30% -10% !important;
  z-index:6 !important;
  background:linear-gradient(115deg, transparent 0 38%, rgba(255,255,255,.46) 48%, transparent 58% 100%);
  transform:translateX(-70%) rotate(0deg);
  animation:rotundaHeroGlisten 9s ease-in-out infinite;
  pointer-events:none !important;
  mix-blend-mode:screen;
}
.rotunda-live-copy{
  position:relative;
  z-index:7;
  max-width:640px;
  padding:clamp(10px,1vw,18px) 0;
}
.hero-kicker{
  margin:0 0 16px;
  color:#1d4ed8;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:clamp(11px,1vw,13px);
  font-weight:950;
}
.rotunda-live-copy h1{
  margin:0 0 14px !important;
  font-size:clamp(46px,6.4vw,92px) !important;
  line-height:.94 !important;
  letter-spacing:-.065em !important;
  max-width:720px;
  background:linear-gradient(135deg,#071225 5%,#1d4ed8 48%,#7c3aed 92%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.hero-title-rule{width:min(260px,46%);height:5px;border-radius:999px;background:linear-gradient(90deg,#22d3ee,#7c3aed);box-shadow:0 0 22px rgba(37,99,235,.28);margin:12px 0 26px;}
.rotunda-live-copy h2{
  font-size:clamp(29px,3.1vw,48px) !important;
  line-height:1.03 !important;
  margin:0 0 4px !important;
  color:#071225;
  max-width:540px;
}
.rotunda-subtitle{margin:0 0 18px !important;color:#315fe7;font-size:clamp(22px,2.2vw,34px) !important;letter-spacing:.22em;font-weight:950;}
.rotunda-live-lead{max-width:620px;margin:0;color:#344054;font-size:clamp(15px,1.3vw,18px);line-height:1.58;font-weight:650;}
.rotunda-value-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:26px 0 28px;max-width:680px;}
.rotunda-value-row span{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center;padding:10px 8px;border-radius:16px;background:rgba(255,255,255,.62);border:1px solid rgba(219,230,246,.92);color:#263a59;font-size:12px;font-weight:850;box-shadow:0 10px 22px rgba(15,23,42,.045);}
.rotunda-value-row b{display:grid;place-items:center;width:23px;height:23px;border-radius:9px;background:linear-gradient(135deg,#dbeafe,#ede9fe);color:#2563eb;font-weight:950;}
.rotunda-hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.rotunda-hero-actions .hero-action-main,
.rotunda-hero-actions .hero-action-secondary{min-height:58px;padding:0 26px !important;border-radius:18px !important;font-weight:950;gap:12px;}
.rotunda-hero-actions .hero-action-secondary{background:rgba(255,255,255,.78);border:1px solid rgba(219,230,246,.95);box-shadow:0 14px 30px rgba(15,23,42,.08);color:#172033;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;}
.hero-create-link{border:0;background:transparent;color:#1d4ed8;font-weight:950;padding:10px 6px;text-decoration:none;}
.hero-create-link span{font-size:18px;margin-left:5px;}
.rotunda-live-emblem{position:absolute;right:10.3%;top:24%;z-index:8;width:clamp(118px,11vw,172px);height:clamp(118px,11vw,172px);display:grid;place-items:center;border-radius:999px;background:radial-gradient(circle at 35% 20%,rgba(255,255,255,.70),rgba(255,255,255,.16) 56%,rgba(37,99,235,.10));border:1px solid rgba(255,255,255,.50);box-shadow:0 28px 72px rgba(37,99,235,.28), inset 0 2px 0 rgba(255,255,255,.60);animation:rotundaEmblemPulse 6.2s ease-in-out infinite;}
.rotunda-live-emblem img{width:92%;height:92%;object-fit:contain;filter:drop-shadow(0 14px 30px rgba(2,6,23,.28));}
.rotunda-hero-spark{position:absolute;z-index:5;border-radius:999px;background:rgba(255,255,255,.88);box-shadow:0 0 28px rgba(147,197,253,.90),0 0 58px rgba(124,58,237,.35);opacity:.86;animation:rotundaSpark 5.6s ease-in-out infinite;}
.spark-one{width:8px;height:8px;left:58%;top:23%;animation-delay:-.8s;}
.spark-two{width:12px;height:12px;left:78%;top:36%;animation-delay:-2.1s;}
.spark-three{width:7px;height:7px;left:64%;top:70%;animation-delay:-3.8s;}
.rotunda-hero-wave{position:absolute;z-index:3;left:46%;right:8%;top:50%;height:2px;background:linear-gradient(90deg,transparent,rgba(34,211,238,.78),rgba(255,255,255,.85),rgba(124,58,237,.64),transparent);box-shadow:0 0 22px rgba(59,130,246,.55);opacity:.72;animation:rotundaWaveSweep 4.8s ease-in-out infinite;}
@keyframes rotundaHeartFloat{0%,100%{transform:translateY(0) scale(1)}42%{transform:translateY(-10px) scale(1.015)}68%{transform:translateY(4px) scale(.998)}}
@keyframes rotundaOrbitBreath{0%,100%{transform:scale(1);opacity:.88}50%{transform:scale(1.025);opacity:1}}
@keyframes rotundaRightDrift{0%,100%{transform:translateX(0) translateY(0) scale(1)}50%{transform:translateX(8px) translateY(-6px) scale(1.01)}}
@keyframes rotundaHeroGlisten{0%,58%,100%{transform:translateX(-78%) skewX(-12deg);opacity:0}68%{opacity:.45}82%{transform:translateX(62%) skewX(-12deg);opacity:0}}
@keyframes rotundaEmblemPulse{0%,100%{transform:translateY(0) scale(1)}48%{transform:translateY(-8px) scale(1.035)}}
@keyframes rotundaSpark{0%,100%{transform:translateY(0) scale(.8);opacity:.35}50%{transform:translateY(-13px) scale(1.25);opacity:1}}
@keyframes rotundaWaveSweep{0%,100%{transform:translateX(-4%) scaleX(.86);opacity:.38}50%{transform:translateX(4%) scaleX(1.03);opacity:.88}}
@media(max-width:980px){
  .rotunda-live-hero.hero-entry-image{grid-template-columns:1fr !important;min-height:780px !important;padding:34px !important;align-items:start !important;}
  .rotunda-live-hero::before{background:linear-gradient(180deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.78) 43%,rgba(255,255,255,.08) 100%) !important;}
  .rotunda-live-copy{max-width:720px;}
  .rotunda-value-row{grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px;}
  .rotunda-live-emblem{right:7%;top:55%;}
  .layer-heart{object-position:66% 60%;}
}
@media(max-width:620px){
  .rotunda-live-hero.hero-entry-image{min-height:850px !important;padding:26px 22px !important;border-radius:26px !important;}
  .rotunda-live-copy h1{font-size:clamp(38px,12vw,58px) !important;}
  .rotunda-live-copy h2{font-size:clamp(26px,8vw,38px) !important;}
  .rotunda-subtitle{font-size:21px !important;}
  .rotunda-value-row{grid-template-columns:1fr;max-width:100%;}
  .rotunda-hero-actions .hero-action-main,.rotunda-hero-actions .hero-action-secondary{width:100%;min-height:54px;}
  .hero-create-link{width:100%;text-align:center;}
  .rotunda-live-emblem{display:none;}
  .layer-background,.layer-right-cluster,.layer-heart,.layer-orbit{object-position:60% center;}
}
@media(prefers-reduced-motion:reduce){
  .layer-right-cluster,.layer-orbit,.layer-heart,.rotunda-live-hero::after,.rotunda-live-emblem,.rotunda-hero-spark,.rotunda-hero-wave{animation:none !important;}
}


/* v1.66 Homepage hero layer correction using updated layer pack: the background now contains every visual element except the anatomical heart itself.
   The heart is isolated as its own transparent animated foreground layer, preventing doubled/blurred heart artifacts. */
.layer-background{filter:saturate(1.08) contrast(1.02) brightness(1.02) !important;}
.layer-right-cluster{display:none !important;}
.layer-heart{z-index:4 !important;object-fit:cover !important;object-position:center !important;animation:rotundaHeartFloat 5.8s ease-in-out infinite, rotundaHeartGlisten 7.5s ease-in-out infinite !important;filter:drop-shadow(0 28px 62px rgba(2,6,23,.32)) drop-shadow(0 0 18px rgba(255,255,255,.25)) !important;}
.rotunda-live-emblem img{content:url('assets/rotunda-entry-layers/heart-only-cropped-hd.png?v=195hd') !important;width:92% !important;height:92% !important;object-fit:contain !important;}
@keyframes rotundaHeartGlisten{
  0%,100%{filter:drop-shadow(0 28px 62px rgba(2,6,23,.32)) drop-shadow(0 0 12px rgba(255,255,255,.18)) saturate(1.02)}
  45%{filter:drop-shadow(0 30px 70px rgba(2,6,23,.36)) drop-shadow(0 0 28px rgba(147,197,253,.55)) saturate(1.10)}
}
@media(prefers-reduced-motion:reduce){.layer-heart{animation:none !important;}}

/* v1.68 Visual fidelity and motion polish
   Keep the approved v1.66 visual direction while preventing contaminated image
   layers, incorrect circular crops, and expensive simultaneous filter animations. */
.rotunda-live-background{
  transform:translateZ(0);
  backface-visibility:hidden;
  contain:paint;
}
.rotunda-live-layer{
  image-rendering:auto;
  backface-visibility:hidden;
}
.layer-background{
  object-fit:cover !important;
  object-position:center !important;
  transform:translateZ(0) scale(1.002) !important;
  filter:saturate(1.045) contrast(1.015) !important;
}
/* The supplied separated layers still contain background pixels. Moving them
   exposes rectangular seams, so the intact high-resolution composite is used
   until Illustrator exports truly isolated transparent artwork. */
.layer-right-cluster,
.layer-orbit{
  display:none !important;
  animation:none !important;
}
.layer-heart{
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
  transform-origin:70% 55% !important;
  transform:translate3d(0,0,0) !important;
  animation:none !important;
  filter:drop-shadow(0 22px 34px rgba(2,6,23,.24)) !important;
  will-change:transform;
}
.layer-orbit-motion{
  z-index:3 !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
  opacity:1;
  mix-blend-mode:screen;
  pointer-events:none;
  transform:translateZ(0) scale(1.002);
}
.layer-heart.ventricular-beat{
  animation:ventricularContraction 1.42s cubic-bezier(.3,0,.2,1) 1 !important;
}
@keyframes ventricularContraction{
  0%,100%{transform:translate3d(0,0,0) scaleX(1) scaleY(1)}
  14%{transform:translate3d(0,4px,0) scaleX(1.035) scaleY(.945)}
  27%{transform:translate3d(0,-2px,0) scaleX(.992) scaleY(1.018)}
  40%{transform:translate3d(0,2px,0) scaleX(1.022) scaleY(.965)}
  58%{transform:translate3d(0,-1px,0) scaleX(.996) scaleY(1.01)}
  76%{transform:translate3d(0,0,0) scaleX(1.006) scaleY(.996)}
}
.rotunda-live-hero::after{
  animation-duration:14s !important;
  will-change:transform,opacity;
  transform:translate3d(-78%,0,0) skewX(-12deg);
}
.rotunda-live-emblem,
.rotunda-hero-wave{
  display:none !important;
  animation:none !important;
}
.rotunda-hero-spark{
  animation-duration:8s !important;
  will-change:transform,opacity;
}
@keyframes rotundaEmblemSmooth{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(0,-5px,0) scale(1.012)}
}

.course-grid .course-card,
.course-grid .course-card .course-layer-bg,
.course-grid .course-card .course-kinetic-logo,
.course-grid .course-card .course-kinetic-logo img{
  backface-visibility:hidden;
}
.course-grid .course-card .course-layer-bg{
  transform:translateZ(0) scale(1.002) !important;
  transition:transform .7s cubic-bezier(.22,.61,.36,1),filter .7s ease !important;
  will-change:transform;
}
.course-grid .course-card:hover .course-layer-bg{
  transform:translateZ(0) scale(1.018) !important;
}
.course-grid .course-card::after{
  animation:none !important;
  opacity:.22 !important;
}
.course-grid .course-card .course-kinetic-logo{
  overflow:hidden !important;
  animation:courseOrbSmooth 8.5s cubic-bezier(.45,0,.25,1) infinite !important;
  will-change:transform;
  transform:translate3d(-50%,0,0);
  filter:none !important;
}
.course-grid .course-card .course-kinetic-logo::after{
  animation:none !important;
  opacity:.26 !important;
}
.course-grid .course-card .course-kinetic-logo img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  border-radius:50% !important;
  animation:none !important;
  transform:translateZ(0) scale(.965) !important;
  filter:drop-shadow(0 10px 18px rgba(2,6,23,.26)) !important;
}
.course-grid .course-card .ring-one{
  animation:courseRingSmooth 18s linear infinite !important;
  will-change:transform;
}
.course-grid .course-card .ring-two{
  animation:none !important;
  opacity:.42 !important;
}
.course-grid .course-card:hover .course-kinetic-logo{
  animation-play-state:paused !important;
  transform:translate3d(-50%,-4px,0) scale(1.012) !important;
  transition:transform .55s cubic-bezier(.22,.61,.36,1) !important;
}
@keyframes courseOrbSmooth{
  0%,100%{transform:translate3d(-50%,0,0)}
  50%{transform:translate3d(-50%,-5px,0)}
}
@keyframes courseRingSmooth{
  to{transform:rotate(360deg)}
}
.section-course-logo,
.course-room-logo{
  object-fit:contain !important;
  object-position:center !important;
}
@media(max-width:760px){
  .layer-orbit-motion{opacity:.72;}
  .layer-heart{
    animation:none !important;
    transform:none !important;
  }
  .course-grid .course-card .course-kinetic-logo,
  .course-grid .course-card .ring-one{
    animation:none !important;
  }
}
@media(prefers-reduced-motion:reduce){
  .layer-orbit-motion{display:none !important;}
  .rotunda-live-hero::after,
  .rotunda-live-emblem,
  .rotunda-hero-spark,
  .rotunda-hero-wave,
  .layer-heart,
  .course-grid .course-card .course-kinetic-logo,
  .course-grid .course-card .ring-one{
    animation:none !important;
  }
}

/* v1.73 Public entrance and focused authenticated classroom view */
body.is-authenticated .public-prelogin,
body.is-authenticated .public-access-note,
body.is-authenticated .rotunda-live-hero,
body.is-authenticated .mission-band,
body.is-authenticated .rotunda-detail-grid,
body.is-authenticated .login-panel{
  display:none !important;
}
body.is-authenticated .dashboard{
  margin-top:28px !important;
}
body.is-authenticated .dashboard .muted{
  max-width:780px;
}
body.is-authenticated .section-intro{
  margin-top:18px !important;
}
body.is-authenticated .ahs-main-nav::after{
  display:none !important;
  content:none !important;
}

.public-prelogin{
  display:block;
}
body:not(.is-authenticated) .roadmap.public-prelogin{
  display:grid !important;
}

body.is-authenticated .course-grid{
  width:min(1800px,calc(100% - 36px)) !important;
  max-width:none !important;
  margin:22px auto 52px !important;
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  grid-auto-flow:row !important;
  grid-auto-rows:1fr !important;
  align-items:stretch !important;
  justify-content:center !important;
  gap:22px !important;
}
body.is-authenticated .course-grid .course-card{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
  transform:none;
}
body.is-authenticated .course-grid .course-card:hover{
  transform:translateY(-5px) !important;
}
@media(max-width:1380px){
  body.is-authenticated .course-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
}
@media(max-width:1080px){
  body.is-authenticated .course-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media(max-width:760px){
  body.is-authenticated .course-grid{
    width:calc(100% - 24px) !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
  }
}
@media(max-width:520px){
  body.is-authenticated .course-grid{grid-template-columns:1fr !important;}
}
@media(prefers-reduced-motion:reduce){
  .layer-heart.ventricular-beat{animation:none !important;}
}

/* v1.76 front page cleanup: calmer entrance, one access hub, public course guidance */
.ahs-student-login-direct{
  border:0;
  cursor:pointer;
  font-family:inherit;
}
.rotunda-live-hero.hero-entry-image{
  min-height:clamp(620px,72vh,760px) !important;
  align-items:center !important;
}
.rotunda-live-copy{
  max-width:560px !important;
}
.rotunda-live-copy h1{
  font-size:clamp(38px,4.9vw,68px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
  max-width:620px !important;
}
.rotunda-live-copy h2{
  font-size:clamp(24px,2.4vw,36px) !important;
}
.rotunda-subtitle{
  font-size:clamp(16px,1.4vw,24px) !important;
  margin-bottom:12px !important;
}
.hero-title-rule{
  width:min(180px,38%) !important;
  margin:10px 0 18px !important;
}
.rotunda-live-lead{
  max-width:520px !important;
  font-size:clamp(14px,1.05vw,16px) !important;
}
.rotunda-value-row{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  max-width:520px !important;
  margin:18px 0 18px !important;
}
.hero-scroll-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:18px;
  padding:12px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.74);
  border:1px solid rgba(219,230,246,.96);
  color:#1d4ed8;
  font-weight:950;
  text-decoration:none;
  box-shadow:0 14px 30px rgba(15,23,42,.08);
}
.hero-scroll-link span{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:999px;
  background:linear-gradient(135deg,#2563eb,#7c3aed);
  color:#fff;
}
.access-center{
  gap:clamp(18px,3vw,44px);
  padding:clamp(22px,3vw,36px) !important;
  border-radius:30px;
  background:
    radial-gradient(circle at 16% 0%,rgba(34,211,238,.20),transparent 34%),
    radial-gradient(circle at 92% 20%,rgba(124,58,237,.18),transparent 38%),
    linear-gradient(135deg,rgba(255,255,255,.94),rgba(244,248,255,.84)) !important;
  border:1px solid rgba(219,230,246,.92);
  box-shadow:0 24px 70px rgba(15,23,42,.10);
}
.access-center h2{
  font-size:clamp(24px,2.3vw,38px);
  line-height:1.04;
  margin:0 0 8px;
}
.access-center p:last-child{
  max-width:760px;
  margin:0;
  color:#475467;
  font-weight:650;
}
.public-access-actions{
  display:grid !important;
  grid-template-columns:1fr;
  gap:10px;
  min-width:min(360px,100%);
}
.public-access-actions .primary,
.public-access-actions .secondary{
  min-height:50px;
  border-radius:16px !important;
  justify-content:center;
  text-align:center;
}
.opening-slideshow{
  min-height:500px !important;
}
.slideshow-shell{
  min-height:420px !important;
  overflow:hidden;
}
.slide-stage{
  position:relative;
  min-height:330px !important;
  isolation:isolate;
}
.slide-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  border-radius:28px;
  filter:saturate(1.08) contrast(1.02) brightness(.95);
  box-shadow:0 28px 70px rgba(15,23,42,.20);
  z-index:0;
}
.slide-stage::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:28px;
  background:linear-gradient(135deg,rgba(7,18,37,.08),rgba(37,99,235,.12),rgba(255,255,255,.18));
  pointer-events:none;
}
.slide-visual-card{
  position:relative;
  z-index:2;
  width:clamp(140px,14vw,210px) !important;
  height:clamp(140px,14vw,210px) !important;
  margin:auto;
  background:rgba(255,255,255,.24) !important;
  border:1px solid rgba(255,255,255,.52) !important;
  backdrop-filter:blur(10px);
}
.slide-icon{
  text-shadow:0 14px 30px rgba(15,23,42,.36);
}
.mission-band,
.rotunda-detail-grid,
.public-program-intro,
.public-course-showcase{
  scroll-margin-top:130px;
}
body:not(.is-authenticated) .mission-band,
body:not(.is-authenticated) .rotunda-detail-grid,
body:not(.is-authenticated) .public-program-intro,
body:not(.is-authenticated) .public-course-showcase{
  display:revert !important;
}
body:not(.is-authenticated) .mission-band{display:flex !important;}
body:not(.is-authenticated) .rotunda-detail-grid{display:grid !important;}
body:not(.is-authenticated) .public-program-intro{display:block !important;}
body:not(.is-authenticated) .public-course-showcase{
  display:grid !important;
  width:min(1800px,calc(100% - 36px)) !important;
  max-width:none !important;
  margin:22px auto 52px !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:22px !important;
}
body:not(.is-authenticated) .public-course-showcase .course-card{
  min-height:500px !important;
}
body:not(.is-authenticated) .public-course-showcase .course-card .status{
  color:#fff !important;
  background:rgba(255,255,255,.14) !important;
  border-color:rgba(255,255,255,.22) !important;
}
body:not(.is-authenticated) .course-lock-badge{
  opacity:.72;
}
.course-grid .course-card .course-kinetic-logo{
  border-radius:50% !important;
}
.course-grid .course-card .course-kinetic-logo img{
  object-fit:cover !important;
  transform:translateZ(0) scale(1.01) !important;
  background:transparent !important;
}
body.is-authenticated .public-program-intro{
  display:block !important;
}
body.is-authenticated .public-program-intro .eyebrow{
  display:none;
}
body.is-authenticated .public-program-intro h2::before{
  content:"Welcome! ";
}
body.is-authenticated .public-program-intro p{
  max-width:720px;
}
@media(max-width:1380px){
  body:not(.is-authenticated) .public-course-showcase{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
}
@media(max-width:1080px){
  body:not(.is-authenticated) .public-course-showcase{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  .access-center{align-items:flex-start;flex-direction:column;}
}
@media(max-width:760px){
  .rotunda-live-hero.hero-entry-image{
    min-height:720px !important;
  }
  .rotunda-live-copy h1{
    font-size:clamp(34px,10vw,50px) !important;
  }
  .rotunda-value-row{
    grid-template-columns:1fr !important;
  }
  body:not(.is-authenticated) .public-course-showcase{
    width:calc(100% - 24px) !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
  }
}
@media(max-width:520px){
  body:not(.is-authenticated) .public-course-showcase{grid-template-columns:1fr !important;}
}

/* v1.77 Motto-first homepage with separate course preview tab */
.front-page-tabs{
  width:min(820px,calc(100% - 36px));
  margin:20px auto 16px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:8px;
  border-radius:24px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(219,230,246,.96);
  box-shadow:0 20px 48px rgba(15,23,42,.08);
  backdrop-filter:blur(16px);
}
.front-tab{
  min-height:54px;
  border:0;
  border-radius:18px;
  background:transparent;
  color:#344054;
  font-family:inherit;
  font-size:15px;
  font-weight:950;
  cursor:pointer;
  transition:transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
}
.front-tab:hover{
  transform:translateY(-1px);
}
.front-tab.active{
  color:#fff;
  background:linear-gradient(135deg,#2563eb,#7c3aed);
  box-shadow:0 14px 32px rgba(37,99,235,.24);
}
body:not(.is-authenticated) .rotunda-live-copy h1{
  font-size:clamp(42px,5.4vw,74px) !important;
  line-height:1 !important;
  max-width:680px !important;
}
body:not(.is-authenticated) .opening-slideshow,
body:not(.is-authenticated) .mission-band,
body:not(.is-authenticated) .rotunda-detail-grid{
  display:none !important;
}
body:not(.is-authenticated):not(.show-course-previews) .public-program-intro,
body:not(.is-authenticated):not(.show-course-previews) .public-course-showcase,
body:not(.is-authenticated):not(.show-course-previews) .roadmap.public-prelogin{
  display:none !important;
}
body:not(.is-authenticated).show-course-previews .access-center{
  display:none !important;
}
body:not(.is-authenticated).show-course-previews .public-program-intro{
  display:block !important;
  width:min(1180px,calc(100% - 36px)) !important;
  margin:20px auto 16px !important;
  text-align:center;
}
body:not(.is-authenticated).show-course-previews .public-program-intro h2{
  font-size:clamp(28px,3vw,44px) !important;
}
body:not(.is-authenticated).show-course-previews .public-program-intro p{
  max-width:760px !important;
}
body:not(.is-authenticated).show-course-previews .roadmap.public-prelogin{
  display:grid !important;
  width:min(1180px,calc(100% - 36px)) !important;
  margin:8px auto 48px !important;
}
body:not(.is-authenticated).show-course-previews .public-course-showcase{
  margin-bottom:26px !important;
}
body:not(.is-authenticated).show-course-previews .course-card{
  min-height:460px !important;
}
@media(max-width:620px){
  .front-page-tabs{
    grid-template-columns:1fr;
    width:calc(100% - 24px);
  }
  body:not(.is-authenticated) .rotunda-live-copy h1{
    font-size:clamp(38px,11vw,56px) !important;
  }
}

/* v1.78 static header: top menu stays at the top of the page and scrolls away normally */
.site-header,
.site-header.rotunda-header-v125,
.site-header.rotunda-header-v126,
.site-header.rotunda-header-v125.rotunda-header-v126,
body.is-authenticated .site-header.rotunda-header-v125.rotunda-header-v126{
  position:relative !important;
  top:auto !important;
  z-index:20 !important;
}

/* v1.79 course-card readability + image clarity pass
   The course images are intentionally vivid, but some include baked-in lettering.
   This adds a consistent caption glass zone so the real course title wins visually. */
.course-grid .course-card{
  isolation:isolate !important;
  background:#071225 !important;
}
.course-grid .course-card .course-layer-bg{
  filter:saturate(1.24) contrast(1.13) brightness(.96) !important;
  transform:translateZ(0) scale(1.012) !important;
}
.course-grid .course-card:hover .course-layer-bg{
  filter:saturate(1.30) contrast(1.16) brightness(1.02) !important;
  transform:translateZ(0) scale(1.03) !important;
}
.course-grid .course-card .course-overlay{
  z-index:2 !important;
  background:
    linear-gradient(180deg,
      rgba(2,6,23,.02) 0%,
      rgba(2,6,23,.08) 28%,
      rgba(2,6,23,.46) 58%,
      rgba(2,6,23,.86) 100%) !important;
}
.course-grid .course-card .course-content{
  z-index:5 !important;
  justify-content:flex-end !important;
  padding:210px 18px 18px !important;
}
.course-grid .course-card .course-content::before{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  height:calc(100% - 198px);
  min-height:210px;
  z-index:-1;
  border-radius:24px;
  background:
    linear-gradient(180deg,rgba(15,23,42,.52),rgba(15,23,42,.82)),
    radial-gradient(circle at 20% 0%,rgba(255,255,255,.18),transparent 44%);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:
    0 20px 45px rgba(2,6,23,.28),
    inset 0 1px 0 rgba(255,255,255,.22);
  backdrop-filter:blur(10px) saturate(1.25);
}
.course-grid .course-card .status{
  align-self:flex-start !important;
  margin-bottom:8px !important;
  color:#071225 !important;
  background:linear-gradient(135deg,#ffffff,#dbeafe) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 8px 20px rgba(2,6,23,.24) !important;
  text-shadow:none !important;
}
.course-grid .course-card h3{
  display:inline;
  width:fit-content;
  max-width:100%;
  padding:.08em .24em .14em;
  margin:0 0 8px !important;
  border-radius:12px;
  color:#fff !important;
  background:linear-gradient(90deg,rgba(2,6,23,.78),rgba(2,6,23,.36),rgba(2,6,23,0));
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
  text-shadow:
    0 2px 2px rgba(2,6,23,.80),
    0 8px 24px rgba(2,6,23,.72),
    0 0 1px rgba(255,255,255,.45) !important;
  letter-spacing:-.025em !important;
}
.course-grid .course-card .course-detail{
  margin-top:9px !important;
  color:#e0f2fe !important;
  text-shadow:0 2px 10px rgba(2,6,23,.75) !important;
}
.course-grid .course-card p:not(.course-detail){
  color:rgba(255,255,255,.92) !important;
  text-shadow:0 2px 10px rgba(2,6,23,.72) !important;
}
.course-grid .course-card .request-course{
  box-shadow:0 12px 28px rgba(2,6,23,.28) !important;
}
body:not(.is-authenticated).show-course-previews .course-card,
body.is-authenticated .course-card{
  min-height:485px !important;
}
@media(max-width:760px){
  .course-grid .course-card .course-content{
    padding:210px 16px 16px !important;
  }
  .course-grid .course-card .course-content::before{
    left:10px;
    right:10px;
    bottom:10px;
  }
}

/* v1.80 taller course entries: more room for the circular logo/art and the readable caption */
.course-grid .course-card{
  min-height:620px !important;
  aspect-ratio:auto !important;
  --logo-size:232px !important;
  --logo-img-size:218px !important;
}
body:not(.is-authenticated).show-course-previews .course-card,
body.is-authenticated .course-card{
  min-height:620px !important;
}
.course-grid .course-card .course-kinetic-logo{
  top:34px !important;
  width:var(--logo-size) !important;
  height:var(--logo-size) !important;
}
.course-grid .course-card .course-kinetic-logo::before{
  inset:10px !important;
}
.course-grid .course-card .course-kinetic-logo img{
  width:var(--logo-img-size) !important;
  height:var(--logo-img-size) !important;
  object-fit:cover !important;
  transform:translateZ(0) scale(1.005) !important;
}
.course-grid .course-card .course-content{
  padding:292px 20px 20px !important;
  min-height:0 !important;
}
.course-grid .course-card .course-content::before{
  left:14px;
  right:14px;
  bottom:14px;
  height:calc(100% - 276px);
  min-height:260px;
  border-radius:28px;
}
.course-grid .course-card h3{
  font-size:clamp(23px,1.75vw,31px) !important;
  line-height:1.04 !important;
  min-height:0 !important;
}
.course-grid .course-card .course-detail{
  font-size:12px !important;
  line-height:1.42 !important;
}
.course-grid .course-card p:not(.course-detail){
  font-size:14px !important;
  line-height:1.46 !important;
}
@media(max-width:1380px){
  .course-grid .course-card{
    min-height:600px !important;
    --logo-size:218px !important;
    --logo-img-size:204px !important;
  }
  .course-grid .course-card .course-content{
    padding-top:276px !important;
  }
  .course-grid .course-card .course-content::before{
    height:calc(100% - 260px);
  }
}
@media(max-width:760px){
  .course-grid .course-card{
    min-height:570px !important;
    --logo-size:196px !important;
    --logo-img-size:184px !important;
  }
  .course-grid .course-card .course-kinetic-logo{
    top:30px !important;
  }
  .course-grid .course-card .course-content{
    padding:248px 16px 16px !important;
  }
  .course-grid .course-card .course-content::before{
    left:10px;
    right:10px;
    bottom:10px;
    height:calc(100% - 232px);
    min-height:250px;
  }
}

/* v1.81 professional dark mode foundation */
:root{
  color-scheme:dark;
  --ink:#f8fbff;
  --muted:#aab8cf;
  --line:rgba(148,163,184,.24);
  --panel:rgba(15,23,42,.74);
  --panel-strong:rgba(8,13,28,.88);
  --dark-blue:#050816;
  --dark-slate:#0b1120;
}
html{
  background:#050816;
}
body{
  color:#eef6ff !important;
  background:
    radial-gradient(circle at 16% -8%,rgba(37,99,235,.38),transparent 36%),
    radial-gradient(circle at 88% 4%,rgba(124,58,237,.34),transparent 34%),
    radial-gradient(circle at 54% 44%,rgba(20,184,166,.14),transparent 34%),
    linear-gradient(135deg,#02040b 0%,#07111f 35%,#111827 64%,#030712 100%) !important;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    linear-gradient(rgba(255,255,255,.024) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:radial-gradient(circle at center,black,transparent 78%);
  opacity:.42;
}
.ambient .orb{
  filter:blur(18px);
  opacity:.22;
  mix-blend-mode:screen;
}
.o1{background:#2563eb !important;}
.o2{background:#7c3aed !important;}
.o3{background:#14b8a6 !important;}
.symbol{
  color:#93c5fd !important;
  opacity:.045 !important;
}
.site-header,
.site-header.rotunda-header-v125.rotunda-header-v126{
  background:
    linear-gradient(135deg,rgba(15,23,42,.88),rgba(8,13,28,.72)) !important;
  border:1px solid rgba(148,163,184,.22) !important;
  box-shadow:0 24px 72px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.08) !important;
  backdrop-filter:blur(18px) saturate(1.18) !important;
}
.brand,
.brand-name-lockup b,
.rotunda-header-v126 .brand-name-lockup b{
  color:#f8fbff !important;
}
.brand small,
.rotunda-header-v126 .brand-name-lockup small{
  color:#aab8cf !important;
}
.ahs-nav-item,
.ahs-nav-menu summary,
.ahs-student-login-direct{
  color:#dbeafe !important;
  background:rgba(15,23,42,.52) !important;
  border-color:rgba(148,163,184,.22) !important;
}
.ahs-nav-item:hover,
.ahs-nav-menu summary:hover,
.ahs-student-login-direct:hover{
  color:#fff !important;
  background:linear-gradient(135deg,rgba(37,99,235,.42),rgba(124,58,237,.34)) !important;
  border-color:rgba(147,197,253,.34) !important;
}
.ahs-dropdown,
.nav-dropdown{
  background:rgba(8,13,28,.96) !important;
  border-color:rgba(148,163,184,.24) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.46) !important;
}
.ahs-dropdown a,
.ahs-dropdown button,
.nav-dropdown a,
.nav-dropdown button{
  color:#dbeafe !important;
}
.ahs-dropdown a:hover,
.ahs-dropdown button:hover,
.nav-dropdown a:hover,
.nav-dropdown button:hover{
  background:rgba(37,99,235,.22) !important;
  color:#fff !important;
}
.rotunda-live-hero.hero-entry-image{
  background:#08111f !important;
  border-color:rgba(148,163,184,.24) !important;
  box-shadow:0 34px 100px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.rotunda-live-hero::before{
  background:
    radial-gradient(circle at 69% 50%,rgba(59,130,246,.08),transparent 34%),
    linear-gradient(90deg,rgba(2,6,23,.86) 0%,rgba(8,13,28,.64) 34%,rgba(8,13,28,.20) 58%,rgba(8,13,28,.04) 100%) !important;
}
.rotunda-live-copy h1{
  background:linear-gradient(135deg,#ffffff 0%,#bfdbfe 36%,#93c5fd 58%,#c4b5fd 92%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  text-shadow:none !important;
}
.rotunda-live-copy h2,
.access-center h2,
.section-intro h2,
.dashboard h2,
.roadmap-card h2,
.modal-card h2{
  color:#f8fbff !important;
}
.hero-kicker,
.eyebrow,
.rotunda-subtitle{
  color:#7dd3fc !important;
}
.rotunda-live-lead,
.muted,
.section-intro p,
.section-intro p:last-child,
.roadmap-card p,
.modal-lead,
.fineprint{
  color:#aab8cf !important;
}
.rotunda-value-row span,
.hero-scroll-link,
.front-page-tabs,
.access-center,
.login-panel,
.dashboard,
.section-intro,
.architecture,
.roadmap-card,
.modal-card,
.account-workspace,
.account-note,
.form-step,
.course-code-preview,
.instruction-box,
.setup-summary .summary-item,
.admin-stat,
.admin-empty,
.admin-request-card{
  background:
    linear-gradient(145deg,rgba(15,23,42,.82),rgba(8,13,28,.70)) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#eaf2ff !important;
  box-shadow:0 24px 70px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.access-center{
  background:
    radial-gradient(circle at 16% 0%,rgba(34,211,238,.12),transparent 34%),
    radial-gradient(circle at 92% 20%,rgba(124,58,237,.18),transparent 38%),
    linear-gradient(135deg,rgba(15,23,42,.88),rgba(8,13,28,.78)) !important;
}
.access-center p:last-child,
.roadmap-card ol,
.outcome-list,
.setup-summary .summary-item span,
.admin-stat span,
.admin-request-card small,
.admin-empty span{
  color:#aab8cf !important;
}
.front-tab{
  color:#cbd5e1 !important;
}
.front-tab.active{
  color:#fff !important;
  background:linear-gradient(135deg,#2563eb,#7c3aed,#0891b2) !important;
}
.primary,
button.primary{
  background:linear-gradient(135deg,#2563eb,#7c3aed,#0891b2) !important;
  color:#fff !important;
  box-shadow:0 16px 36px rgba(37,99,235,.28) !important;
}
.secondary,
a.secondary,
button.secondary,
.admin-portal-button{
  background:rgba(15,23,42,.72) !important;
  border-color:rgba(148,163,184,.28) !important;
  color:#eaf2ff !important;
}
.secondary:hover,
a.secondary:hover,
button.secondary:hover{
  background:rgba(37,99,235,.24) !important;
  color:#fff !important;
}
label{
  color:#dbeafe !important;
}
input,
select,
textarea{
  color:#f8fbff !important;
  background:rgba(2,6,23,.72) !important;
  border-color:rgba(148,163,184,.32) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}
input::placeholder,
textarea::placeholder{
  color:#74839a !important;
}
.modal{
  background:rgba(2,6,23,.72) !important;
  backdrop-filter:blur(10px) !important;
}
.modal-close{
  background:rgba(15,23,42,.92) !important;
  color:#eaf2ff !important;
  border:1px solid rgba(148,163,184,.28) !important;
}
.roadmap-card.accent{
  background:linear-gradient(135deg,rgba(29,78,216,.92),rgba(88,28,135,.92),rgba(8,145,178,.78)) !important;
  color:#fff !important;
}
footer{
  color:#8fa2bd !important;
}

/* v1.74 Individually themed, full-bleed course rooms */
.course-room-body{
  --room-accent:#4f46c8;
  --room-deep:#111a68;
  --room-glow:#a5b4fc;
  background:
    radial-gradient(circle at 12% 0%, color-mix(in srgb,var(--room-glow) 32%,transparent), transparent 34%),
    radial-gradient(circle at 90% 12%, color-mix(in srgb,var(--room-accent) 22%,transparent), transparent 32%),
    linear-gradient(145deg,color-mix(in srgb,var(--room-glow) 13%,#f8fbff),#f8fbff 48%,color-mix(in srgb,var(--room-accent) 10%,#f8fbff)) !important;
  color:#101828;
}
.course-room-shell{
  width:min(1280px,calc(100% - 32px)) !important;
  padding:28px 0 50px !important;
}
.course-room-shell > .course-room-actions:first-child .secondary{
  color:var(--room-deep) !important;
  border-color:color-mix(in srgb,var(--room-accent) 28%,transparent) !important;
  background:rgba(255,255,255,.82) !important;
  box-shadow:0 12px 30px color-mix(in srgb,var(--room-deep) 10%,transparent) !important;
}
.course-room-hero{
  grid-template-columns:minmax(260px,390px) 1fr !important;
  gap:clamp(24px,4vw,56px) !important;
  min-height:560px;
  padding:clamp(24px,4vw,52px) !important;
  border:1px solid color-mix(in srgb,var(--room-glow) 42%,transparent) !important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--room-deep) 92%,transparent),color-mix(in srgb,var(--room-accent) 72%,transparent)) !important;
  box-shadow:0 34px 90px color-mix(in srgb,var(--room-deep) 28%,transparent),inset 0 1px 0 rgba(255,255,255,.24) !important;
}
.course-room-bg{
  background-size:cover !important;
  background-position:center 24% !important;
  filter:saturate(1.16) contrast(1.04) brightness(.58) !important;
  transform:scale(1.035) !important;
}
.course-room-layered::after{
  background:
    radial-gradient(circle at 21% 48%,transparent 0 18%,color-mix(in srgb,var(--room-deep) 38%,transparent) 42%),
    linear-gradient(90deg,color-mix(in srgb,var(--room-deep) 28%,transparent),color-mix(in srgb,var(--room-deep) 78%,transparent) 52%,color-mix(in srgb,var(--room-deep) 92%,transparent)) !important;
}
.course-room-logo-frame{
  width:min(360px,70vw);
  aspect-ratio:1;
  border-radius:50%;
  overflow:hidden;
  padding:0 !important;
  background:var(--room-deep);
  border:3px solid color-mix(in srgb,var(--room-glow) 72%,white);
  box-shadow:
    0 30px 80px rgba(2,6,23,.42),
    0 0 70px color-mix(in srgb,var(--room-glow) 46%,transparent),
    inset 0 0 0 8px rgba(255,255,255,.08);
  animation:courseRoomOrbFloat 7s ease-in-out infinite;
}
.course-room-logo{
  width:100% !important;
  height:100% !important;
  max-height:none !important;
  aspect-ratio:1 !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:50% !important;
  padding:0 !important;
  margin:0 !important;
  background:none !important;
  box-shadow:none !important;
  animation:none !important;
  transform:scale(1.018);
}
.course-room-hero .eyebrow{
  color:var(--room-glow) !important;
}
.course-room-hero h1{
  color:#fff !important;
  text-shadow:0 10px 34px rgba(2,6,23,.36);
}
.course-room-hero p{
  color:rgba(239,246,255,.88) !important;
}
.course-room-status span{
  color:#fff !important;
  background:color-mix(in srgb,var(--room-accent) 38%,rgba(8,15,43,.72)) !important;
  border-color:color-mix(in srgb,var(--room-glow) 42%,transparent) !important;
}
.course-room-hero .primary{
  color:var(--room-deep) !important;
  background:linear-gradient(135deg,#fff,var(--room-glow)) !important;
  box-shadow:0 14px 34px color-mix(in srgb,var(--room-deep) 34%,transparent) !important;
}
.course-room-hero .secondary{
  color:#fff !important;
  background:color-mix(in srgb,var(--room-deep) 72%,transparent) !important;
  border-color:color-mix(in srgb,var(--room-glow) 42%,transparent) !important;
}
.course-room-grid{
  gap:18px !important;
  margin-top:24px !important;
}
.course-room-grid .module-card{
  position:relative;
  overflow:hidden;
  padding:26px !important;
  border:1px solid color-mix(in srgb,var(--room-accent) 22%,rgba(15,23,42,.08)) !important;
  background:linear-gradient(145deg,rgba(255,255,255,.94),color-mix(in srgb,var(--room-glow) 10%,#fff)) !important;
  box-shadow:0 18px 50px color-mix(in srgb,var(--room-deep) 12%,transparent) !important;
}
.course-room-grid .module-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(var(--room-glow),var(--room-accent));
}
.course-room-grid .module-card span{
  color:var(--room-deep) !important;
  background:color-mix(in srgb,var(--room-glow) 20%,#fff) !important;
  border-color:color-mix(in srgb,var(--room-accent) 20%,transparent) !important;
}
.course-room-grid .module-card h3{
  color:var(--room-deep);
}
.course-room-grid .module-card p{
  color:color-mix(in srgb,var(--room-deep) 72%,#667085) !important;
}
@keyframes courseRoomOrbFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}
@media(max-width:820px){
  .course-room-hero{
    grid-template-columns:1fr !important;
    text-align:center;
  }
  .course-room-logo-frame{margin-inline:auto;}
  .course-room-status,.course-room-hero .course-room-actions{justify-content:center;}
}
@media(prefers-reduced-motion:reduce){
  .course-room-logo-frame{animation:none !important;}
}

/* v1.82 dark polish, cleaner gutters, no flat grey UI */
:root{
  --site-max:1640px;
  --site-gutter:96px;
}
html,
body{
  overflow-x:hidden;
}
main,
.site-header,
.site-header.rotunda-header-v125.rotunda-header-v126,
footer{
  width:min(var(--site-max),calc(100% - var(--site-gutter))) !important;
  max-width:var(--site-max) !important;
}
main{
  margin-top:22px !important;
}
.rotunda-live-hero.hero-entry-image,
.dashboard,
.login-panel,
.account-gateway,
.access-center,
.front-page-tabs,
.section-intro,
.roadmap,
.course-grid{
  border-radius:clamp(26px,2.4vw,42px) !important;
}
.ahs-main-nav{
  background:linear-gradient(135deg,rgba(8,13,28,.92),rgba(15,23,42,.64)) !important;
  border:1px solid rgba(125,211,252,.22) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 44px rgba(0,0,0,.30) !important;
}
.ahs-nav-item,
.ahs-nav-menu summary,
.ahs-student-login-direct{
  background:linear-gradient(135deg,rgba(37,99,235,.24),rgba(124,58,237,.22)) !important;
  color:#eaf6ff !important;
  border:1px solid rgba(147,197,253,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 10px 24px rgba(0,0,0,.22) !important;
}
.ahs-nav-item:hover,
.ahs-nav-menu summary:hover,
.ahs-student-login-direct:hover{
  background:linear-gradient(135deg,rgba(37,99,235,.66),rgba(124,58,237,.52),rgba(8,145,178,.42)) !important;
  border-color:rgba(125,211,252,.38) !important;
}
.front-page-tabs,
.account-tabs{
  background:linear-gradient(135deg,rgba(2,6,23,.86),rgba(10,18,36,.76)) !important;
  border:1px solid rgba(125,211,252,.20) !important;
  box-shadow:0 20px 54px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.front-tab,
.account-tab{
  color:#c8d7ee !important;
  background:transparent !important;
  border:1px solid transparent !important;
}
.front-tab.active,
.account-tab.active{
  color:#fff !important;
  background:linear-gradient(135deg,#2563eb,#7c3aed,#0891b2) !important;
  box-shadow:0 14px 34px rgba(37,99,235,.30),inset 0 1px 0 rgba(255,255,255,.18) !important;
  border-color:rgba(255,255,255,.16) !important;
}
.access-center,
.login-panel,
.account-workspace,
.dashboard,
.request-log,
.modal-card{
  background:
    radial-gradient(circle at 82% 18%,rgba(124,58,237,.16),transparent 34%),
    radial-gradient(circle at 8% 2%,rgba(14,165,233,.14),transparent 34%),
    linear-gradient(135deg,rgba(7,14,28,.94),rgba(10,15,31,.86)) !important;
  border:1px solid rgba(125,211,252,.18) !important;
  box-shadow:0 30px 80px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.07) !important;
}
.account-form,
.login-form,
#studentLoginForm,
#studentCreateForm,
#studentVerifyForm{
  background:linear-gradient(145deg,rgba(8,13,28,.82),rgba(15,23,42,.66)) !important;
  border:1px solid rgba(148,163,184,.22) !important;
  border-radius:28px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 18px 48px rgba(0,0,0,.28) !important;
}
.account-form label,
.login-form label{
  color:#dbeafe !important;
}
input,
textarea,
select,
.checkbox-line,
.session-choice,
.form-help,
.account-note,
.course-code-preview{
  background:rgba(2,6,23,.58) !important;
  border-color:rgba(125,211,252,.18) !important;
  color:#eef6ff !important;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus{
  -webkit-text-fill-color:#f8fbff !important;
  box-shadow:0 0 0 1000px rgba(15,23,42,.94) inset !important;
  caret-color:#fff;
}
.request-log{
  padding:18px !important;
}
.request-chip{
  background:linear-gradient(135deg,rgba(15,23,42,.92),rgba(30,41,59,.74)) !important;
  color:#eaf2ff !important;
  border:1px solid rgba(125,211,252,.18) !important;
  box-shadow:0 12px 26px rgba(0,0,0,.24) !important;
}
.request-chip span,
.request-chip b{
  color:#fff !important;
}
.request-chip small{
  color:#a7f3d0 !important;
}
.student-meta span,
.student-meta b,
.permission-points span,
.version-pill{
  color:#eaf6ff !important;
  background:rgba(15,23,42,.72) !important;
  border-color:rgba(125,211,252,.22) !important;
}
.account-message.success{
  color:#d1fae5 !important;
  background:linear-gradient(135deg,rgba(6,78,59,.72),rgba(6,95,70,.42)) !important;
  border-color:rgba(52,211,153,.28) !important;
}
.account-message.error{
  color:#fee2e2 !important;
  background:linear-gradient(135deg,rgba(127,29,29,.72),rgba(88,28,135,.36)) !important;
  border-color:rgba(248,113,113,.30) !important;
}
.rotunda-live-hero.hero-entry-image{
  background:#030712 !important;
  box-shadow:0 34px 100px rgba(0,0,0,.48),0 0 0 1px rgba(125,211,252,.16),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.rotunda-live-hero::before{
  background:
    radial-gradient(circle at 70% 52%,rgba(59,130,246,.10),transparent 34%),
    radial-gradient(circle at 83% 82%,rgba(124,58,237,.16),transparent 30%),
    linear-gradient(90deg,rgba(2,6,23,.78) 0%,rgba(7,14,28,.58) 32%,rgba(8,13,28,.18) 58%,rgba(2,6,23,.04) 100%) !important;
}
.layer-background{
  filter:saturate(1.30) contrast(1.12) brightness(.94) !important;
}
.layer-heart{
  filter:drop-shadow(0 28px 60px rgba(0,0,0,.46)) drop-shadow(0 0 20px rgba(96,165,250,.22)) saturate(1.18) contrast(1.06) !important;
}
.layer-orbit-motion{
  opacity:.86 !important;
  filter:saturate(1.35) contrast(1.14) drop-shadow(0 0 22px rgba(96,165,250,.34)) !important;
}
.rotunda-value-row span{
  background:linear-gradient(135deg,rgba(2,6,23,.72),rgba(15,23,42,.62)) !important;
  border-color:rgba(125,211,252,.20) !important;
  color:#eaf6ff !important;
}
.rotunda-value-row b{
  background:linear-gradient(135deg,#2563eb,#7c3aed) !important;
  color:#fff !important;
}
@media(max-width:980px){
  :root{--site-gutter:36px;}
}
@media(max-width:620px){
  :root{--site-gutter:20px;}
  main,
  .site-header,
  .site-header.rotunda-header-v125.rotunda-header-v126,
  footer{
    width:calc(100% - var(--site-gutter)) !important;
  }
}

/* v1.83 darker blue/purple/turquoise tabs + stage-lit hero image */
.ahs-main-nav,
.front-page-tabs,
.account-tabs{
  background:
    linear-gradient(135deg,rgba(2,6,23,.96),rgba(7,14,32,.92) 42%,rgba(4,15,25,.92)) !important;
  border:1px solid rgba(45,212,191,.18) !important;
  box-shadow:
    0 24px 64px rgba(0,0,0,.42),
    0 0 0 1px rgba(59,130,246,.08),
    inset 0 1px 0 rgba(255,255,255,.07) !important;
}
.ahs-nav-item,
.ahs-nav-menu summary,
.ahs-student-login-direct,
.front-tab,
.account-tab{
  background:
    linear-gradient(135deg,rgba(12,20,40,.96),rgba(31,41,75,.70) 46%,rgba(8,47,73,.58)) !important;
  color:#dff7ff !important;
  border:1px solid rgba(125,211,252,.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 10px 28px rgba(0,0,0,.28) !important;
}
.ahs-nav-item:hover,
.ahs-nav-menu summary:hover,
.ahs-student-login-direct:hover,
.front-tab:hover,
.account-tab:hover{
  background:
    linear-gradient(135deg,rgba(29,78,216,.70),rgba(109,40,217,.62) 48%,rgba(8,145,178,.58)) !important;
  color:#fff !important;
  border-color:rgba(103,232,249,.38) !important;
}
.front-tab.active,
.account-tab.active,
.ahs-login-summary{
  background:
    linear-gradient(135deg,#1d4ed8 0%,#6d28d9 48%,#0891b2 100%) !important;
  color:#fff !important;
  border-color:rgba(165,243,252,.42) !important;
  box-shadow:
    0 16px 38px rgba(37,99,235,.30),
    0 0 34px rgba(45,212,191,.12),
    inset 0 1px 0 rgba(255,255,255,.20) !important;
}
.rotunda-live-hero.hero-entry-image{
  background:
    radial-gradient(circle at 68% 55%,rgba(37,99,235,.20),transparent 36%),
    radial-gradient(circle at 78% 76%,rgba(124,58,237,.22),transparent 34%),
    linear-gradient(135deg,#02040b,#07111f 58%,#030712) !important;
  overflow:hidden !important;
}
.layer-background{
  filter:saturate(1.22) contrast(1.18) brightness(.50) !important;
}
.rotunda-live-hero::before{
  background:
    radial-gradient(circle at 69% 58%,rgba(255,255,255,.14) 0 8%,rgba(96,165,250,.16) 9% 24%,transparent 46%),
    radial-gradient(circle at 76% 77%,rgba(168,85,247,.22),transparent 34%),
    radial-gradient(circle at 55% 46%,rgba(34,211,238,.10),transparent 26%),
    linear-gradient(90deg,rgba(2,6,23,.92) 0%,rgba(8,13,28,.78) 30%,rgba(8,13,28,.44) 56%,rgba(2,6,23,.34) 100%) !important;
  mix-blend-mode:multiply;
}
.rotunda-live-hero::after{
  background:
    radial-gradient(ellipse at 68% 58%,rgba(147,197,253,.20),transparent 34%),
    radial-gradient(ellipse at 75% 80%,rgba(124,58,237,.18),transparent 38%),
    linear-gradient(115deg,transparent 0 36%,rgba(255,255,255,.16) 48%,transparent 62% 100%) !important;
  mix-blend-mode:screen !important;
  opacity:.82 !important;
}
.layer-heart{
  filter:
    drop-shadow(0 32px 70px rgba(0,0,0,.64))
    drop-shadow(0 0 26px rgba(96,165,250,.32))
    drop-shadow(0 0 16px rgba(244,63,94,.18))
    saturate(1.32)
    contrast(1.10)
    brightness(1.04) !important;
}
.layer-orbit-motion{
  opacity:.98 !important;
  filter:
    saturate(1.6)
    contrast(1.25)
    brightness(1.08)
    drop-shadow(0 0 24px rgba(34,211,238,.42))
    drop-shadow(0 0 36px rgba(124,58,237,.26)) !important;
}
.rotunda-hero-spark{
  background:rgba(191,219,254,.95) !important;
  box-shadow:0 0 30px rgba(34,211,238,.95),0 0 70px rgba(124,58,237,.40) !important;
}
.rotunda-live-copy{
  text-shadow:0 4px 22px rgba(0,0,0,.34);
}
.rotunda-live-lead{
  color:#d4e4f7 !important;
}
.rotunda-value-row span{
  background:linear-gradient(135deg,rgba(2,6,23,.82),rgba(14,30,55,.68)) !important;
  border-color:rgba(45,212,191,.18) !important;
}

/* v1.84 hero ring/pillar lighting balance */
.layer-background{
  filter:saturate(1.34) contrast(1.12) brightness(.66) hue-rotate(-2deg) !important;
}
.rotunda-live-hero::before{
  background:
    radial-gradient(circle at 68% 58%,rgba(255,255,255,.18) 0 8%,rgba(96,165,250,.24) 9% 28%,transparent 48%),
    radial-gradient(circle at 77% 78%,rgba(168,85,247,.28),transparent 36%),
    radial-gradient(circle at 73% 43%,rgba(34,211,238,.16),transparent 28%),
    linear-gradient(90deg,rgba(2,6,23,.82) 0%,rgba(8,13,28,.62) 30%,rgba(8,13,28,.22) 56%,rgba(2,6,23,.18) 100%) !important;
  mix-blend-mode:multiply;
}
.rotunda-live-hero::after{
  background:
    radial-gradient(ellipse at 68% 58%,rgba(191,219,254,.34),transparent 34%),
    radial-gradient(ellipse at 74% 80%,rgba(168,85,247,.28),transparent 40%),
    radial-gradient(ellipse at 79% 42%,rgba(34,211,238,.20),transparent 30%),
    linear-gradient(115deg,transparent 0 36%,rgba(255,255,255,.18) 48%,transparent 62% 100%) !important;
  opacity:.96 !important;
  mix-blend-mode:screen !important;
}
.layer-orbit-motion{
  opacity:1 !important;
  filter:
    saturate(1.95)
    contrast(1.34)
    brightness(1.34)
    drop-shadow(0 0 30px rgba(34,211,238,.68))
    drop-shadow(0 0 48px rgba(124,58,237,.42))
    drop-shadow(0 0 20px rgba(255,255,255,.18)) !important;
}
.layer-heart{
  filter:
    drop-shadow(0 32px 70px rgba(0,0,0,.56))
    drop-shadow(0 0 32px rgba(96,165,250,.36))
    drop-shadow(0 0 24px rgba(244,63,94,.22))
    saturate(1.34)
    contrast(1.11)
    brightness(1.08) !important;
}
.rotunda-live-hero .rotunda-hero-spark{
  opacity:.95 !important;
  background:rgba(225,245,255,.98) !important;
  box-shadow:
    0 0 30px rgba(34,211,238,.95),
    0 0 74px rgba(124,58,237,.46),
    0 0 18px rgba(255,255,255,.42) !important;
}

/* v1.85 supplied dark Rotunda background image */
.layer-background{
  object-position:center center !important;
  filter:saturate(1.20) contrast(1.08) brightness(.78) hue-rotate(-3deg) !important;
  transform:translateZ(0) scale(1.006) !important;
}
.rotunda-live-hero::before{
  background:
    radial-gradient(circle at 69% 62%,rgba(255,255,255,.10) 0 7%,rgba(96,165,250,.18) 8% 27%,transparent 50%),
    radial-gradient(circle at 75% 80%,rgba(168,85,247,.24),transparent 35%),
    radial-gradient(circle at 70% 34%,rgba(34,211,238,.12),transparent 32%),
    linear-gradient(90deg,rgba(2,6,23,.80) 0%,rgba(8,13,28,.56) 30%,rgba(8,13,28,.12) 57%,rgba(2,6,23,.10) 100%) !important;
}
.rotunda-live-hero::after{
  background:
    radial-gradient(ellipse at 69% 62%,rgba(191,219,254,.24),transparent 34%),
    radial-gradient(ellipse at 76% 80%,rgba(168,85,247,.22),transparent 40%),
    linear-gradient(115deg,transparent 0 36%,rgba(255,255,255,.12) 48%,transparent 62% 100%) !important;
}

/* v1.86 visible orbit bubbles: Science, Research, Education, Career */
.rotunda-orbit-bubble{
  position:absolute;
  z-index:7;
  width:clamp(92px,6.6vw,132px);
  height:clamp(92px,6.6vw,132px);
  display:grid;
  place-items:center;
  align-content:center;
  gap:3px;
  border-radius:999px;
  color:#fff;
  text-transform:uppercase;
  letter-spacing:.075em;
  font-size:clamp(10px,.74vw,13px);
  font-weight:950;
  background:
    radial-gradient(circle at 35% 20%,rgba(255,255,255,.50),rgba(96,165,250,.24) 40%,rgba(37,99,235,.36) 72%,rgba(15,23,42,.68)),
    linear-gradient(135deg,rgba(37,99,235,.70),rgba(124,58,237,.58),rgba(8,145,178,.54));
  border:1px solid rgba(219,234,254,.70);
  box-shadow:
    0 0 28px rgba(34,211,238,.48),
    0 0 52px rgba(124,58,237,.28),
    0 22px 44px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.70),
    inset 0 0 24px rgba(255,255,255,.16);
  backdrop-filter:blur(10px) saturate(1.35);
  transform:translate(-50%,-50%);
  animation:orbitBubbleFloat 6.8s ease-in-out infinite;
}
.rotunda-orbit-bubble::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:inherit;
  border:1px solid rgba(255,255,255,.30);
  box-shadow:inset 0 0 18px rgba(255,255,255,.18);
  pointer-events:none;
}
.rotunda-orbit-bubble b{
  display:grid;
  place-items:center;
  width:clamp(34px,2.7vw,48px);
  height:clamp(34px,2.7vw,48px);
  border-radius:999px;
  font-size:clamp(22px,1.8vw,31px);
  line-height:1;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.28);
  filter:drop-shadow(0 0 12px rgba(255,255,255,.35));
}
.rotunda-orbit-bubble em{
  position:relative;
  z-index:1;
  font-style:normal;
  text-shadow:0 2px 10px rgba(0,0,0,.72),0 0 12px rgba(34,211,238,.42);
}
.orbit-science{left:58.5%;top:37.2%;animation-delay:-.8s;}
.orbit-research{left:82.2%;top:36.7%;animation-delay:-2.3s;}
.orbit-education{left:55.8%;top:76.6%;animation-delay:-3.4s;}
.orbit-career{left:84.8%;top:75.2%;animation-delay:-4.6s;}
@keyframes orbitBubbleFloat{
  0%,100%{transform:translate(-50%,-50%) scale(1);filter:brightness(1)}
  48%{transform:translate(-50%,calc(-50% - 8px)) scale(1.025);filter:brightness(1.14)}
}
@media(max-width:980px){
  .rotunda-orbit-bubble{display:none;}
}
@media(prefers-reduced-motion:reduce){
  .rotunda-orbit-bubble{animation:none !important;}
}

/* v1.87 softened heart spotlight: keep the anatomy rich, reduce the direct glare */
.layer-heart{
  filter:
    drop-shadow(0 30px 62px rgba(0,0,0,.54))
    drop-shadow(0 0 22px rgba(96,165,250,.26))
    drop-shadow(0 0 14px rgba(244,63,94,.14))
    saturate(1.24)
    contrast(1.06)
    brightness(1.00) !important;
}
.layer-heart.ventricular-beat{
  filter:
    drop-shadow(0 30px 62px rgba(0,0,0,.56))
    drop-shadow(0 0 25px rgba(96,165,250,.30))
    drop-shadow(0 0 16px rgba(244,63,94,.16))
    saturate(1.26)
    contrast(1.07)
    brightness(1.02) !important;
}
.rotunda-live-hero::after{
  opacity:.86 !important;
}

/* v1.88 true circular orbit + smoother motion pass */
.rotunda-live-layer,
.rotunda-true-orbit-ring,
.rotunda-orbit-bubble,
.course-grid .course-card,
.course-grid .course-card *,
.course-layer-bg,
.course-kinetic-logo,
.course-kinetic-logo img,
.kinetic-ring{
  backface-visibility:hidden;
  -webkit-font-smoothing:antialiased;
}
.layer-orbit,
.layer-orbit-motion{
  opacity:0 !important;
  visibility:hidden !important;
}
.rotunda-true-orbit-ring{
  position:absolute !important;
  left:71.2% !important;
  top:58.4% !important;
  width:clamp(390px,31vw,590px) !important;
  aspect-ratio:1 / 1 !important;
  height:auto !important;
  right:auto !important;
  bottom:auto !important;
  inset:auto !important;
  z-index:5 !important;
  transform:translate(-50%,-50%) translateZ(0) !important;
  border-radius:999px !important;
  border:2px solid rgba(219,234,254,.58) !important;
  background:
    radial-gradient(circle at center,transparent 55%,rgba(96,165,250,.08) 57%,transparent 66%),
    conic-gradient(from 8deg,rgba(34,211,238,.05),rgba(255,255,255,.72),rgba(124,58,237,.14),rgba(34,211,238,.74),rgba(255,255,255,.10),rgba(34,211,238,.05)) !important;
  box-shadow:
    0 0 26px rgba(34,211,238,.34),
    0 0 54px rgba(124,58,237,.24),
    inset 0 0 34px rgba(147,197,253,.16) !important;
  opacity:.94 !important;
  animation:rotundaTrueRingBreathe 9.5s cubic-bezier(.45,0,.25,1) infinite !important;
  pointer-events:none !important;
}
.rotunda-true-orbit-ring::before,
.rotunda-true-orbit-ring::after{
  content:"" !important;
  position:absolute !important;
  border-radius:inherit !important;
  pointer-events:none !important;
}
.rotunda-true-orbit-ring::before{
  inset:14px !important;
  border:1px solid rgba(255,255,255,.30) !important;
  box-shadow:inset 0 0 20px rgba(255,255,255,.10) !important;
}
.rotunda-true-orbit-ring::after{
  left:10% !important;
  right:10% !important;
  top:50% !important;
  height:2px !important;
  transform:translateY(-50%) !important;
  background:
    linear-gradient(90deg,
      transparent 0 8%,
      rgba(191,219,254,.92) 9% 22%,
      transparent 23% 28%,
      rgba(34,211,238,.95) 29% 31%,
      transparent 32% 38%,
      rgba(255,255,255,.92) 39% 61%,
      transparent 62% 70%,
      rgba(34,211,238,.92) 71% 74%,
      transparent 75% 80%,
      rgba(191,219,254,.86) 81% 92%,
      transparent 93% 100%) !important;
  box-shadow:0 0 16px rgba(191,219,254,.52) !important;
}
.layer-heart{
  transform:translate(1.2%,-.7%) translateZ(0) scale(.992) !important;
  transform-origin:67% 72% !important;
  animation:rotundaHeartFloatSmooth 8.4s cubic-bezier(.45,0,.25,1) infinite !important;
}
.layer-heart.ventricular-beat{
  animation:rotundaHeartFloatSmooth 8.4s cubic-bezier(.45,0,.25,1) infinite, ventricularContractionSmooth 2.7s cubic-bezier(.34,0,.2,1) 1 !important;
}
.rotunda-orbit-bubble{
  inset:auto !important;
  right:auto !important;
  bottom:auto !important;
  z-index:8 !important;
  width:clamp(92px,6.35vw,124px) !important;
  height:clamp(92px,6.35vw,124px) !important;
  min-width:0 !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-rows:1fr auto !important;
  align-items:center !important;
  justify-items:center !important;
  gap:1px !important;
  overflow:visible !important;
  background:
    radial-gradient(circle at 35% 20%,rgba(255,255,255,.68),rgba(147,197,253,.34) 38%,rgba(37,99,235,.46) 70%,rgba(15,23,42,.72)),
    linear-gradient(135deg,rgba(37,99,235,.82),rgba(124,58,237,.64),rgba(8,145,178,.62)) !important;
  border:1.5px solid rgba(219,234,254,.82) !important;
  box-shadow:
    0 0 24px rgba(34,211,238,.50),
    0 0 48px rgba(124,58,237,.27),
    0 18px 38px rgba(0,0,0,.36),
    inset 0 1px 0 rgba(255,255,255,.82),
    inset 0 0 22px rgba(255,255,255,.18) !important;
  transform:translate(-50%,-50%) translateZ(0) !important;
  animation:orbitBubbleFloatSmooth 8.8s cubic-bezier(.45,0,.25,1) infinite !important;
}
.rotunda-orbit-bubble b{
  position:relative !important;
  z-index:2 !important;
  display:grid !important;
  place-items:center !important;
  width:clamp(40px,3vw,54px) !important;
  height:clamp(40px,3vw,54px) !important;
  margin-top:8px !important;
  border-radius:999px !important;
  font-family:"Apple Color Emoji","Segoe UI Emoji",system-ui,sans-serif !important;
  font-size:clamp(25px,2vw,34px) !important;
  line-height:1 !important;
  color:#fff !important;
  background:rgba(255,255,255,.20) !important;
  border:1px solid rgba(255,255,255,.32) !important;
  text-shadow:0 2px 10px rgba(0,0,0,.35) !important;
  filter:drop-shadow(0 0 12px rgba(255,255,255,.35)) !important;
}
.rotunda-orbit-bubble em{
  position:relative !important;
  z-index:2 !important;
  display:block !important;
  padding-bottom:14px !important;
  color:#fff !important;
  font-size:clamp(9px,.68vw,12px) !important;
  line-height:1.05 !important;
  letter-spacing:.055em !important;
  text-align:center !important;
  text-shadow:0 2px 10px rgba(0,0,0,.78),0 0 12px rgba(34,211,238,.52) !important;
  opacity:1 !important;
  visibility:visible !important;
}
.orbit-science{left:61.6% !important;top:40.2% !important;animation-delay:-.7s !important;}
.orbit-research{left:81.0% !important;top:40.0% !important;animation-delay:-2.9s !important;}
.orbit-education{left:61.0% !important;top:76.3% !important;animation-delay:-4.4s !important;}
.orbit-career{left:81.5% !important;top:75.9% !important;animation-delay:-6.1s !important;}
.rotunda-live-hero .rotunda-hero-spark{
  animation-duration:7.8s !important;
  animation-timing-function:cubic-bezier(.45,0,.25,1) !important;
}
.rotunda-hero-wave{
  animation-duration:9.2s !important;
  animation-timing-function:cubic-bezier(.45,0,.25,1) !important;
}
.course-grid .course-card{
  transition:transform .7s cubic-bezier(.22,1,.36,1), box-shadow .7s cubic-bezier(.22,1,.36,1), border-color .7s cubic-bezier(.22,1,.36,1) !important;
  transform:translateZ(0) !important;
}
.course-grid .course-card:hover,
body.is-authenticated .course-grid .course-card:hover{
  transform:translate3d(0,-3px,0) scale(1.004) !important;
}
.course-grid .course-card .course-layer-bg,
.course-grid .course-card:hover .course-layer-bg{
  transition:filter .9s cubic-bezier(.22,1,.36,1), transform 1.1s cubic-bezier(.22,1,.36,1) !important;
}
.course-grid .course-card:hover .course-layer-bg{
  transform:translateZ(0) scale(1.018) !important;
}
.course-kinetic-logo{
  animation:courseLogoFloatSmooth 8.8s cubic-bezier(.45,0,.25,1) infinite !important;
  will-change:transform;
}
.course-grid .course-card:hover .course-kinetic-logo{
  animation-duration:7.6s !important;
}
.course-grid .course-card .course-kinetic-logo img,
.course-grid .course-card:hover .course-kinetic-logo img{
  transition:filter .8s cubic-bezier(.22,1,.36,1), transform .8s cubic-bezier(.22,1,.36,1) !important;
  animation:courseLogoBreatheSmooth 7.8s cubic-bezier(.45,0,.25,1) infinite !important;
  transform-origin:center center !important;
  will-change:transform;
}
.ring-one{animation:courseRingSpinSmooth 34s linear infinite !important;}
.ring-two{animation:courseRingSpinSmooth 48s linear reverse infinite !important;}
.course-grid .course-card::after{
  animation:coursePulseLineSmooth 8.4s cubic-bezier(.45,0,.25,1) infinite !important;
}
@keyframes rotundaTrueRingBreathe{
  0%,100%{transform:translate(-50%,-50%) translateZ(0) scale(1);opacity:.88;}
  50%{transform:translate(-50%,-50%) translateZ(0) scale(1.012);opacity:1;}
}
@keyframes rotundaHeartFloatSmooth{
  0%,100%{transform:translate(1.2%,-.7%) translateZ(0) scale(.992);}
  50%{transform:translate(1.2%,-1.35%) translateZ(0) scale(.996);}
}
@keyframes ventricularContractionSmooth{
  0%,100%{transform:translate(1.2%,-.7%) translateZ(0) scale(.992);}
  18%{transform:translate(1.2%,-.7%) translateZ(0) scale(1.014,.986);}
  34%{transform:translate(1.2%,-.7%) translateZ(0) scale(.984,1.012);}
  54%{transform:translate(1.2%,-.9%) translateZ(0) scale(1.006);}
}
@keyframes orbitBubbleFloatSmooth{
  0%,100%{transform:translate(-50%,-50%) translateZ(0) scale(1);filter:brightness(1);}
  50%{transform:translate(-50%,calc(-50% - 5px)) translateZ(0) scale(1.012);filter:brightness(1.08);}
}
@keyframes courseLogoFloatSmooth{
  0%,100%{transform:translate3d(-50%,0,0);}
  50%{transform:translate3d(-50%,-5px,0);}
}
@keyframes courseLogoBreatheSmooth{
  0%,100%{transform:translateZ(0) scale(1) rotate(0deg);}
  50%{transform:translateZ(0) scale(1.018) rotate(.25deg);}
}
@keyframes courseRingSpinSmooth{to{transform:rotate(360deg)}}
@keyframes coursePulseLineSmooth{
  0%,100%{opacity:.36;transform:translateZ(0) scaleX(.86);}
  50%{opacity:.72;transform:translateZ(0) scaleX(1);}
}
@media(max-width:980px){
  .rotunda-true-orbit-ring{display:none !important;}
}
@media(prefers-reduced-motion:reduce){
  .rotunda-true-orbit-ring,
  .layer-heart,
  .layer-heart.ventricular-beat,
  .rotunda-orbit-bubble,
  .course-kinetic-logo,
  .course-grid .course-card .course-kinetic-logo img,
  .kinetic-ring,
  .course-grid .course-card::after{
    animation:none !important;
  }
}

/* v1.89 correction: real orbit image icons, visible rings, better heart/stage centering */
.rotunda-live-copy{
  z-index:12 !important;
}
.layer-orbit,
.layer-orbit-motion{
  opacity:0 !important;
  visibility:hidden !important;
}
.rotunda-true-orbit-ring{
  display:block !important;
  visibility:visible !important;
  left:70.6% !important;
  top:61.6% !important;
  width:clamp(430px,34vw,650px) !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  z-index:7 !important;
  opacity:1 !important;
  border:2px solid rgba(219,234,254,.72) !important;
  background:
    radial-gradient(circle at center,transparent 45%,rgba(59,130,246,.09) 48%,transparent 59%),
    conic-gradient(from 0deg,
      rgba(255,255,255,.18) 0deg,
      rgba(34,211,238,.80) 34deg,
      rgba(255,255,255,.30) 82deg,
      rgba(124,58,237,.50) 124deg,
      rgba(255,255,255,.16) 174deg,
      rgba(34,211,238,.80) 215deg,
      rgba(255,255,255,.34) 272deg,
      rgba(124,58,237,.48) 318deg,
      rgba(255,255,255,.18) 360deg) !important;
  box-shadow:
    0 0 34px rgba(34,211,238,.58),
    0 0 72px rgba(124,58,237,.34),
    inset 0 0 36px rgba(147,197,253,.18) !important;
  mix-blend-mode:screen !important;
}
.rotunda-true-orbit-ring::before{
  inset:18px !important;
  border:1.5px solid rgba(255,255,255,.42) !important;
  box-shadow:
    inset 0 0 24px rgba(255,255,255,.14),
    0 0 20px rgba(147,197,253,.18) !important;
}
.rotunda-true-orbit-ring::after{
  left:8% !important;
  right:8% !important;
  top:50% !important;
  height:3px !important;
  background:
    linear-gradient(90deg,
      transparent 0 6%,
      rgba(191,219,254,.88) 7% 17%,
      transparent 18% 24%,
      rgba(255,255,255,.95) 25% 28%,
      transparent 29% 34%,
      rgba(34,211,238,.92) 35% 40%,
      transparent 41% 46%,
      rgba(255,255,255,.95) 47% 53%,
      transparent 54% 60%,
      rgba(34,211,238,.92) 61% 66%,
      transparent 67% 74%,
      rgba(191,219,254,.88) 75% 91%,
      transparent 92% 100%) !important;
  box-shadow:
    0 0 18px rgba(191,219,254,.70),
    0 0 32px rgba(34,211,238,.36) !important;
}
.layer-heart{
  z-index:8 !important;
  transform:translate(-3.8%,.55%) translateZ(0) scale(.985) !important;
  transform-origin:66% 73% !important;
  animation:rotundaHeartFloatCentered 8.8s cubic-bezier(.45,0,.25,1) infinite !important;
}
.layer-heart.ventricular-beat{
  animation:rotundaHeartFloatCentered 8.8s cubic-bezier(.45,0,.25,1) infinite, ventricularContractionCentered 2.7s cubic-bezier(.34,0,.2,1) 1 !important;
}
.rotunda-orbit-bubble{
  z-index:10 !important;
  width:clamp(104px,6.9vw,136px) !important;
  height:clamp(104px,6.9vw,136px) !important;
  grid-template-rows:1fr auto !important;
  background:
    radial-gradient(circle at 32% 20%,rgba(255,255,255,.62),rgba(147,197,253,.30) 34%,rgba(59,130,246,.48) 62%,rgba(30,41,59,.76)),
    linear-gradient(145deg,rgba(37,99,235,.82),rgba(124,58,237,.66),rgba(8,145,178,.62)) !important;
  border:1.5px solid rgba(219,234,254,.82) !important;
  box-shadow:
    0 0 26px rgba(34,211,238,.54),
    0 0 54px rgba(124,58,237,.30),
    0 18px 40px rgba(0,0,0,.38),
    inset 0 1px 0 rgba(255,255,255,.82),
    inset 0 0 26px rgba(255,255,255,.18) !important;
}
.rotunda-orbit-bubble b{
  margin-top:12px !important;
  width:clamp(48px,3.45vw,64px) !important;
  height:clamp(48px,3.45vw,64px) !important;
  background:rgba(255,255,255,.15) !important;
  border:1px solid rgba(255,255,255,.26) !important;
  font-size:0 !important;
}
.rotunda-orbit-bubble b img{
  display:block !important;
  width:82% !important;
  height:82% !important;
  object-fit:contain !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:
    drop-shadow(0 0 10px rgba(255,255,255,.42))
    drop-shadow(0 0 14px rgba(34,211,238,.26)) !important;
}
.rotunda-orbit-bubble em{
  padding-bottom:15px !important;
  font-size:clamp(10px,.72vw,13px) !important;
  letter-spacing:.075em !important;
  font-weight:950 !important;
}
.orbit-science{left:61.7% !important;top:44.7% !important;}
.orbit-research{left:79.2% !important;top:44.7% !important;}
.orbit-education{left:61.7% !important;top:77.0% !important;}
.orbit-career{left:79.2% !important;top:77.0% !important;}
@keyframes rotundaHeartFloatCentered{
  0%,100%{transform:translate(-3.8%,.55%) translateZ(0) scale(.985);}
  50%{transform:translate(-3.8%,-.15%) translateZ(0) scale(.990);}
}
@keyframes ventricularContractionCentered{
  0%,100%{transform:translate(-3.8%,.55%) translateZ(0) scale(.985);}
  18%{transform:translate(-3.8%,.55%) translateZ(0) scale(1.006,.978);}
  34%{transform:translate(-3.8%,.55%) translateZ(0) scale(.974,1.006);}
  54%{transform:translate(-3.8%,.25%) translateZ(0) scale(.992);}
}

/* v1.90 bring back the good circulation feel: perimeter bubbles + moving dashes/points */
.rotunda-circulation-ring{
  position:absolute !important;
  left:70.5% !important;
  top:62.9% !important;
  width:clamp(410px,32vw,610px) !important;
  aspect-ratio:1 / 1 !important;
  z-index:6 !important;
  transform:translate(-50%,-50%) translateZ(0) !important;
  border-radius:999px !important;
  pointer-events:none !important;
  opacity:.96 !important;
  filter:
    drop-shadow(0 0 22px rgba(34,211,238,.34))
    drop-shadow(0 0 34px rgba(124,58,237,.20)) !important;
}
.rotunda-circulation-ring::before,
.rotunda-circulation-ring::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 18px),#000 calc(100% - 17px),#000 calc(100% - 5px),transparent calc(100% - 4px));
  mask:radial-gradient(farthest-side,transparent calc(100% - 18px),#000 calc(100% - 17px),#000 calc(100% - 5px),transparent calc(100% - 4px));
}
.rotunda-circulation-ring::before{
  background:
    repeating-conic-gradient(from 0deg,
      rgba(255,255,255,.88) 0deg 4deg,
      transparent 4deg 16deg,
      rgba(34,211,238,.72) 16deg 20deg,
      transparent 20deg 34deg) !important;
  animation:rotundaCirculationSpin 15s linear infinite !important;
}
.rotunda-circulation-ring::after{
  inset:17px !important;
  background:
    repeating-conic-gradient(from 18deg,
      transparent 0deg 9deg,
      rgba(191,219,254,.76) 9deg 11deg,
      transparent 11deg 27deg) !important;
  opacity:.72 !important;
  animation:rotundaCirculationSpinReverse 22s linear infinite !important;
}
.rotunda-circulation-ring i{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:10px !important;
  height:10px !important;
  margin:-5px 0 0 -5px !important;
  border-radius:999px !important;
  background:rgba(219,234,254,.96) !important;
  box-shadow:
    0 0 14px rgba(255,255,255,.90),
    0 0 28px rgba(34,211,238,.58) !important;
  transform-origin:0 0 !important;
  animation:rotundaOrbitDot 8.8s linear infinite !important;
}
.rotunda-circulation-ring .dot-a{animation-delay:0s !important;}
.rotunda-circulation-ring .dot-b{animation-delay:-2.2s !important;}
.rotunda-circulation-ring .dot-c{animation-delay:-4.4s !important;}
.rotunda-circulation-ring .dot-d{animation-delay:-6.6s !important;}
.rotunda-true-orbit-ring{
  left:70.5% !important;
  top:62.9% !important;
  width:clamp(410px,32vw,610px) !important;
  z-index:5 !important;
  opacity:.68 !important;
  border-color:rgba(219,234,254,.52) !important;
  background:
    radial-gradient(circle at center,transparent 57%,rgba(59,130,246,.08) 59%,transparent 68%) !important;
  box-shadow:
    0 0 26px rgba(34,211,238,.35),
    0 0 54px rgba(124,58,237,.22),
    inset 0 0 28px rgba(147,197,253,.12) !important;
}
.rotunda-true-orbit-ring::before{
  inset:16px !important;
  border-color:rgba(255,255,255,.25) !important;
}
.rotunda-true-orbit-ring::after{
  opacity:.52 !important;
  height:2px !important;
}
.layer-heart{
  z-index:8 !important;
  transform:translate(-2.7%,.15%) translateZ(0) scale(.982) !important;
  transform-origin:66% 73% !important;
  animation:rotundaHeartFloatV90 8.8s cubic-bezier(.45,0,.25,1) infinite !important;
}
.layer-heart.ventricular-beat{
  animation:rotundaHeartFloatV90 8.8s cubic-bezier(.45,0,.25,1) infinite, ventricularContractionV90 2.7s cubic-bezier(.34,0,.2,1) 1 !important;
}
.rotunda-orbit-bubble{
  width:clamp(92px,6.1vw,118px) !important;
  height:clamp(92px,6.1vw,118px) !important;
  z-index:11 !important;
}
.rotunda-orbit-bubble b{
  margin-top:9px !important;
  width:clamp(42px,3vw,54px) !important;
  height:clamp(42px,3vw,54px) !important;
}
.rotunda-orbit-bubble em{
  padding-bottom:12px !important;
  font-size:clamp(9px,.68vw,12px) !important;
}
.orbit-science{left:59.2% !important;top:42.1% !important;}
.orbit-research{left:81.8% !important;top:42.1% !important;}
.orbit-education{left:59.2% !important;top:81.0% !important;}
.orbit-career{left:81.8% !important;top:81.0% !important;}
@keyframes rotundaCirculationSpin{to{transform:rotate(360deg)}}
@keyframes rotundaCirculationSpinReverse{to{transform:rotate(-360deg)}}
@keyframes rotundaOrbitDot{
  0%{transform:rotate(0deg) translateX(clamp(205px,16vw,305px)) rotate(0deg);opacity:.35;}
  8%,42%{opacity:.95;}
  50%{opacity:.55;}
  58%,92%{opacity:.95;}
  100%{transform:rotate(360deg) translateX(clamp(205px,16vw,305px)) rotate(-360deg);opacity:.35;}
}
@keyframes rotundaHeartFloatV90{
  0%,100%{transform:translate(-2.7%,.15%) translateZ(0) scale(.982);}
  50%{transform:translate(-2.7%,-.45%) translateZ(0) scale(.987);}
}
@keyframes ventricularContractionV90{
  0%,100%{transform:translate(-2.7%,.15%) translateZ(0) scale(.982);}
  18%{transform:translate(-2.7%,.15%) translateZ(0) scale(1.004,.978);}
  34%{transform:translate(-2.7%,.15%) translateZ(0) scale(.974,1.006);}
  54%{transform:translate(-2.7%,-.1%) translateZ(0) scale(.990);}
}
@media(max-width:980px){
  .rotunda-circulation-ring{display:none !important;}
}
@media(prefers-reduced-motion:reduce){
  .rotunda-circulation-ring,
  .rotunda-circulation-ring::before,
  .rotunda-circulation-ring::after,
  .rotunda-circulation-ring i{
    animation:none !important;
  }
}

/* v1.91 expanded hologram orbit: wider bubbles, higher center, layered thin dash paths */
.rotunda-circulation-ring{
  left:70.8% !important;
  top:57.8% !important;
  width:clamp(470px,36vw,700px) !important;
  opacity:1 !important;
  z-index:6 !important;
  filter:
    drop-shadow(0 0 24px rgba(34,211,238,.40))
    drop-shadow(0 0 42px rgba(124,58,237,.24)) !important;
}
.rotunda-circulation-ring::before,
.rotunda-circulation-ring::after{
  -webkit-mask:
    radial-gradient(farthest-side,
      transparent calc(100% - 15px),
      #000 calc(100% - 14px),
      #000 calc(100% - 8px),
      transparent calc(100% - 7px)) !important;
  mask:
    radial-gradient(farthest-side,
      transparent calc(100% - 15px),
      #000 calc(100% - 14px),
      #000 calc(100% - 8px),
      transparent calc(100% - 7px)) !important;
}
.rotunda-circulation-ring::before{
  background:
    repeating-conic-gradient(from -12deg,
      rgba(255,255,255,.92) 0deg 2.4deg,
      transparent 2.4deg 11deg,
      rgba(34,211,238,.76) 11deg 13.5deg,
      transparent 13.5deg 26deg) !important;
  animation:rotundaCirculationLongDash 28s linear infinite !important;
}
.rotunda-circulation-ring::after{
  inset:22px !important;
  opacity:.82 !important;
  -webkit-mask:
    radial-gradient(farthest-side,
      transparent calc(100% - 12px),
      #000 calc(100% - 11px),
      #000 calc(100% - 7px),
      transparent calc(100% - 6px)) !important;
  mask:
    radial-gradient(farthest-side,
      transparent calc(100% - 12px),
      #000 calc(100% - 11px),
      #000 calc(100% - 7px),
      transparent calc(100% - 6px)) !important;
  background:
    repeating-conic-gradient(from 25deg,
      transparent 0deg 6deg,
      rgba(191,219,254,.86) 6deg 7.7deg,
      transparent 7.7deg 18deg,
      rgba(124,58,237,.58) 18deg 19.2deg,
      transparent 19.2deg 32deg) !important;
  animation:rotundaCirculationNeedleDash 44s linear reverse infinite !important;
}
.rotunda-circulation-ring{
  background:
    radial-gradient(circle at center,transparent 55%,rgba(34,211,238,.055) 56%,transparent 63%),
    radial-gradient(circle at center,transparent 70%,rgba(124,58,237,.045) 71%,transparent 78%) !important;
}
.rotunda-circulation-ring i{
  width:8px !important;
  height:8px !important;
  margin:-4px 0 0 -4px !important;
  animation:rotundaOrbitDotWide 13.5s linear infinite !important;
}
.rotunda-circulation-ring i::after{
  content:"" !important;
  position:absolute !important;
  right:7px !important;
  top:50% !important;
  width:34px !important;
  height:2px !important;
  transform:translateY(-50%) !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,transparent,rgba(219,234,254,.78)) !important;
  box-shadow:0 0 12px rgba(34,211,238,.34) !important;
}
.rotunda-circulation-ring .dot-a{animation-delay:0s !important;}
.rotunda-circulation-ring .dot-b{animation-delay:-3.375s !important;}
.rotunda-circulation-ring .dot-c{animation-delay:-6.75s !important;}
.rotunda-circulation-ring .dot-d{animation-delay:-10.125s !important;}
.rotunda-true-orbit-ring{
  left:70.8% !important;
  top:57.8% !important;
  width:clamp(470px,36vw,700px) !important;
  opacity:.54 !important;
  border-width:1px !important;
  border-color:rgba(219,234,254,.44) !important;
  background:
    radial-gradient(circle at center,transparent 62%,rgba(59,130,246,.055) 63%,transparent 72%) !important;
}
.rotunda-true-orbit-ring::before{
  inset:24px !important;
  border-color:rgba(255,255,255,.20) !important;
}
.rotunda-true-orbit-ring::after{
  opacity:.30 !important;
}
.rotunda-orbit-bubble{
  width:clamp(96px,6.25vw,124px) !important;
  height:clamp(96px,6.25vw,124px) !important;
  animation:orbitBubbleFloatWide 10.8s cubic-bezier(.45,0,.25,1) infinite !important;
}
.orbit-science{left:56.8% !important;top:36.8% !important;}
.orbit-research{left:84.5% !important;top:36.8% !important;}
.orbit-education{left:56.8% !important;top:77.0% !important;}
.orbit-career{left:84.5% !important;top:77.0% !important;}
.layer-heart{
  transform:translate(-2.7%,-.2%) translateZ(0) scale(.982) !important;
  animation:rotundaHeartFloatV91 8.8s cubic-bezier(.45,0,.25,1) infinite !important;
}
.layer-heart.ventricular-beat{
  animation:rotundaHeartFloatV91 8.8s cubic-bezier(.45,0,.25,1) infinite, ventricularContractionV91 2.7s cubic-bezier(.34,0,.2,1) 1 !important;
}
@keyframes rotundaCirculationLongDash{to{transform:rotate(360deg)}}
@keyframes rotundaCirculationNeedleDash{to{transform:rotate(-360deg)}}
@keyframes rotundaOrbitDotWide{
  0%{transform:rotate(0deg) translateX(clamp(235px,18vw,350px)) rotate(0deg);opacity:.24;}
  7%,38%{opacity:.92;}
  50%{opacity:.46;}
  62%,93%{opacity:.96;}
  100%{transform:rotate(360deg) translateX(clamp(235px,18vw,350px)) rotate(-360deg);opacity:.24;}
}
@keyframes orbitBubbleFloatWide{
  0%,100%{transform:translate(-50%,-50%) translateZ(0) scale(1);filter:brightness(1);}
  50%{transform:translate(-50%,calc(-50% - 6px)) translateZ(0) scale(1.014);filter:brightness(1.09);}
}
@keyframes rotundaHeartFloatV91{
  0%,100%{transform:translate(-2.7%,-.2%) translateZ(0) scale(.982);}
  50%{transform:translate(-2.7%,-.85%) translateZ(0) scale(.987);}
}
@keyframes ventricularContractionV91{
  0%,100%{transform:translate(-2.7%,-.2%) translateZ(0) scale(.982);}
  18%{transform:translate(-2.7%,-.2%) translateZ(0) scale(1.006,.978);}
  34%{transform:translate(-2.7%,-.2%) translateZ(0) scale(.974,1.006);}
  54%{transform:translate(-2.7%,-.45%) translateZ(0) scale(.990);}
}

/* v1.92 hard clearance pass: bubbles must not cover the heart */
.rotunda-circulation-ring,
.rotunda-true-orbit-ring{
  left:70.9% !important;
  top:56.9% !important;
  width:clamp(500px,38vw,740px) !important;
}
.rotunda-orbit-bubble{
  width:clamp(82px,5.45vw,108px) !important;
  height:clamp(82px,5.45vw,108px) !important;
  z-index:11 !important;
}
.rotunda-orbit-bubble b{
  width:clamp(37px,2.65vw,48px) !important;
  height:clamp(37px,2.65vw,48px) !important;
  margin-top:8px !important;
}
.rotunda-orbit-bubble em{
  padding-bottom:10px !important;
  font-size:clamp(8px,.61vw,11px) !important;
}
.orbit-science{left:54.1% !important;top:34.4% !important;}
.orbit-research{left:88.1% !important;top:34.4% !important;}
.orbit-education{left:54.1% !important;top:80.8% !important;}
.orbit-career{left:88.1% !important;top:80.8% !important;}
@media(max-width:1180px){
  .orbit-science{left:52.5% !important;top:33.6% !important;}
  .orbit-research{left:89.0% !important;top:33.6% !important;}
  .orbit-education{left:52.5% !important;top:82.0% !important;}
  .orbit-career{left:89.0% !important;top:82.0% !important;}
}

/* v1.93 absolute heart clearance: place bubbles outside the heart artwork envelope */
.rotunda-orbit-bubble{
  width:clamp(74px,4.85vw,94px) !important;
  height:clamp(74px,4.85vw,94px) !important;
  opacity:.94 !important;
}
.rotunda-orbit-bubble b{
  width:clamp(32px,2.25vw,41px) !important;
  height:clamp(32px,2.25vw,41px) !important;
  margin-top:7px !important;
}
.rotunda-orbit-bubble em{
  padding-bottom:8px !important;
  font-size:clamp(7px,.54vw,10px) !important;
}
.orbit-science{left:49.2% !important;top:29.5% !important;}
.orbit-research{left:92.7% !important;top:29.5% !important;}
.orbit-education{left:49.2% !important;top:88.2% !important;}
.orbit-career{left:92.7% !important;top:88.2% !important;}
@media(max-width:1180px){
  .orbit-science{left:47.2% !important;top:29.0% !important;}
  .orbit-research{left:93.4% !important;top:29.0% !important;}
  .orbit-education{left:47.2% !important;top:89.0% !important;}
  .orbit-career{left:93.4% !important;top:89.0% !important;}
}

/* v1.94 centered heart halo: closer, larger, iridescent bubbles without covering the heart */
.rotunda-circulation-ring,
.rotunda-true-orbit-ring{
  left:72.2% !important;
  top:61.2% !important;
  width:clamp(430px,32.5vw,635px) !important;
}
.rotunda-circulation-ring{
  opacity:.98 !important;
  filter:
    drop-shadow(0 0 24px rgba(34,211,238,.44))
    drop-shadow(0 0 42px rgba(168,85,247,.26)) !important;
}
.rotunda-true-orbit-ring{
  opacity:.60 !important;
  border-color:rgba(226,232,240,.50) !important;
  box-shadow:
    0 0 28px rgba(34,211,238,.36),
    0 0 58px rgba(168,85,247,.24),
    inset 0 0 30px rgba(147,197,253,.14) !important;
}
.rotunda-orbit-bubble{
  width:clamp(98px,6.35vw,126px) !important;
  height:clamp(98px,6.35vw,126px) !important;
  opacity:1 !important;
  background:
    radial-gradient(circle at 28% 18%,rgba(255,255,255,.88),rgba(236,254,255,.42) 28%,rgba(147,197,253,.32) 48%,rgba(124,58,237,.30) 68%,rgba(8,47,73,.66)),
    conic-gradient(from 210deg,
      rgba(34,211,238,.34),
      rgba(255,255,255,.30),
      rgba(168,85,247,.34),
      rgba(45,212,191,.30),
      rgba(59,130,246,.42),
      rgba(34,211,238,.34)) !important;
  border:1.5px solid rgba(226,232,240,.76) !important;
  box-shadow:
    0 0 24px rgba(34,211,238,.48),
    0 0 48px rgba(168,85,247,.30),
    0 18px 40px rgba(0,0,0,.35),
    inset 0 1px 0 rgba(255,255,255,.90),
    inset 0 0 24px rgba(255,255,255,.20) !important;
  backdrop-filter:blur(12px) saturate(1.6) !important;
}
.rotunda-orbit-bubble::before{
  inset:9px !important;
  border:1px solid rgba(255,255,255,.32) !important;
  box-shadow:
    inset 0 0 18px rgba(255,255,255,.18),
    0 0 14px rgba(34,211,238,.14) !important;
}
.rotunda-orbit-bubble b{
  width:clamp(43px,3.1vw,58px) !important;
  height:clamp(43px,3.1vw,58px) !important;
  margin-top:10px !important;
  background:
    radial-gradient(circle at 35% 20%,rgba(255,255,255,.52),rgba(255,255,255,.12) 60%,rgba(15,23,42,.18)) !important;
  border:1px solid rgba(255,255,255,.34) !important;
}
.rotunda-orbit-bubble b img{
  width:84% !important;
  height:84% !important;
  filter:
    drop-shadow(0 0 10px rgba(255,255,255,.50))
    drop-shadow(0 0 16px rgba(34,211,238,.34)) !important;
}
.rotunda-orbit-bubble em{
  padding-bottom:12px !important;
  font-size:clamp(9px,.66vw,12px) !important;
  letter-spacing:.078em !important;
}
.orbit-science{left:59.1% !important;top:43.2% !important;}
.orbit-research{left:85.0% !important;top:43.2% !important;}
.orbit-education{left:59.1% !important;top:79.4% !important;}
.orbit-career{left:85.0% !important;top:79.4% !important;}
.rotunda-circulation-ring i{
  animation:rotundaOrbitDotV94 13.5s linear infinite !important;
}
@keyframes rotundaOrbitDotV94{
  0%{transform:rotate(0deg) translateX(clamp(215px,16.25vw,318px)) rotate(0deg);opacity:.24;}
  7%,38%{opacity:.94;}
  50%{opacity:.48;}
  62%,93%{opacity:.98;}
  100%{transform:rotate(360deg) translateX(clamp(215px,16.25vw,318px)) rotate(-360deg);opacity:.24;}
}
@media(max-width:1180px){
  .rotunda-circulation-ring,
  .rotunda-true-orbit-ring{
    left:72.6% !important;
    top:61.0% !important;
    width:clamp(390px,34vw,560px) !important;
  }
  .rotunda-orbit-bubble{
    width:clamp(86px,6vw,108px) !important;
    height:clamp(86px,6vw,108px) !important;
  }
  .orbit-science{left:58.2% !important;top:43.0% !important;}
  .orbit-research{left:87.0% !important;top:43.0% !important;}
  .orbit-education{left:58.2% !important;top:80.0% !important;}
  .orbit-career{left:87.0% !important;top:80.0% !important;}
}

/* v1.95 heart-centered halo: align ring/bubbles to the heart, not the stage */
.rotunda-circulation-ring,
.rotunda-true-orbit-ring{
  left:72.0% !important;
  top:53.8% !important;
  width:clamp(455px,33.6vw,655px) !important;
}
.rotunda-true-orbit-ring{
  opacity:.56 !important;
}
.rotunda-orbit-bubble{
  width:clamp(96px,6.15vw,122px) !important;
  height:clamp(96px,6.15vw,122px) !important;
}
.orbit-science{left:59.7% !important;top:37.2% !important;}
.orbit-research{left:84.2% !important;top:37.2% !important;}
.orbit-education{left:59.7% !important;top:70.4% !important;}
.orbit-career{left:84.2% !important;top:70.4% !important;}
.rotunda-circulation-ring i{
  animation:rotundaOrbitDotV95 13.8s linear infinite !important;
}
@keyframes rotundaOrbitDotV95{
  0%{transform:rotate(0deg) translateX(clamp(227px,16.8vw,328px)) rotate(0deg);opacity:.24;}
  7%,38%{opacity:.94;}
  50%{opacity:.48;}
  62%,93%{opacity:.98;}
  100%{transform:rotate(360deg) translateX(clamp(227px,16.8vw,328px)) rotate(-360deg);opacity:.24;}
}
@media(max-width:1180px){
  .rotunda-circulation-ring,
  .rotunda-true-orbit-ring{
    left:72.4% !important;
    top:54.2% !important;
    width:clamp(410px,34.4vw,585px) !important;
  }
  .rotunda-orbit-bubble{
    width:clamp(88px,5.8vw,108px) !important;
    height:clamp(88px,5.8vw,108px) !important;
  }
  .orbit-science{left:58.6% !important;top:37.0% !important;}
  .orbit-research{left:86.2% !important;top:37.0% !important;}
  .orbit-education{left:58.6% !important;top:71.4% !important;}
  .orbit-career{left:86.2% !important;top:71.4% !important;}
}

/* v1.96 reference-medial halo: match the supplied example composition */
.rotunda-circulation-ring,
.rotunda-true-orbit-ring{
  left:72.15% !important;
  top:56.2% !important;
  width:clamp(455px,32.8vw,642px) !important;
}
.rotunda-circulation-ring{
  opacity:.98 !important;
  filter:
    drop-shadow(0 0 22px rgba(34,211,238,.42))
    drop-shadow(0 0 42px rgba(124,58,237,.28)) !important;
}
.rotunda-circulation-ring::before{
  background:
    repeating-conic-gradient(from -8deg,
      rgba(255,255,255,.78) 0deg 2.1deg,
      transparent 2.1deg 11.5deg,
      rgba(34,211,238,.70) 11.5deg 14deg,
      transparent 14deg 28deg) !important;
  animation:rotundaMedialDashOrbit 32s linear infinite !important;
}
.rotunda-circulation-ring::after{
  opacity:.76 !important;
  background:
    repeating-conic-gradient(from 20deg,
      transparent 0deg 7deg,
      rgba(191,219,254,.78) 7deg 8.5deg,
      transparent 8.5deg 21deg,
      rgba(168,85,247,.42) 21deg 22.2deg,
      transparent 22.2deg 36deg) !important;
  animation:rotundaMedialFineOrbit 48s linear reverse infinite !important;
}
.rotunda-true-orbit-ring{
  opacity:.50 !important;
  border-color:rgba(219,234,254,.44) !important;
  box-shadow:
    0 0 24px rgba(34,211,238,.28),
    0 0 54px rgba(124,58,237,.20),
    inset 0 0 28px rgba(147,197,253,.12) !important;
}
.rotunda-orbit-bubble{
  width:clamp(108px,6.75vw,136px) !important;
  height:clamp(108px,6.75vw,136px) !important;
  background:
    radial-gradient(circle at 28% 18%,rgba(255,255,255,.92),rgba(236,254,255,.50) 28%,rgba(147,197,253,.36) 48%,rgba(124,58,237,.34) 68%,rgba(8,47,73,.68)),
    conic-gradient(from 220deg,
      rgba(34,211,238,.38),
      rgba(255,255,255,.32),
      rgba(168,85,247,.38),
      rgba(45,212,191,.34),
      rgba(59,130,246,.46),
      rgba(34,211,238,.38)) !important;
  box-shadow:
    0 0 28px rgba(34,211,238,.52),
    0 0 58px rgba(168,85,247,.32),
    0 18px 42px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.92),
    inset 0 0 28px rgba(255,255,255,.22) !important;
}
.rotunda-orbit-bubble b{
  width:clamp(48px,3.35vw,64px) !important;
  height:clamp(48px,3.35vw,64px) !important;
}
.rotunda-orbit-bubble em{
  font-size:clamp(9px,.70vw,12px) !important;
}
.orbit-science{left:59.0% !important;top:44.6% !important;}
.orbit-research{left:85.2% !important;top:44.6% !important;}
.orbit-education{left:59.0% !important;top:68.4% !important;}
.orbit-career{left:85.2% !important;top:68.4% !important;}
.rotunda-circulation-ring i{
  animation:rotundaOrbitDotV96 14.8s linear infinite !important;
}
@keyframes rotundaMedialDashOrbit{to{transform:rotate(360deg)}}
@keyframes rotundaMedialFineOrbit{to{transform:rotate(-360deg)}}
@keyframes rotundaOrbitDotV96{
  0%{transform:rotate(0deg) translateX(clamp(227px,16.4vw,321px)) rotate(0deg);opacity:.26;}
  8%,38%{opacity:.92;}
  50%{opacity:.46;}
  62%,93%{opacity:.96;}
  100%{transform:rotate(360deg) translateX(clamp(227px,16.4vw,321px)) rotate(-360deg);opacity:.26;}
}
@media(max-width:1180px){
  .rotunda-circulation-ring,
  .rotunda-true-orbit-ring{
    left:72.7% !important;
    top:56.5% !important;
    width:clamp(405px,33.8vw,575px) !important;
  }
  .rotunda-orbit-bubble{
    width:clamp(94px,6.1vw,114px) !important;
    height:clamp(94px,6.1vw,114px) !important;
  }
  .orbit-science{left:58.8% !important;top:44.0% !important;}
  .orbit-research{left:86.6% !important;top:44.0% !important;}
  .orbit-education{left:58.8% !important;top:69.5% !important;}
  .orbit-career{left:86.6% !important;top:69.5% !important;}
}

/* v1.97 unblocked reference halo: bubbles never cover the heart */
.layer-heart{
  z-index:14 !important;
}
.rotunda-circulation-ring,
.rotunda-true-orbit-ring{
  left:72.35% !important;
  top:57.0% !important;
  width:clamp(455px,32.2vw,630px) !important;
}
.rotunda-circulation-ring{z-index:7 !important;}
.rotunda-true-orbit-ring{z-index:6 !important;}
.rotunda-orbit-bubble{
  z-index:9 !important;
  width:clamp(100px,6.25vw,126px) !important;
  height:clamp(100px,6.25vw,126px) !important;
}
.orbit-science{left:56.8% !important;top:44.2% !important;}
.orbit-research{left:87.9% !important;top:44.2% !important;}
.orbit-education{left:56.8% !important;top:69.8% !important;}
.orbit-career{left:87.9% !important;top:69.8% !important;}
.rotunda-circulation-ring i{
  animation:rotundaOrbitDotV97 15.4s linear infinite !important;
}
@keyframes rotundaOrbitDotV97{
  0%{transform:rotate(0deg) translateX(clamp(227px,16.1vw,315px)) rotate(0deg);opacity:.24;}
  8%,38%{opacity:.92;}
  50%{opacity:.46;}
  62%,93%{opacity:.96;}
  100%{transform:rotate(360deg) translateX(clamp(227px,16.1vw,315px)) rotate(-360deg);opacity:.24;}
}
@media(max-width:1180px){
  .rotunda-circulation-ring,
  .rotunda-true-orbit-ring{
    left:72.8% !important;
    top:57.1% !important;
    width:clamp(400px,33.2vw,565px) !important;
  }
  .rotunda-orbit-bubble{
    width:clamp(88px,5.7vw,106px) !important;
    height:clamp(88px,5.7vw,106px) !important;
  }
  .orbit-science{left:55.6% !important;top:43.8% !important;}
  .orbit-research{left:90.0% !important;top:43.8% !important;}
  .orbit-education{left:55.6% !important;top:70.4% !important;}
  .orbit-career{left:90.0% !important;top:70.4% !important;}
}

/* v1.98 photo reference composition: copy the supplied balanced medial layout */
.layer-heart{
  z-index:14 !important;
}
.rotunda-circulation-ring,
.rotunda-true-orbit-ring{
  left:72.1% !important;
  top:56.0% !important;
  width:clamp(445px,31.6vw,620px) !important;
}
.rotunda-circulation-ring{
  z-index:7 !important;
  opacity:.94 !important;
}
.rotunda-true-orbit-ring{
  z-index:6 !important;
  opacity:.48 !important;
}
.rotunda-orbit-bubble{
  z-index:9 !important;
  width:clamp(98px,6.05vw,120px) !important;
  height:clamp(98px,6.05vw,120px) !important;
}
.orbit-science{left:60.2% !important;top:45.6% !important;}
.orbit-research{left:84.0% !important;top:45.6% !important;}
.orbit-education{left:60.2% !important;top:67.0% !important;}
.orbit-career{left:84.0% !important;top:67.0% !important;}
.rotunda-circulation-ring i{
  animation:rotundaOrbitDotV98 15.2s linear infinite !important;
}
@keyframes rotundaOrbitDotV98{
  0%{transform:rotate(0deg) translateX(clamp(222px,15.8vw,310px)) rotate(0deg);opacity:.24;}
  8%,38%{opacity:.92;}
  50%{opacity:.46;}
  62%,93%{opacity:.96;}
  100%{transform:rotate(360deg) translateX(clamp(222px,15.8vw,310px)) rotate(-360deg);opacity:.24;}
}
@media(max-width:1180px){
  .rotunda-circulation-ring,
  .rotunda-true-orbit-ring{
    left:72.5% !important;
    top:56.2% !important;
    width:clamp(395px,32.6vw,552px) !important;
  }
  .rotunda-orbit-bubble{
    width:clamp(88px,5.65vw,104px) !important;
    height:clamp(88px,5.65vw,104px) !important;
  }
  .orbit-science{left:59.2% !important;top:45.2% !important;}
  .orbit-research{left:85.8% !important;top:45.2% !important;}
  .orbit-education{left:59.2% !important;top:67.8% !important;}
  .orbit-career{left:85.8% !important;top:67.8% !important;}
}

/* v1.99 planet orbit: larger rings, outward bubbles, 70% opacity */
.rotunda-circulation-ring,
.rotunda-true-orbit-ring{
  left:72.1% !important;
  top:56.0% !important;
  width:clamp(500px,35.8vw,700px) !important;
}
.rotunda-circulation-ring{
  opacity:1 !important;
}
.rotunda-true-orbit-ring{
  opacity:.54 !important;
}
.rotunda-orbit-bubble{
  opacity:.70 !important;
  width:clamp(102px,6.25vw,126px) !important;
  height:clamp(102px,6.25vw,126px) !important;
}
.rotunda-orbit-bubble:hover{
  opacity:.88 !important;
}
.orbit-science{left:56.2% !important;top:41.5% !important;}
.orbit-research{left:88.0% !important;top:41.5% !important;}
.orbit-education{left:56.2% !important;top:70.7% !important;}
.orbit-career{left:88.0% !important;top:70.7% !important;}
.rotunda-circulation-ring i{
  animation:rotundaOrbitDotV99 16s linear infinite !important;
}
@keyframes rotundaOrbitDotV99{
  0%{transform:rotate(0deg) translateX(clamp(250px,17.9vw,350px)) rotate(0deg);opacity:.24;}
  8%,38%{opacity:.92;}
  50%{opacity:.46;}
  62%,93%{opacity:.96;}
  100%{transform:rotate(360deg) translateX(clamp(250px,17.9vw,350px)) rotate(-360deg);opacity:.24;}
}
@media(max-width:1180px){
  .rotunda-circulation-ring,
  .rotunda-true-orbit-ring{
    left:72.5% !important;
    top:56.2% !important;
    width:clamp(430px,36vw,610px) !important;
  }
  .rotunda-orbit-bubble{
    width:clamp(90px,5.9vw,110px) !important;
    height:clamp(90px,5.9vw,110px) !important;
    opacity:.70 !important;
  }
  .orbit-science{left:55.0% !important;top:41.0% !important;}
  .orbit-research{left:90.0% !important;top:41.0% !important;}
  .orbit-education{left:55.0% !important;top:71.4% !important;}
  .orbit-career{left:90.0% !important;top:71.4% !important;}
}

/* Static medical-symbol pass.
   The earlier orbit revisions targeted different centers: the hero stage, the
   transparent heart-layer canvas, and the visible heart/caduceus artwork. This
   final override removes the orbit system and freezes motion across pages so
   the recovered v1.95 composition reads as a stable HD heart treatment. */
*,
*::before,
*::after{
  animation:none !important;
  transition:none !important;
  scroll-behavior:auto !important;
}

.layer-orbit-motion,
.layer-orbit,
.rotunda-circulation-ring,
.rotunda-true-orbit-ring,
.rotunda-orbit-bubble,
.rotunda-hero-spark,
.rotunda-hero-wave,
.slide-orbit,
.kinetic-ring,
.ring-one,
.ring-two{
  display:none !important;
}

.rotunda-live-hero::after{
  display:none !important;
}

.layer-heart,
.rotunda-live-emblem,
.course-kinetic-logo,
.course-kinetic-logo img,
.course-room-logo{
  animation:none !important;
}

.layer-heart.ventricular-beat{
  animation:none !important;
}
