@import url("https://fonts.googleapis.com/css?family=Roboto:400,400i,700,700i,900,900i");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap");
@import url("https://use.fontawesome.com/releases/v5.15.4/css/all.css");

/* JICS platform baseline */

/*
   Erikson Institute JICS Theme — Custom Styles
   ============================================
   Targets the real, verified selectors found in Jenzabar's own default
   style.css (confirmed by inspecting that file directly, not guessed) and
   overrides them with Erikson's established brand colors and fonts.

   Default JICS colors being replaced:
     #265B8C  -> Erikson blue   #0086b6
     #DEDEDE  -> light grey, kept mostly as-is where it's a neutral background
   Accent additions:
     Erikson yellow  #ffc600  (buttons, active states)
     Erikson teal    #00818c  (secondary accents)
   Font:
     Open Sans (JICS default) -> Roboto, matching the Erikson site
*/

@import url("https://fonts.googleapis.com/css?family=Roboto:400,400i,700,700i,900,900i");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap");

/* ============================================================================
   FONT OVERRIDE - JICS ships with Open Sans hardcoded with !important in
   several places, so this needs !important too to win.
   ============================================================================ */
body, .top-nav-bar, .slide-menu-right, .main-nav-links,
.btn-primary, .btn-primary-no-bg, .btn-danger, .btn-success,
.btn-primary-jquery-ui-override {
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
}

/* ============================================================================
   LOGO / MASTHEAD
   ============================================================================ */
#masthead {
  height: 72px;
  padding-top: 12px;
}
#masthead h1 a {
  background-image: url(./images/logo.png);
  width: 260px;
  height: 50px;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1025px) {
  #masthead {
    height: auto !important;
  }
}

/* ============================================================================
   TOP NAVIGATION BAR (desktop)
   ============================================================================ */
.top-nav-bar {
  background-color: #0086b6;
}
.top-nav-bar .nav-container .link-scroll {
  background: transparent;
}
.top-nav-bar .more-links-div {
  background-color: #0086b6;
}

.main-nav-links,
.top-nav-bar .nav-container .link-scroll .h-menu a,
.top-nav-bar .more-links-div ul a {
  color: #ffffff;
  background-color: transparent;
  border: none;
  font-weight: 700;
}
.main-nav-links:hover,
.top-nav-bar .nav-container .link-scroll .h-menu a:hover,
.top-nav-bar .more-links-div ul a:hover {
  color: #ffffff;
  background-color: #007396;
}

.top-nav-bar .nav-container .user-btn,
.top-nav-bar .nav-container .search-btn {
  color: #ffffff;
}

.top-nav-bar .nav-container .main-nav-submenu-container .popover {
  background-color: #ffffff;
  border: 1px solid #cccccc;
}
.top-nav-bar .nav-container .main-nav-submenu-container .user-login.popover {
  color: #0086b6;
}
.top-nav-bar .nav-container .main-nav-submenu-container .user-login.popover .init-user-login-btn,
.top-nav-bar .nav-container .main-nav-submenu-container .user-login.popover .init-logout-btn {
  color: #ffffff;
  background: #ffc600;
  font-weight: 700;
}
.top-nav-bar .nav-container .main-nav-submenu-container .user-login .forgot-password-link {
  color: #0086b6;
}

/* ============================================================================
   TOP NAVIGATION BAR (mobile, <=1025px) - JICS's own default overrides these
   again at this breakpoint, so this needs to match that same breakpoint.
   ============================================================================ */
@media screen and (max-width: 1025px) {
  .top-nav-bar .nav-container .link-scroll.vertical-menu,
  .top-nav-bar .nav-container .link-scroll {
    background: #ffffff;
  }
  .top-nav-bar .nav-container .link-scroll .h-menu ul a {
    color: #0086b6;
  }
  .top-nav-bar .nav-container .user-btn,
  .top-nav-bar .nav-container .search-btn,
  .top-nav-bar .nav-container .login-btn {
    color: #ffffff;
  }
  .top-nav-bar .nav-container .login-btn {
    background-color: transparent;
  }
  .top-nav-bar .nav-container .main-nav-submenu-container {
    background: #f4f4f4;
  }
  .top-nav-bar .nav-container .main-nav-submenu-container .user-login.popover,
  .top-nav-bar .nav-container .main-nav-submenu-container .user-login ul .site-manager,
  .top-nav-bar .nav-container .main-nav-submenu-container .user-login ul .account-info {
    color: #0086b6;
  }
  .top-nav-bar .nav-container .main-nav-submenu-container .user-login.popover .init-user-login-btn,
  .top-nav-bar .nav-container .main-nav-submenu-container .user-login.popover .init-logout-btn {
    background-color: #ffc600;
    color: #ffffff;
  }
}

/* ============================================================================
   MOBILE SIDEBAR SLIDE MENU
   ============================================================================ */
.slide-menu-right {
  background-color: #f4f4f4;
}
.slide-menu-right .sidebar-link-title,
.slide-menu-right .sidebar-link-title a {
  color: #0086b6;
}
.sidebar-slide-menu-links,
.slide-menu-right .navbar li a,
.slide-menu-right .navbar li #pagePortlets .glyphicons,
.slide-menu-right .navbar li #pagePortlets .custom-icon,
.slide-menu-right .navbar li #myPages .glyphicons,
.slide-menu-right .navbar li #myPages .custom-icon,
.slide-menu-right .navbar li #myGroups .glyphicons,
.slide-menu-right .navbar li #myGroups .custom-icon {
  color: #0086b6;
  background-color: transparent;
  border: none;
}
.sidebar-slide-menu-links:hover,
.slide-menu-right .navbar li a:hover,
.slide-menu-right .navbar li #pagePortlets .glyphicons:hover,
.slide-menu-right .navbar li #pagePortlets .custom-icon:hover,
.slide-menu-right .navbar li #myPages .glyphicons:hover,
.slide-menu-right .navbar li #myPages .custom-icon:hover,
.slide-menu-right .navbar li #myGroups .glyphicons:hover,
.slide-menu-right .navbar li #myGroups .custom-icon:hover {
  color: #ffffff;
  background-color: #0086b6;
}
.slide-menu-right .navbar {
  background-color: #f4f4f4;
}
.slide-menu-right .navbar li #pagePortlets a,
.slide-menu-right .navbar li #myPages a,
.slide-menu-right .navbar li #myGroups a {
  color: #ffffff;
  background-color: #0086b6;
}
.slide-menu-right .navbar li #pagePortlets a:hover,
.slide-menu-right .navbar li #myPages a:hover,
.slide-menu-right .navbar li #myGroups a:hover {
  color: #0086b6;
  background-color: #ffffff;
}
@media screen and (max-width: 1025px) {
  .slide-menu-right .navbar .slide-menu-toggle-btns li a {
    color: #ffffff;
    background: #0086b6;
  }
  .slide-menu-right .navbar .slide-menu-toggle-btns .active a {
    color: #0086b6;
    background: transparent;
  }
  .slide-menu-right .navbar .slide-menu-toggle-btns .active a:hover {
    color: #ffffff;
    background-color: #0086b6;
  }
}

/* ============================================================================
   BUTTONS
   ============================================================================ */
.btn-primary,
.btn-primary-jquery-ui-override {
  color: #000000 !important;
  background-color: #ffc600 !important;
  border: none !important;
  font-weight: 700;
  text-shadow: none !important;
}
.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus,
.btn-primary-jquery-ui-override:hover {
  background-color: #e6b200 !important;
}
.btn-primary-no-bg {
  color: #0086b6;
  background-color: transparent;
  border: none;
}
.btn-primary-no-bg:hover,
.btn-primary-no-bg:focus {
  color: #007396;
}

/* ============================================================================
   BREADCRUMBS
   ============================================================================ */
.main-crumbs {
  color: #0086b6;
}

/* ============================================================================
   FOOTER - JICS's own default only styles a top border here; the footer's
   actual content on this platform comes from portlets placed in the footer
   region, not a fixed template like the header. This sets the visual
   baseline (matching the Erikson site's blue footer) for whatever content
   gets placed there.
   ============================================================================ */
.footer-wrapper {
  border-top: 3px solid #0086b6;
  background-color: #0086b6;
  color: #ffffff;
  padding: 24px 0;
}
.footer-wrapper a {
  color: #ffffff;
  text-decoration: underline;
}

/* ============================================================================
   INJECTED ERIKSON HEADER STYLING - the JS in javascript.js hides JICS's
   native #masthead/.top-nav-bar and injects our own header markup instead
   (since JICS's Tabs tool can't produce our mega-menu structure). That
   injected markup uses .ei-header/.ei-topbar/.ei-mainbar/.ei-menu classes,
   which have nothing to do with JICS's own header classes above - this
   section styles those directly, copied from the main Erikson site's own
   general template unchanged.
   ============================================================================ */
.skip-link {
  position: absolute;
  left: -9999px;
  top: auto;
}
.skip-link:focus {
  position: static;
  display: inline-block;
  padding: 8px 16px;
  background: #ffffff;
  color: #000000;
}

/* --- Search overlay --- */
.ei-search-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.85);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}
.ei-search-overlay.is-open { display: flex; }
.ei-search-box {
  background: #ffffff;
  padding: 40px;
  border-radius: 8px;
  width: 90%;
  max-width: 500px;
}
.ei-search-close {
  background: transparent;
  border: 0;
  font-size: 14px;
  cursor: pointer;
  float: right;
}
.ei-search-form {
  display: flex;
  gap: 8px;
  margin-top: 24px;
}
.ei-search-form input {
  flex: 1;
}

/* --- Top utility bar (black) --- */
.ei-topbar {
  background: #000000;
  color: #ffffff;
  padding: 10px 0;
}
.ei-search-open {
  background: transparent;
  border: 0;
  color: #ffffff;
  font-weight: 700;
  cursor: pointer;
}
.ei-top-links {
  display: none;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 24px;
  align-items: center;
  float: right;
}
.ei-top-links a {
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
}
.ei-mobile-top-utility-v8,
.ei-mobile-top-utility-v9 {
  display: flex;
  gap: 16px;
}
@media (min-width: 981px) {
  .ei-top-links { display: flex; }
  .ei-mobile-top-utility-v8,
  .ei-mobile-top-utility-v9 { display: none; }
}

/* --- Main blue navigation bar --- */
.ei-mainbar {
  background: var(--ei-blue);
  color: #ffffff;
  height: 112px;
}
.ei-mainbar .ei-container {
  height: 112px;
  display: flex;
  align-items: center;
}
.ei-logo {
  display: block;
  color: #ffffff !important;
  font-size: 32px;
  line-height: 1;
  font-weight: 900;
  margin-right: 74px;
}
.ei-logo:hover, .ei-logo:focus { text-decoration: none; }
.ei-mobile-toggle {
  display: none;
  background: transparent;
  border: 2px solid #ffffff;
  color: #ffffff;
  padding: 8px 16px;
  font-weight: 700;
  cursor: pointer;
}
.ei-nav {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}
.ei-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: stretch;
  height: 100%;
}
.ei-menu-item {
  position: relative;
  display: flex;
  align-items: center;
}
.ei-menu-link {
  color: #ffffff !important;
  height: 112px;
  min-width: 150px;
  padding: 0 22px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1.1;
  font-weight: 900;
  text-align: center;
  white-space: nowrap;
}
.ei-menu-link:hover,
.ei-menu-link:focus {
  background: rgba(0,0,0,.08);
  text-decoration: none;
}
.ei-mega {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #ffffff;
  color: #111111;
  box-shadow: 0 8px 20px rgba(0,0,0,.2);
  padding: 24px;
  gap: 32px;
  z-index: 100;
  min-width: 600px;
}
.ei-menu-item:hover .ei-mega { display: flex; }
.ei-mega-col h3 { font-size: 15px; margin-bottom: 8px; }
.ei-mega-col ul { list-style: none; padding: 0; margin: 0; }
.ei-mega-col ul li { margin-bottom: 6px; }
.ei-mega-col ul li a { color: #333333; font-size: 14px; }
.ei-apply {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--ei-yellow);
  color: #000000 !important;
  font-weight: 700;
  padding: 12px 20px;
  border-radius: 2px;
  white-space: nowrap;
}
.ei-mobile-panel { display: none; }
@media (max-width: 980px) {
  .ei-mobile-toggle { display: inline-block; }
  .ei-nav { display: none; }
  .ei-mainbar { height: auto; padding: 16px 0; }
  .ei-mainbar .ei-container { height: auto; }
  .ei-mobile-panel.is-open {
    display: block;
    background: var(--ei-blue-dark);
  }
  .ei-mobile-panel ul {
    list-style: none;
    margin: 0;
    padding: 16px 0;
  }
  .ei-mobile-panel a {
    display: block;
    color: #ffffff;
    padding: 12px 0;
    font-weight: 700;
  }
}


/* ============================================================================
   GENERAL LINKS + HEADINGS - applied broadly so page/portlet content (not
   just the fixed header/nav chrome above) picks up the same brand colors.
   ============================================================================ */
a {
  color: #0086b6;
}
a:hover {
  color: #007396;
}
h1, h2, h3, h4, h5, h6 {
  font-family: "Roboto", Arial, Helvetica, sans-serif;
  color: #111111;
}
h5 {
  border-bottom: solid 1px #0086b6;
}

/* ============================================================================
   INJECTED ERIKSON FOOTER STYLING - the footer-injection JS hides JICS's
   own .footer-wrapper (which by default is just a bare top border - actual
   footer content here normally comes from portlets, not a fixed template)
   and injects our own footer markup instead. Copied unchanged from the
   main Erikson site's own general template.
   ============================================================================ */
/* --- Footer --- */
.ei-footer {
  background: var(--ei-blue);
  color: #ffffff;
  padding: 60px 0 0 0;
}
.ei-footer-grid {
  max-width: var(--ei-max);
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  gap: 60px;
}
.ei-footer-logo img { width: 275px; height: auto; }
.ei-address {
  color: #ffffff;
  font-size: 15px;
  margin: 20px 0;
}
.ei-address a { color: #ffffff; font-weight: 700; text-decoration: underline; }
.ei-footer-buttons {
  list-style: none;
  margin: 0 0 24px 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.ei-footer-buttons a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--ei-yellow);
  color: #000000;
  font-weight: 700;
  font-size: 14px;
  padding: 12px 18px;
  border-radius: 2px;
  white-space: nowrap;
}
.ei-newsletter-copy { color: #ffffff; font-size: 20px; font-weight: 700; margin: 20px 0; }
.ei-newsletter-form {
  display: flex;
  margin-bottom: 24px;
}
.ei-newsletter-form input {
  flex: 1;
  border-radius: 2px 0 0 2px;
  border: 0;
}
.ei-newsletter-form button {
  background: var(--ei-yellow);
  color: #000000;
  font-weight: 700;
  border: 0;
  border-radius: 0 2px 2px 0;
  padding: 0 24px;
  cursor: pointer;
}
.ei-accreditation-row {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 20px;
}
.ei-candid, .ei-candid-image, .ei-candid-new {
  width: 104px;
  height: 115px;
  flex: 0 0 104px;
  display: flex;
  align-items: stretch;
  justify-content: stretch;
  background: #ffffff;
  border: 4px solid #9cc4d9;
  overflow: hidden;
  text-decoration: none;
}
.ei-candid-image img {
  width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
  display: block;
}
.ei-hlc-seal {
  width: 104px;
  height: 115px;
  flex: 0 0 104px;
  display: block;
  overflow: hidden;
}
.ei-hlc-iframe-wrap {
  width: 104px;
  height: 115px;
  overflow: hidden;
}
.ei-hlc-iframe-wrap iframe {
  width: 104px;
  height: 115px;
  border: 0;
}
.ei-nonprofit { color: #ffffff; font-size: 13px; opacity: .9; }

.ei-footer-menu-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
.ei-footer-col h3 { font-size: 15px; margin-bottom: 12px; }
.ei-footer-heading-link { color: #ffffff; font-weight: 700; }
.ei-footer-col ul { list-style: none; margin: 0; padding: 0; }
.ei-footer-col ul li { margin-bottom: 8px; }
.ei-footer-col ul li a { color: #ffffff; font-size: 14px; opacity: .9; }
.ei-social ul {
  list-style: none;
  display: flex;
  gap: 16px;
  padding: 0;
  margin: 0;
}
.ei-social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255,255,255,.15);
  color: #ffffff;
}
.ei-mobile-footer-extra,
.ei-mobile-footer-legal-final { display: none; }

.ei-footer-bottom { border-top: 1px solid rgba(255,255,255,.25); margin-top: 40px; grid-column: 1 / -1; }
.ei-footer-bottom-inner {
  max-width: var(--ei-max);
  margin: 0 auto;
  padding: 24px 24px 42px 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  align-items: center;
  justify-content: space-between;
}
.ei-footer-bottom-inner ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 4px 12px;
  margin: 0;
  padding: 0;
}
.ei-footer-bottom-inner a { color: #ffffff; font-size: 13px; text-decoration: underline; }
.ei-footer-bottom-inner span { color: #ffffff; font-size: 13px; }

/* Widened from 980px to 1200px: at iPad Air landscape (1180px), the
   two-column .ei-footer-grid / .ei-footer-menu-grid layout was still
   active, and the right column's nav-link grid was forcing the whole
   footer wider than the 1180px viewport -- pushing the newsletter
   "Sign Me Up!" button (in the left column) off the right edge instead
   of it wrapping/shrinking. Stacking to one column (the same treatment
   already proven correct at narrower widths) removes that overflow
   instead of trying to chase down the exact intrinsic-width culprit. */
@media (max-width: 1200px) {
  .ei-footer-grid { grid-template-columns: 1fr; gap: 32px; }
  .ei-footer-menu-grid { display: none; }
  .ei-mobile-footer-extra { display: block; }
  .ei-mobile-footer-legal-final { display: block; padding: 0 20px 32px 20px; }
  .ei-footer-bottom { display: none; }
  .ei-mobile-social {
    display: flex;
    gap: 16px;
    margin-bottom: 20px;
  }
  .ei-mobile-legal ul {
    list-style: none;
    padding: 0;
    margin: 0 0 12px 0;
  }
  .ei-mobile-legal a { color: #ffffff; font-size: 13px; text-decoration: underline; }
  .ei-mobile-legal p { color: #ffffff; font-size: 13px; }
}


/* Slate 2026 visual source, preserved in original cascade order */


/* =========================================================
   Anti-flicker reveal: hide #main-content on heavily-restyled pages until the
   first styling pass paints, then fade it in.  ei-ready (added by JS once
   styled) reveals immediately; the keyframe animation is a pure-CSS safety net
   that reveals after 1.5s even if JS never runs.  Header/nav are never hidden.
   ========================================================= */
html.ei-prerender #main-content {
  opacity: 0;
  animation: eiReveal 0.2s ease-out 2s forwards;
}
/* The review page restyles in several passes (apply-form -> review switch, table
   fixer, fonts) that settle later than other pages.  Push its pure-CSS fallback
   out so the JS reveal (which waits for those passes to stop changing styles)
   stays in control; the fallback still reveals if JS never runs. */
html.ei-prerender-review #main-content {
  animation-delay: 3.5s;
}
html.ei-prerender.ei-ready #main-content {
  opacity: 1 !important;
  animation: none !important;
  transition: opacity 0.2s ease-out;
}
@keyframes eiReveal { to { opacity: 1; } }



/* =========================================================
   This intentionally avoids the WordPress theme CSS because the
   theme/plugin CSS does not cascade reliably inside Slate.
   ========================================================= */
:root {
  --ei-black: #000000;
  --ei-blue: #0086b6;
  --ei-blue-2: #007eaa;
  --ei-blue-dark: #007396;
  --ei-yellow: #ffc600;
  --ei-white: #ffffff;
  --ei-max: 1440px;
}
* { box-sizing: border-box; }
html, body {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  color: #111 !important;
  background: #fff !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
}
body, table, td, th, input, select, textarea, button {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
}
a { text-decoration: none; }
a:hover, a:focus { text-decoration: underline; }
.ei-container {
  max-width: var(--ei-max);
  margin: 0 auto;
  padding-left: 115px;
  padding-right: 115px;
}
.skip-link {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.skip-link:focus {
  left: 16px;
  top: 16px;
  width: auto;
  height: auto;
  z-index: 99999;
  padding: 10px 14px;
  background: #fff;
  color: #000;
  border: 2px solid #000;
}

/* Search overlay */
.ei-search-overlay {
  display: none;
  position: fixed;
  z-index: 99999;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0,0,0,.94);
  color: #fff;
  padding: 60px 20px;
}
.ei-search-overlay.is-active { display: block; }
.ei-search-box {
  max-width: 760px;
  margin: 0 auto;
}
.ei-search-close {
  float: right;
  background: transparent;
  color: #fff;
  border: 2px solid #fff;
  padding: 10px 18px;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
}
.ei-search-box h2 {
  clear: both;
  padding-top: 90px;
  margin: 0 0 22px;
  color: #fff;
  font-size: 48px;
  font-weight: 900;
}
.ei-search-form {
  display: flex;
  width: 100%;
}
.ei-search-form input {
  flex: 1;
  border: 0;
  padding: 18px 20px;
  font-size: 22px;
}
.ei-search-form button {
  border: 0;
  background: var(--ei-yellow);
  color: #000;
  padding: 18px 30px;
  font-size: 15px;
  font-weight: 900;
  text-transform: uppercase;
  cursor: pointer;
}

/* Black top utility bar */
.ei-topbar {
  background: #000;
  color: #fff;
  height: 53px;
  display: flex;
  align-items: center;
}
.ei-topbar .ei-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.ei-search-open {
  appearance: none;
  border: 0;
  background: transparent;
  color: #fff;
  padding: 0;
  font-size: 15px;
  line-height: 1;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .28em;
  cursor: pointer;
}
.ei-search-open i {
  letter-spacing: 0;
  margin-right: 12px;
  font-size: 15px;
}
.ei-top-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 25px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ei-top-links a {
  color: #fff;
  font-size: 14px;
  font-weight: 900;
  white-space: nowrap;
}
.ei-top-links a i {
  color: #0096c7;
  margin-right: 6px;
}

/* Blue main navigation bar */
.ei-mainbar {
  background: var(--ei-blue);
  color: #fff;
  height: 112px;
}
.ei-mainbar .ei-container {
  height: 112px;
  display: flex;
  align-items: center;
}
.ei-logo {
  display: block;
  color: #fff !important;
  font-size: 32px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -.03em;
  white-space: nowrap;
  margin-right: 74px;
}
.ei-logo:hover, .ei-logo:focus { text-decoration: none; }
.ei-nav {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}
.ei-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: stretch;
  height: 100%;
  gap: 0;
}
.ei-menu-item {
  position: relative;
  display: flex;
  align-items: center;
}
.ei-menu-link {
  color: #fff !important;
  height: 112px;
  min-width: 150px;
  padding: 0 22px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1.1;
  font-weight: 900;
  text-align: center;
  white-space: nowrap;
}
.ei-menu-link:hover,
.ei-menu-link:focus {
  background: rgba(0,0,0,.08);
  text-decoration: none;
}
.ei-menu-link:after {
  content: '';
  display: block;
  margin-top: 10px;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 6px solid #000;
}
.ei-apply {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  min-width: 144px;
  margin-left: 24px;
  padding: 0 20px;
  background: var(--ei-yellow);
  color: #000 !important;
  border-radius: 3px;
  box-shadow: 0 2px 0 rgba(0,0,0,.22);
  font-size: 14px;
  font-weight: 900;
  text-transform: uppercase;
  white-space: nowrap;
}
.ei-apply i { margin-right: 8px; font-size: 13px; }
.ei-apply:hover, .ei-apply:focus { background: #ffd428; text-decoration: none; }

/* Dropdown / mega panels */
.ei-mega {
  display: none;
  position: absolute;
  left: 0;
  top: 112px;
  min-width: 620px;
  background: #fff;
  color: #111;
  z-index: 999;
  padding: 28px 34px;
  box-shadow: 0 16px 32px rgba(0,0,0,.22);
  border-bottom: 6px solid var(--ei-yellow);
  grid-template-columns: repeat(2, minmax(230px, 1fr));
  gap: 30px;
}
.ei-menu-item:hover .ei-mega,
.ei-menu-item:focus-within .ei-mega { display: grid; }
.ei-mega h3 {
  margin: 0 0 10px;
  color: var(--ei-blue-dark);
  font-size: 16px;
  line-height: 1.2;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.ei-mega ul { list-style: none; margin: 0; padding: 0; }
.ei-mega li { margin: 0 0 8px; }
.ei-mega a {
  color: #111;
  font-size: 15px;
  font-weight: 700;
}
.ei-mega a:after,
.ei-footer a:after { content: ' ›'; color: var(--ei-yellow); font-weight: 900; }
.ei-mega a:hover { color: var(--ei-blue-dark); }

/* Mobile nav */
.ei-mobile-toggle { display: none; }
.ei-mobile-panel { display: none; }

/* Slate content */
.ei-site-content {
  background: #fff;
  min-height: 0;
  width: 100%;
  box-shadow: 0 14px 44px rgba(0,0,0,.14);
  position: relative;
  z-index: 2;
}
.ei-content-inner {
  max-width: var(--ei-max);
  margin: 0 auto;
  padding: 0;
}
.ei-slate-content {
  min-height: 32px;
  padding: 8px 0;
  font-size: 22px;
  line-height: 1;
  background: #fff;
}
/* On real application pages, keep Slate content usable and centered. */
.ei-slate-content > div,
.ei-slate-content > form,
.ei-slate-content > table,
.ei-slate-content > h1,
.ei-slate-content > h2,
.ei-slate-content > p {
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
}
.ei-slate-content h1 {
  font-size: 36px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  color: #000 !important;
}
.ei-slate-content table {
  font-size: 16px;
}
.ei-slate-content input[type="submit"],
.ei-slate-content button,
.ei-slate-content .button {
  border-radius: 0 !important;
  font-weight: 900 !important;
}

/* Footer */
.ei-footer {
  background: var(--ei-blue);
  color: #fff;
  position: relative;
  z-index: 1;
}
.ei-footer a { color: #fff; font-weight: 900; }
.ei-footer a:hover { text-decoration: underline; }
.ei-footer-grid {
  max-width: var(--ei-max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.ei-footer-left {
  background: var(--ei-blue);
  padding: 68px 66px 80px 115px;
}
.ei-footer-right {
  background: var(--ei-blue-2);
  padding: 42px 110px 70px 56px;
}
.ei-footer-logo {
  color: #fff;
  font-size: 25px;
  line-height: 1;
  font-weight: 900;
  margin-bottom: 22px;
}
.ei-address {
  font-size: 15px;
  line-height: 1.4;
  font-weight: 900;
  margin: 0 0 26px;
}
.ei-footer-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 36px;
  padding: 0 0 37px;
  list-style: none;
  border-bottom: 1px solid rgba(255,255,255,.28);
}
.ei-footer-buttons a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 31px;
  padding: 0 14px;
  background: var(--ei-yellow);
  color: #000 !important;
  border-radius: 3px;
  font-size: 12px;
  font-weight: 900;
}
.ei-footer-buttons a:after { content: ''; }
.ei-footer-buttons i { margin-right: 7px; }
.ei-newsletter-copy {
  max-width: 620px;
  margin: 0 0 27px;
  font-size: 24px;
  line-height: 1.35;
  font-weight: 900;
}
.ei-newsletter-form {
  display: flex;
  max-width: 640px;
  margin-bottom: 33px;
}
.ei-newsletter-form input {
  flex: 1;
  min-width: 0;
  border: 0;
  border-radius: 3px 0 0 3px;
  box-shadow: inset 0 1px 6px rgba(0,0,0,.25);
  padding: 17px 18px;
  font-size: 16px;
}
.ei-newsletter-form button {
  border: 0;
  background: var(--ei-yellow);
  color: #000;
  min-width: 164px;
  border-radius: 0 3px 3px 0;
  font-size: 14px;
  font-weight: 900;
  text-transform: uppercase;
  cursor: pointer;
}
.ei-candid {
  width: 96px;
  height: 98px;
  background: #fff;
  color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  margin-bottom: 22px;
  border: 4px solid rgba(255,255,255,.45);
  box-shadow: inset 0 0 0 2px #bfc9d1;
  font-size: 11px;
  line-height: 1.1;
}
.ei-nonprofit {
  margin: 0;
  font-size: 15px;
  font-weight: 900;
}
.ei-footer-menu-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 56px;
  gap: 46px;
}
.ei-footer-col { margin-bottom: 46px; }
.ei-footer-col h3 {
  margin: 0 0 16px;
  color: #fff;
  font-size: 17px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ei-footer-col h3:before {
  content: '||';
  color: var(--ei-yellow);
  letter-spacing: -2px;
  margin-right: 8px;
}
.ei-footer-col h3:after { content: ' ›'; }
.ei-footer-col ul,
.ei-social ul,
.ei-footer-bottom ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ei-footer-col li { margin: 0 0 12px; }
.ei-footer-col a {
  font-size: 15px;
  line-height: 1.25;
}
.ei-social li { margin: 0 0 27px; }
.ei-social a {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 19px;
}
.ei-social a:after { content: ''; }
.ei-footer-bottom {
  background: #000;
  color: #fff;
}
.ei-footer-bottom-inner {
  max-width: var(--ei-max);
  margin: 0 auto;
  padding: 18px 115px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  font-size: 13px;
  font-weight: 700;
}
.ei-footer-bottom ul {
  display: flex;
  flex-wrap: wrap;
  gap: 17px;
}
.ei-footer-bottom a { color: #fff; font-weight: 700; }
.ei-footer-bottom a:after { content: ''; }

@media (max-width: 1240px) {
  .ei-container { padding-left: 50px; padding-right: 50px; }
  .ei-logo { margin-right: 36px; }
  .ei-menu-link { min-width: 128px; padding-left: 14px; padding-right: 14px; font-size: 16px; }
  .ei-footer-left { padding-left: 50px; padding-right: 38px; }
  .ei-footer-right { padding-right: 50px; }
  .ei-footer-bottom-inner { padding-left: 50px; padding-right: 50px; }
}
@media (max-width: 1180px) {
  .ei-topbar { height: auto; min-height: 48px; }
  .ei-topbar .ei-container { padding-top: 10px; padding-bottom: 10px; flex-wrap: wrap; gap: 12px; }
  .ei-top-links { gap: 14px; flex-wrap: wrap; }
  .ei-mainbar, .ei-mainbar .ei-container { height: 86px; }
  .ei-logo { font-size: 28px; margin-right: auto; }
  .ei-nav { display: none; }
  .ei-mobile-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    padding: 10px 13px;
    background: transparent;
    color: #fff;
    border: 2px solid #fff;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    cursor: pointer;
  }
  .ei-mobile-panel.is-active { display: block; }
  .ei-mobile-panel {
    background: #fff;
    color: #000;
    border-bottom: 4px solid var(--ei-yellow);
  }
  .ei-mobile-panel ul { list-style: none; margin: 0; padding: 0; }
  .ei-mobile-panel a { display: block; padding: 13px 0; color: #000; font-weight: 900; }
  .ei-mobile-panel li { border-bottom: 1px solid #ddd; }
  .ei-mobile-panel ul ul { padding-left: 18px; background: #f6f6f6; }
  .ei-mobile-panel ul ul a { font-weight: 700; font-size: 14px; }
}
/* Matches the 1200px stacking breakpoint above -- see that rule's comment
   for why 980px left a gap at iPad Air landscape (1180px). */
@media (max-width: 1200px) {
  .ei-footer-grid { grid-template-columns: 1fr; }
  .ei-footer-left, .ei-footer-right { padding-left: 50px; padding-right: 50px; }
  .ei-footer-menu-grid { grid-template-columns: 1fr 1fr; }
  .ei-social ul { display: flex; gap: 16px; }
  .ei-social li { margin: 0; }
}
@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-container { padding-left: 18px; padding-right: 18px; }
  .ei-top-links { display: none; }
  .ei-logo { font-size: 24px; }
  .ei-slate-content { padding: 18px; font-size: 18px; }
  .ei-footer-left, .ei-footer-right { padding: 36px 18px; }
  .ei-footer-menu-grid { grid-template-columns: 1fr; gap: 0; }
  .ei-newsletter-form { display: block; }
  .ei-newsletter-form input, .ei-newsletter-form button { width: 100%; border-radius: 3px; }
  .ei-newsletter-form button { min-height: 48px; margin-top: 8px; }
  .ei-footer-bottom-inner { padding: 18px; display: block; }
  .ei-footer-bottom ul { margin-top: 12px; display: block; }
  .ei-footer-bottom li { margin-bottom: 8px; }
}


/* =========================================================
   ROUND 2 FIXES — closer match to erikson.edu/testing-page
   - wider site container and mega menus
   - larger full-width dropdown panels
   - yellow hover states
   - button lift/arrow animation
   - refined wordmark sizing/placement
   ========================================================= */
:root {
  --ei-max: 1728px;
  --ei-page-gutter: clamp(18px, 5.5vw, 130px); /* fluid: smooth resize, no jumps */
  --ei-blue: #0087b8;
  --ei-blue-2: #007fae;
  --ei-blue-dark: #007aa4;
  --ei-yellow: #ffc600;
}
.ei-container {
  max-width: none !important;
  width: 100% !important;
  padding-left: var(--ei-page-gutter) !important;
  padding-right: var(--ei-page-gutter) !important;
}
.ei-topbar { height: 52px !important; }
.ei-top-links { gap: 27px !important; }
.ei-top-links a:hover,
.ei-top-links a:focus,
.ei-search-open:hover,
.ei-search-open:focus {
  color: var(--ei-yellow) !important;
  text-decoration: none !important;
}
.ei-mainbar,
.ei-mainbar .ei-container { height: 112px !important; }
.ei-logo {
  font-size: 32px !important;
  font-weight: 900 !important;
  color: #fff !important;
  letter-spacing: -1.25px !important;
  margin-right: 92px !important;
  line-height: 1 !important;
}
.ei-logo:hover,
.ei-logo:focus { color: #fff !important; text-decoration: none !important; }
.ei-menu { flex: 1 1 auto !important; justify-content: space-between !important; }
.ei-menu-link {
  min-width: 172px !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  font-size: 18px !important;
  transition: background-color .18s ease, color .18s ease !important;
}
.ei-menu-link:hover,
.ei-menu-link:focus {
  color: var(--ei-yellow) !important;
  background: rgba(0,0,0,.10) !important;
}
.ei-menu-link:hover:after,
.ei-menu-link:focus:after { border-top-color: var(--ei-yellow) !important; }
.ei-apply,
.ei-footer-buttons a,
.ei-newsletter-form button,
.ei-search-form button {
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease !important;
}
.ei-apply:hover,
.ei-apply:focus,
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus,
.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus,
.ei-search-form button:hover,
.ei-search-form button:focus {
  transform: translateY(-2px) !important;
  background: #ffd52e !important;
  box-shadow: 0 5px 0 rgba(0,0,0,.22) !important;
  text-decoration: none !important;
}
.ei-apply:after,
.ei-footer-buttons a:after,
.ei-newsletter-form button:after,
.ei-search-form button:after {
  content: ' ›' !important;
  display: inline-block !important;
  margin-left: 5px !important;
  color: #000 !important;
  transition: transform .18s ease !important;
}
.ei-apply:hover:after,
.ei-apply:focus:after,
.ei-footer-buttons a:hover:after,
.ei-footer-buttons a:focus:after,
.ei-newsletter-form button:hover:after,
.ei-newsletter-form button:focus:after,
.ei-search-form button:hover:after,
.ei-search-form button:focus:after {
  transform: translateX(4px) !important;
}
.ei-apply {
  height: 48px !important;
  min-width: 142px !important;
  margin-left: 34px !important;
  border-radius: 4px !important;
}
.ei-apply > i + * { margin-left: 0; }
.ei-apply { box-shadow: 0 3px 0 rgba(0,0,0,.22) !important; }
.ei-mega {
  top: 112px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: calc(100vw - (var(--ei-page-gutter) * 2)) !important;
  max-width: 1454px !important;
  min-width: 0 !important;
  min-height: 392px !important;
  padding: 42px 46px 48px !important;
  grid-template-columns: repeat(4, minmax(180px, 1fr)) !important;
  gap: 46px !important;
  border-top: 4px solid var(--ei-yellow) !important;
  border-bottom: 0 !important;
  box-shadow: 0 22px 34px rgba(0,0,0,.18) !important;
}
.ei-mega h3 {
  color: #000 !important;
  font-size: 20px !important;
  letter-spacing: .045em !important;
  margin-bottom: 25px !important;
  text-transform: none !important;
}
.ei-mega h3:before {
  content: '||' !important;
  color: var(--ei-yellow) !important;
  letter-spacing: -3px !important;
  margin-right: 8px !important;
}
.ei-mega h3:after {
  content: ' ›' !important;
  color: #000 !important;
}
.ei-mega li { margin-bottom: 20px !important; }
.ei-mega a {
  font-size: 15px !important;
  line-height: 1.25 !important;
  color: #000 !important;
  font-weight: 900 !important;
}
.ei-mega a:after {
  content: ' ›' !important;
  color: var(--ei-yellow) !important;
  font-weight: 900 !important;
}
.ei-mega a:hover,
.ei-mega a:focus,
.ei-footer a:hover,
.ei-footer a:focus {
  color: var(--ei-yellow) !important;
  text-decoration: none !important;
}
.ei-footer-grid { max-width: none !important; width: 100% !important; }
.ei-footer-left { padding-left: var(--ei-page-gutter) !important; }
.ei-footer-right { padding-right: var(--ei-page-gutter) !important; }
.ei-footer-logo {
  font-size: 26px !important;
  font-weight: 900 !important;
  color: #fff !important;
  letter-spacing: -.7px !important;
}
.ei-footer-buttons a { color: #000 !important; }
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus { color: #000 !important; }
.ei-newsletter-form button { box-shadow: none !important; }
.ei-slate-content { font-size: 20px !important; }

@media (max-width: 1500px) {
  .ei-logo { margin-right: 58px !important; }
  .ei-menu-link { min-width: 145px !important; font-size: 16px !important; }
}
@media (max-width: 1240px) {
  .ei-logo { margin-right: 32px !important; }
  .ei-menu-link { min-width: 126px !important; font-size: 15px !important; }
  .ei-mega { width: calc(100vw - 100px) !important; }
}
@media (max-width: 980px) {
  .ei-logo { font-size: 28px !important; margin-right: auto !important; }
  .ei-mainbar, .ei-mainbar .ei-container { height: 86px !important; }
  .ei-mega { transform: none !important; }
}
@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  :root { --ei-page-gutter: 18px; }
}



/* =========================================================
   Round 3 refinements requested:
   - use Erikson SVG logos in header/footer
   - true yellow-to-black button animation
   - footer links keep white text and animate a yellow underline
   - top/footer address-style links use underline hover
   ========================================================= */
.ei-logo {
  display: flex !important;
  align-items: center !important;
  width: 252px !important;
  min-width: 252px !important;
  height: 112px !important;
  margin-right: 62px !important;
  color: #fff !important;
}
.ei-logo img {
  display: block !important;
  width: 252px !important;
  max-width: 252px !important;
  height: auto !important;
  filter: brightness(0) invert(1) !important;
}
.ei-logo:hover,
.ei-logo:focus {
  text-decoration: none !important;
}

.ei-footer-logo {
  margin-bottom: 25px !important;
}
.ei-footer-logo a {
  display: inline-flex !important;
  width: 260px !important;
  max-width: 100% !important;
  text-decoration: none !important;
  background-image: none !important;
}
.ei-footer-logo a:after,
.ei-footer-logo a:before {
  display: none !important;
  content: '' !important;
}
.ei-footer-logo img {
  display: block !important;
  width: 260px !important;
  max-width: 100% !important;
  height: auto !important;
  filter: brightness(0) invert(1) !important;
}

/* Yellow buttons animate to black like Erikson. */
.ei-apply,
.ei-footer-buttons a,
.ei-newsletter-form button,
.ei-search-form button {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background: var(--ei-yellow) !important;
  color: #000 !important;
  border: 0 !important;
  text-decoration: none !important;
  transition: color .25s ease, transform .18s ease, box-shadow .18s ease !important;
}
.ei-apply:before,
.ei-footer-buttons a:before,
.ei-newsletter-form button:before,
.ei-search-form button:before {
  content: '' !important;
  position: absolute !important;
  z-index: -1 !important;
  inset: 0 !important;
  background: #000 !important;
  transform: translateX(-101%) !important;
  transition: transform .25s ease !important;
  display: block !important;
}
.ei-apply:hover:before,
.ei-apply:focus:before,
.ei-footer-buttons a:hover:before,
.ei-footer-buttons a:focus:before,
.ei-newsletter-form button:hover:before,
.ei-newsletter-form button:focus:before,
.ei-search-form button:hover:before,
.ei-search-form button:focus:before {
  transform: translateX(0) !important;
}
.ei-apply i,
.ei-footer-buttons i {
  position: relative !important;
  z-index: 1 !important;
  transition: transform .25s ease, color .25s ease !important;
}
.ei-apply:hover i,
.ei-apply:focus i,
.ei-footer-buttons a:hover i,
.ei-footer-buttons a:focus i {
  color: #fff !important;
  transform: translateX(2px) !important;
}
.ei-apply:after,
.ei-footer-buttons a:after,
.ei-newsletter-form button:after,
.ei-search-form button:after {
  position: relative !important;
  z-index: 1 !important;
  color: currentColor !important;
  transition: transform .25s ease, color .25s ease !important;
}
.ei-apply:hover:after,
.ei-apply:focus:after,
.ei-footer-buttons a:hover:after,
.ei-footer-buttons a:focus:after,
.ei-newsletter-form button:hover:after,
.ei-newsletter-form button:focus:after,
.ei-search-form button:hover:after,
.ei-search-form button:focus:after {
  transform: translateX(3px) !important;
  color: currentColor !important;
}

/* Header/top utility hover remains yellow; footer menu hover stays white with animated yellow rule. */
.ei-top-links a:hover,
.ei-top-links a:focus,
.ei-search-open:hover,
.ei-search-open:focus {
  color: var(--ei-yellow) !important;
  text-decoration: none !important;
}
.ei-mega a:hover,
.ei-mega a:focus {
  color: #000 !important;
  text-decoration: none !important;
}

.ei-footer a {
  color: #fff !important;
}
.ei-footer a:hover,
.ei-footer a:focus {
  color: #fff !important;
}
.ei-address a,
.ei-footer-bottom a {
  text-decoration: underline !important;
  text-decoration-color: transparent !important;
  text-underline-offset: 4px !important;
  transition: text-decoration-color .22s ease !important;
}
.ei-address a:hover,
.ei-address a:focus,
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  text-decoration-color: var(--ei-yellow) !important;
  color: #fff !important;
}

.ei-footer-col a {
  position: relative !important;
  display: inline !important;
  color: #fff !important;
  text-decoration: none !important;
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  transition: background-size .26s ease !important;
}
.ei-footer-col a:hover,
.ei-footer-col a:focus {
  color: #fff !important;
  text-decoration: none !important;
  background-size: 100% 2px !important;
}

/* The small social/footer icon links should not draw the underline rule. */
.ei-footer-logo a,
.ei-footer-buttons a {
  background-image: none !important;
}

@media (max-width: 1320px) {
  .ei-logo { width: 230px !important; min-width: 230px !important; margin-right: 36px !important; }
  .ei-logo img { width: 230px !important; max-width: 230px !important; }
}
@media (max-width: 980px) {
  .ei-logo { height: 86px !important; width: 220px !important; min-width: 220px !important; }
  .ei-logo img { width: 220px !important; max-width: 220px !important; }
}
@media (max-width: 620px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-logo { width: 190px !important; min-width: 190px !important; }
  .ei-logo img { width: 190px !important; max-width: 190px !important; }
}


/* =========================================================
   Round 4 requested fixes:
   - embedded uploaded Erikson SVG logo, no image filter
   - button text starts black; buttons animate yellow to black
   - black utility links use yellow animated underline on hover
   - footer menu/legal links keep white text and animate yellow underline
   - legal/footer-bottom links live inside the right blue footer panel
   ========================================================= */
.ei-logo img,
.ei-footer-logo img {
  filter: none !important;
}
.ei-logo,
.ei-footer-logo a {
  background-image: none !important;
}

/* Yellow-to-black button wipe animation. */
.ei-apply,
.ei-footer-buttons a,
.ei-newsletter-form button,
.ei-search-form button {
  background-color: var(--ei-yellow) !important;
  background-image: linear-gradient(to right, #000 0%, #000 50%, var(--ei-yellow) 50%, var(--ei-yellow) 100%) !important;
  background-size: 205% 100% !important;
  background-position: 100% 0 !important;
  color: #000 !important;
  border: 0 !important;
  text-decoration: none !important;
  transition: background-position .28s ease, color .22s ease, transform .18s ease, box-shadow .18s ease !important;
}
.ei-apply:before,
.ei-footer-buttons a:before,
.ei-newsletter-form button:before,
.ei-search-form button:before {
  display: none !important;
  content: '' !important;
}
.ei-apply i,
.ei-footer-buttons a i {
  color: currentColor !important;
}
.ei-apply:after,
.ei-footer-buttons a:after,
.ei-newsletter-form button:after,
.ei-search-form button:after {
  color: currentColor !important;
}
.ei-apply:hover,
.ei-apply:focus,
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus,
.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus,
.ei-search-form button:hover,
.ei-search-form button:focus {
  background-position: 0 0 !important;
  color: #fff !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 3px 0 rgba(0,0,0,.30) !important;
}
.ei-footer-buttons a:hover i,
.ei-footer-buttons a:focus i,
.ei-apply:hover i,
.ei-apply:focus i {
  color: #fff !important;
}

/* Black top utility links: stay white, animate yellow underline. */
.ei-top-links a {
  color: #fff !important;
  text-decoration: none !important;
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  padding-bottom: 4px !important;
  transition: background-size .26s ease !important;
}
.ei-top-links a:hover,
.ei-top-links a:focus {
  color: #fff !important;
  text-decoration: none !important;
  background-size: 100% 2px !important;
}
.ei-top-links a i {
  color: #0096c7 !important;
}

/* Address/top-of-footer links get a normal yellow hover underline. */
.ei-address a {
  color: #fff !important;
  text-decoration: underline !important;
  text-decoration-color: rgba(255,255,255,.75) !important;
  text-underline-offset: 4px !important;
  transition: text-decoration-color .22s ease !important;
}

/* Footer menu/legal links: keep text white, animate yellow line only. */
.ei-footer-col a,
.ei-footer-bottom a {
  color: #fff !important;
  text-decoration: none !important;
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  padding-bottom: 3px !important;
  transition: background-size .26s ease !important;
}
.ei-footer-col a:hover,
.ei-footer-col a:focus,
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  color: #fff !important;
  text-decoration: none !important;
  background-size: 100% 2px !important;
}
.ei-footer-col a:after {
  color: var(--ei-yellow) !important;
}

/* Put the legal/copyright area inside the right blue footer panel, not as a black strip. */
.ei-footer-bottom {
  background: transparent !important;
  margin-top: 50px !important;
  padding-top: 25px !important;
  border-top: 1px solid rgba(255,255,255,.14) !important;
}
.ei-footer-bottom-inner {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  display: block !important;
  color: #fff !important;
  font-size: 14px !important;
}
.ei-footer-bottom ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0 10px !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  list-style: none !important;
}
.ei-footer-bottom li {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 0 8px !important;
}
.ei-footer-bottom li:not(:last-child):after {
  content: '|' !important;
  color: #fff !important;
  margin-left: 10px !important;
}
.ei-footer-right {
  padding-bottom: 58px !important;
}

/* Footer button links should never inherit white until hovered. */
.ei-footer-buttons a,
.ei-footer-buttons a:link,
.ei-footer-buttons a:visited,
.ei-footer-buttons a i {
  color: #000 !important;
}
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus,
.ei-footer-buttons a:hover i,
.ei-footer-buttons a:focus i {
  color: #fff !important;
}

@media (max-width: 980px) {
  .ei-footer-bottom { margin-top: 30px !important; }
  .ei-footer-bottom ul { display: block !important; }
  .ei-footer-bottom li { display: block !important; margin-bottom: 9px !important; }
  .ei-footer-bottom li:after { display: none !important; content: '' !important; }
}



/* =========================================================
   Round 5 final hover/button/footer corrections
   ========================================================= */

/* Reset any earlier background-image underline behavior on the black utility bar. */
.ei-topbar .ei-top-links a,
.ei-topbar .ei-top-links a:link,
.ei-topbar .ei-top-links a:visited {
  background-image: none !important;
  background-size: auto !important;
  background-position: initial !important;
  text-decoration: none !important;
  color: #fff !important;
  transition: color .18s ease, text-decoration-color .18s ease !important;
}

/* Alumni, Careers, News & Press, Events: simple Erikson hover — yellow text and underline, no slide animation. */
.ei-topbar .ei-top-links li:nth-child(-n+4) a:hover,
.ei-topbar .ei-top-links li:nth-child(-n+4) a:focus {
  color: var(--ei-yellow) !important;
  text-decoration: underline !important;
  text-decoration-color: var(--ei-yellow) !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 5px !important;
}

/* my.Erikson Login and Donate: yellow hover only, no underline. */
.ei-topbar .ei-top-links li:nth-child(n+5) a:hover,
.ei-topbar .ei-top-links li:nth-child(n+5) a:focus {
  color: var(--ei-yellow) !important;
  text-decoration: none !important;
}
.ei-topbar .ei-top-links li:nth-child(n+5) a:hover i,
.ei-topbar .ei-top-links li:nth-child(n+5) a:focus i {
  color: var(--ei-yellow) !important;
}

/* Robust yellow-to-black button animation using a wipe pseudo-element. */
.ei-apply,
.ei-footer-buttons a,
.ei-newsletter-form button,
.ei-search-form button {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: var(--ei-yellow) !important;
  background-image: none !important;
  color: #000 !important;
  border: 0 !important;
  text-decoration: none !important;
  transition: color .22s ease, transform .18s ease, box-shadow .18s ease !important;
}
.ei-apply:link,
.ei-apply:visited,
.ei-footer-buttons a:link,
.ei-footer-buttons a:visited {
  color: #000 !important;
}
.ei-apply:before,
.ei-footer-buttons a:before,
.ei-newsletter-form button:before,
.ei-search-form button:before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  z-index: -1 !important;
  inset: 0 !important;
  background: #000 !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform .26s ease !important;
}
.ei-apply:hover:before,
.ei-apply:focus:before,
.ei-footer-buttons a:hover:before,
.ei-footer-buttons a:focus:before,
.ei-newsletter-form button:hover:before,
.ei-newsletter-form button:focus:before,
.ei-search-form button:hover:before,
.ei-search-form button:focus:before {
  transform: scaleX(1) !important;
}
.ei-apply:hover,
.ei-apply:focus,
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus,
.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus,
.ei-search-form button:hover,
.ei-search-form button:focus {
  color: #fff !important;
  background: var(--ei-yellow) !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 3px 0 rgba(0,0,0,.30) !important;
}
.ei-apply i,
.ei-footer-buttons a i,
.ei-apply:after,
.ei-footer-buttons a:after,
.ei-newsletter-form button:after,
.ei-search-form button:after {
  color: currentColor !important;
  transition: transform .25s ease, color .22s ease !important;
}

/* Footer legal links: bold, no default underline; animated yellow line only on hover. */
.ei-footer-bottom a,
.ei-footer-bottom a:link,
.ei-footer-bottom a:visited,
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  color: #fff !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
  font-weight: 700 !important;
}
.ei-footer-bottom a {
  display: inline !important;
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  padding-bottom: 3px !important;
  transition: background-size .26s ease !important;
}
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  background-size: 100% 2px !important;
}

/* Footer menu links: same behavior as legal links — white text, animated yellow line, no color shift. */
.ei-footer-col a,
.ei-footer-col a:link,
.ei-footer-col a:visited,
.ei-footer-col a:hover,
.ei-footer-col a:focus {
  color: #fff !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
}
.ei-footer-col a {
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  padding-bottom: 3px !important;
  transition: background-size .26s ease !important;
}
.ei-footer-col a:hover,
.ei-footer-col a:focus {
  background-size: 100% 2px !important;
}

/* Do not draw footer underline animation on logo, yellow footer buttons, or social icons. */
.ei-footer-logo a,
.ei-footer-logo a:hover,
.ei-footer-buttons a,
.ei-footer-buttons a:hover,
.ei-social a,
.ei-social a:hover {
  background-image: none !important;
  text-decoration: none !important;
}
.ei-social a:hover,
.ei-social a:focus {
  color: #fff !important;
}



/* =========================================================
   Round 6 requested footer/text/button/social corrections
   ========================================================= */

/* Footer address and nonprofit text should be regular weight. */
.ei-address,
.ei-nonprofit {
  font-weight: 400 !important;
}
.ei-address a {
  font-weight: 400 !important;
}

/* Rebuild yellow-to-black button animation using inset wipe so it works reliably in Slate. */
.ei-apply,
.ei-footer-buttons a,
.ei-newsletter-form button,
.ei-search-form button {
  position: relative !important;
  background: var(--ei-yellow) !important;
  background-color: var(--ei-yellow) !important;
  background-image: none !important;
  color: #000 !important;
  box-shadow: inset 0 0 0 0 #000 !important;
  transition: box-shadow .28s ease, color .22s ease, transform .18s ease !important;
}
.ei-apply:hover,
.ei-apply:focus,
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus,
.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus,
.ei-search-form button:hover,
.ei-search-form button:focus {
  background: var(--ei-yellow) !important;
  background-color: var(--ei-yellow) !important;
  color: #fff !important;
  box-shadow: inset 420px 0 0 0 #000 !important;
  transform: translateY(-1px) !important;
  text-decoration: none !important;
}
.ei-apply i,
.ei-footer-buttons a i,
.ei-apply:after,
.ei-footer-buttons a:after,
.ei-newsletter-form button:after,
.ei-search-form button:after {
  color: currentColor !important;
}

/* Footer legal/copyright area: regular weight. Legal links start underlined and animate yellow on hover. */
.ei-footer-bottom-inner,
.ei-footer-bottom-inner span {
  font-weight: 400 !important;
}
.ei-footer-bottom a,
.ei-footer-bottom a:link,
.ei-footer-bottom a:visited,
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  color: #fff !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
}
.ei-footer-bottom a {
  display: inline-block !important;
  background-image: linear-gradient(#fff, #fff), linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat, no-repeat !important;
  background-position: 0 100%, 0 100% !important;
  background-size: 100% 1px, 0 2px !important;
  padding-bottom: 2px !important;
  transition: background-size .26s ease !important;
}

/* Social media icon hover on the right side of the footer. */
.ei-social a,
.ei-social a:link,
.ei-social a:visited {
  color: #fff !important;
  text-decoration: none !important;
  background-image: none !important;
  transition: color .22s ease, transform .22s ease, opacity .22s ease !important;
}
.ei-social a i {
  color: currentColor !important;
  transition: color .22s ease, transform .22s ease !important;
}
.ei-social a:hover,
.ei-social a:focus {
  color: var(--ei-yellow) !important;
  transform: translateY(-2px) !important;
  text-decoration: none !important;
  background-image: none !important;
}



/* =========================================================
   Round 7 refinements requested:
   - slower Erikson-style button wipe
   - footer sub-links indented
   - smaller footer logo
   - top utility blue icons do not turn yellow
   - footer social hover is black circle, not yellow icon
   ========================================================= */

/* Slow the yellow-to-black button animation to better match erikson.edu. */
.ei-apply,
.ei-footer-buttons a,
.ei-newsletter-form button,
.ei-search-form button {
  transition: box-shadow .58s cubic-bezier(.19, 1, .22, 1), color .32s ease, transform .24s ease !important;
}
.ei-apply:hover,
.ei-apply:focus,
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus,
.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus,
.ei-search-form button:hover,
.ei-search-form button:focus {
  box-shadow: inset 520px 0 0 0 #000 !important;
}
.ei-apply:after,
.ei-footer-buttons a:after,
.ei-newsletter-form button:after,
.ei-search-form button:after,
.ei-apply i,
.ei-footer-buttons a i {
  transition: transform .38s cubic-bezier(.19, 1, .22, 1), color .32s ease !important;
}

/* Top utility icons for my.Erikson and Donate stay Erikson blue on hover. */
.ei-topbar .ei-top-links li:nth-child(n+5) a i,
.ei-topbar .ei-top-links li:nth-child(n+5) a:hover i,
.ei-topbar .ei-top-links li:nth-child(n+5) a:focus i {
  color: #0096c7 !important;
}

/* Footer logo should be smaller, like the source site. */
.ei-footer-logo {
  margin-bottom: 20px !important;
}
.ei-footer-logo a {
  width: 218px !important;
  max-width: 218px !important;
}
.ei-footer-logo img {
  width: 218px !important;
  max-width: 218px !important;
  height: auto !important;
}

/* Indent the footer sub-links under each heading on the right side. */
.ei-footer-right .ei-footer-col ul {
  padding-left: 17px !important;
}
.ei-footer-right .ei-footer-col li {
  margin-left: 0 !important;
}
.ei-footer-right .ei-footer-col a {
  display: inline-block !important;
}

/* Social icons: round black hover state, like erikson.edu. */
.ei-social a,
.ei-social a:link,
.ei-social a:visited {
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  background: transparent !important;
  background-image: none !important;
  text-decoration: none !important;
  transform: none !important;
  transition: background-color .34s ease, color .25s ease, transform .25s ease !important;
}
.ei-social a i {
  color: #fff !important;
  transition: color .25s ease !important;
}
.ei-social a:hover,
.ei-social a:focus {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  transform: none !important;
  text-decoration: none !important;
}
.ei-social a:hover i,
.ei-social a:focus i {
  color: #fff !important;
}



/* =========================================================
   Round 8 refinements:
   - closer Erikson blues
   - slower yellow-to-black button wipe
   - tighter font sizing/weights/letter spacing
   - footer social hover: black circle with yellow icon
   ========================================================= */
:root {
  --ei-blue: #007ab8 !important;
  --ei-blue-2: #0074b0 !important;
  --ei-blue-dark: #006f9f !important;
  --ei-yellow: #ffc600 !important;
}

html, body,
body, table, td, th, input, select, textarea, button {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: -0.012em !important;
  text-rendering: geometricPrecision !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

/* Match the source-page blue blocks more closely. */
.ei-mainbar,
.ei-mainbar .ei-container {
  background-color: #007ab8 !important;
}
.ei-footer-left,
.ei-footer-grid,
.ei-footer {
  background-color: #007ab8 !important;
}

/* Tighten header typography to better match Erikson. */
.ei-search-open {
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: .285em !important;
}
.ei-top-links a {
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: -0.018em !important;
}
.ei-menu-link {
  font-size: 17px !important;
  font-weight: 900 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.05 !important;
}
.ei-logo img {
  width: 248px !important;
  max-width: 248px !important;
}
.ei-logo {
  width: 248px !important;
  min-width: 248px !important;
}

/* Tighten footer typography without making it overly heavy. */
.ei-footer,
.ei-footer p,
.ei-footer li,
.ei-footer a,
.ei-footer-bottom-inner {
  letter-spacing: -0.018em !important;
}
.ei-footer-logo img {
  width: 212px !important;
  max-width: 212px !important;
}
.ei-footer-logo a {
  width: 212px !important;
  max-width: 212px !important;
}
.ei-footer-title,
.ei-footer-col h3 {
  font-size: 18px !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  line-height: 1.05 !important;
}
.ei-footer-col a {
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}
.ei-address,
.ei-nonprofit,
.ei-footer-bottom-inner,
.ei-footer-bottom-inner span {
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
}
.ei-footer-buttons a,
.ei-apply,
.ei-newsletter-form button,
.ei-search-form button {
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
}
.ei-newsletter-text {
  font-weight: 900 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.2 !important;
}

/* Slow, smooth Erikson-style yellow-to-black button wipe. */
.ei-apply,
.ei-footer-buttons a,
.ei-newsletter-form button,
.ei-search-form button {
  background-color: var(--ei-yellow) !important;
  background-image: linear-gradient(to right, #000 0%, #000 50%, var(--ei-yellow) 50%, var(--ei-yellow) 100%) !important;
  background-size: 220% 100% !important;
  background-position: 100% 0 !important;
  color: #000 !important;
  box-shadow: none !important;
  transition: background-position .92s cubic-bezier(.19,1,.22,1), color .48s ease, transform .32s ease !important;
}
.ei-apply:hover,
.ei-apply:focus,
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus,
.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus,
.ei-search-form button:hover,
.ei-search-form button:focus {
  background-position: 0 0 !important;
  color: #fff !important;
  box-shadow: none !important;
  transform: none !important;
  text-decoration: none !important;
}

/* Social icons: black round background, yellow icon on hover. */
.ei-social a,
.ei-social a:link,
.ei-social a:visited {
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  background: transparent !important;
  background-image: none !important;
  text-decoration: none !important;
  transform: none !important;
  transition: background-color .34s ease, color .28s ease !important;
}
.ei-social a i {
  color: #fff !important;
  transition: color .28s ease !important;
}
.ei-social a:hover,
.ei-social a:focus {
  background: #000 !important;
  background-color: #000 !important;
  color: var(--ei-yellow) !important;
  text-decoration: none !important;
}

@media (max-width: 1320px) {
  .ei-menu-link { font-size: 16px !important; }
  .ei-logo, .ei-logo img { width: 226px !important; min-width: 226px !important; max-width: 226px !important; }
}
@media (max-width: 980px) {
  .ei-logo, .ei-logo img { width: 216px !important; min-width: 216px !important; max-width: 216px !important; }
}
@media (max-width: 620px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-logo, .ei-logo img { width: 186px !important; min-width: 186px !important; max-width: 186px !important; }
}



/* =========================================================
   Round 9 corrections:
   - reset header/footer typography closer to Erikson source
   - restore slow yellow-to-black button wipe using gradient only
   - keep icon/text layers stable during button hover
   ========================================================= */
:root {
  --ei-blue: #0086b3 !important;
  --ei-blue-2: #007eab !important;
  --ei-blue-dark: #00729b !important;
  --ei-yellow: #ffc600 !important;
}

/* Remove the too-tight global tracking from the prior round. */
html, body,
body, table, td, th, input, select, textarea, button {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  letter-spacing: normal !important;
  font-weight: 400 !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: optimizeLegibility !important;
}

/* Header typography: closer to erikson.edu weight/spacing. */
.ei-search-open {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .30em !important;
  text-transform: uppercase !important;
}
.ei-search-open i {
  margin-right: 11px !important;
  font-size: 13px !important;
}
.ei-top-links a,
.ei-top-links a:link,
.ei-top-links a:visited {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: -.01em !important;
  text-transform: none !important;
}
.ei-top-links a i {
  font-size: 13px !important;
  margin-right: 6px !important;
  color: #0096c7 !important;
}
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -.015em !important;
  text-transform: none !important;
}
.ei-menu-link:after {
  margin-top: 19px !important;
}
.ei-mega h3 {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 20px !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  letter-spacing: .055em !important;
}
.ei-mega a {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: -.005em !important;
}

/* Footer typography: remove over-tight negative spacing and match heavier Erikson style. */
.ei-footer,
.ei-footer p,
.ei-footer li,
.ei-footer a,
.ei-footer input,
.ei-footer button,
.ei-footer-bottom-inner {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  letter-spacing: normal !important;
}
.ei-footer-logo {
  letter-spacing: normal !important;
}
.ei-footer-title,
.ei-footer-col h3 {
  font-size: 17px !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}
.ei-footer-col a,
.ei-footer-col a:link,
.ei-footer-col a:visited {
  font-size: 15px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: -.01em !important;
}
.ei-address,
.ei-address p,
.ei-address a,
.ei-nonprofit,
.ei-nonprofit p,
.ei-footer-bottom-inner,
.ei-footer-bottom-inner span,
.ei-footer-bottom a {
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
}
.ei-newsletter-text {
  font-size: 24px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: -.02em !important;
}
.ei-footer-buttons a,
.ei-apply,
.ei-newsletter-form button,
.ei-search-form button {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: normal !important;
  line-height: 1 !important;
}

/* Use Erikson-like blues consistently. */
.ei-mainbar,
.ei-mainbar .ei-container {
  background-color: #0087b7 !important;
}
.ei-footer,
.ei-footer-grid,
.ei-footer-left {
  background-color: #0084b4 !important;
}
.ei-footer-right {
  background-color: #007eab !important;
}

/* Restore button wipe animation. This avoids pseudo-elements and inset shadows,
   which Slate was overriding, and uses only background-position. */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-footer-buttons a,
.ei-footer-buttons a:link,
.ei-footer-buttons a:visited,
.ei-newsletter-form button,
.ei-search-form button {
  position: relative !important;
  overflow: hidden !important;
  background-color: var(--ei-yellow) !important;
  background-image: linear-gradient(90deg, #000000 0%, #000000 50%, var(--ei-yellow) 50%, var(--ei-yellow) 100%) !important;
  background-size: 210% 100% !important;
  background-position: 100% 0 !important;
  background-repeat: no-repeat !important;
  color: #000000 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transform: none !important;
  transition: background-position 1.15s cubic-bezier(.19,1,.22,1), color .42s ease !important;
}
.ei-apply:hover,
.ei-apply:focus,
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus,
.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus,
.ei-search-form button:hover,
.ei-search-form button:focus {
  background-color: var(--ei-yellow) !important;
  background-image: linear-gradient(90deg, #000000 0%, #000000 50%, var(--ei-yellow) 50%, var(--ei-yellow) 100%) !important;
  background-size: 210% 100% !important;
  background-position: 0 0 !important;
  color: #ffffff !important;
  box-shadow: none !important;
  transform: none !important;
  text-decoration: none !important;
}
.ei-apply *,
.ei-footer-buttons a *,
.ei-newsletter-form button *,
.ei-search-form button * {
  position: relative !important;
  color: currentColor !important;
}
.ei-apply i,
.ei-footer-buttons a i,
.ei-apply:after,
.ei-footer-buttons a:after,
.ei-newsletter-form button:after,
.ei-search-form button:after {
  color: currentColor !important;
  transition: color .42s ease, transform .55s cubic-bezier(.19,1,.22,1) !important;
}

/* Keep top utility hover exactly as requested from the source site. */
.ei-topbar .ei-top-links li:nth-child(-n+4) a:hover,
.ei-topbar .ei-top-links li:nth-child(-n+4) a:focus {
  color: var(--ei-yellow) !important;
  text-decoration: underline !important;
  text-decoration-color: var(--ei-yellow) !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 5px !important;
}
.ei-topbar .ei-top-links li:nth-child(n+5) a:hover,
.ei-topbar .ei-top-links li:nth-child(n+5) a:focus {
  color: var(--ei-yellow) !important;
  text-decoration: none !important;
}
.ei-topbar .ei-top-links li:nth-child(n+5) a:hover i,
.ei-topbar .ei-top-links li:nth-child(n+5) a:focus i {
  color: #0096c7 !important;
}

/* Footer social icons: black circle with yellow icon on hover. */
.ei-social a:hover,
.ei-social a:focus {
  background-color: #000 !important;
  color: var(--ei-yellow) !important;
}




/* =========================================================
   Round 10 corrections:
   - exact Erikson blue samples from source page screenshots
   - right footer content starts higher than left panel
   - slightly smaller footer section headings
   - robust, slower yellow-to-black button animation
   ========================================================= */
:root {
  --ei-blue: #007ab8 !important;
  --ei-blue-2: #0074b0 !important;
  --ei-blue-dark: #006f9f !important;
  --ei-yellow: #ffc600 !important;
}

/* Source-page blue matching */
.ei-mainbar,
.ei-mainbar .ei-container {
  background-color: #007ab8 !important;
}
.ei-footer,
.ei-footer-grid,
.ei-footer-left {
  background-color: #007ab8 !important;
}

/* Pull right-side footer nav higher than the left content, like erikson.edu. */
.ei-footer-left {
  padding-top: 68px !important;
}
.ei-footer-right {
  padding-top: 28px !important;
}
.ei-footer-menu-grid {
  align-items: start !important;
}
.ei-footer-col {
  margin-bottom: 40px !important;
}

/* Footer headings were a little too large/heavy compared with erikson.edu. */
.ei-footer-title,
.ei-footer-col h3 {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}
.ei-footer-col h3:before {
  margin-right: 7px !important;
}
.ei-footer-col a,
.ei-footer-col a:link,
.ei-footer-col a:visited {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.32 !important;
  font-weight: 900 !important;
  letter-spacing: normal !important;
}
.ei-footer-right .ei-footer-col ul {
  padding-left: 18px !important;
}

/* Header/nav typography refinement: compact, heavy, not overly spaced. */
.ei-top-links a,
.ei-top-links a:link,
.ei-top-links a:visited {
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: normal !important;
}
.ei-search-open {
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: .30em !important;
}
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited {
  font-size: 17px !important;
  font-weight: 900 !important;
  letter-spacing: normal !important;
  line-height: 1.08 !important;
}

/* Robust, slower yellow-to-black wipe. This overrides the prior gradient version. */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-footer-buttons a,
.ei-footer-buttons a:link,
.ei-footer-buttons a:visited,
.ei-newsletter-form button,
.ei-search-form button {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: var(--ei-yellow) !important;
  background-color: var(--ei-yellow) !important;
  background-image: none !important;
  color: #000 !important;
  box-shadow: inset 0 0 0 0 #000 !important;
  transform: none !important;
  text-decoration: none !important;
  transition: box-shadow 1.15s cubic-bezier(.19, 1, .22, 1), color .46s ease !important;
}
.ei-apply:hover,
.ei-apply:focus,
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus,
.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus,
.ei-search-form button:hover,
.ei-search-form button:focus {
  background: var(--ei-yellow) !important;
  background-color: var(--ei-yellow) !important;
  background-image: none !important;
  color: #fff !important;
  box-shadow: inset 900px 0 0 0 #000 !important;
  transform: none !important;
  text-decoration: none !important;
}
.ei-apply i,
.ei-footer-buttons a i,
.ei-apply:after,
.ei-footer-buttons a:after,
.ei-newsletter-form button:after,
.ei-search-form button:after {
  color: currentColor !important;
  transition: color .46s ease, transform .52s cubic-bezier(.19,1,.22,1) !important;
}
.ei-apply:hover i,
.ei-apply:focus i,
.ei-footer-buttons a:hover i,
.ei-footer-buttons a:focus i,
.ei-apply:hover:after,
.ei-apply:focus:after,
.ei-footer-buttons a:hover:after,
.ei-footer-buttons a:focus:after,
.ei-newsletter-form button:hover:after,
.ei-newsletter-form button:focus:after,
.ei-search-form button:hover:after,
.ei-search-form button:focus:after {
  color: #fff !important;
  transform: translateX(3px) !important;
}

/* Social hover stays black circle with yellow icon. */
.ei-social a:hover,
.ei-social a:focus {
  background: #000 !important;
  background-color: #000 !important;
  color: var(--ei-yellow) !important;
}
.ei-social a:hover i,
.ei-social a:focus i {
  color: var(--ei-yellow) !important;
}

@media (max-width: 980px) {
  .ei-footer-left,
  .ei-footer-right {
    padding-top: 42px !important;
  }
}



/* =========================================================
   Round 12 footer geometry correction:
   - match Erikson split footer: right blue panel begins higher;
     left side has white space above the left blue panel
   - do NOT make the right panel artificially taller
   ========================================================= */
.ei-footer {
  background: linear-gradient(90deg, #ffffff 0%, #ffffff 50%, #0074b0 50%, #0074b0 100%) !important;
}
.ei-footer-left {
  margin-top: 64px !important;
  background-color: #007ab8 !important;
  padding-top: 62px !important;
}
.ei-footer-right {
  margin-top: 0 !important;
  background-color: #0074b0 !important;
  padding-top: 38px !important;
}
.ei-footer-bottom {
  margin-top: 48px !important;
}

@media (max-width: 980px) {
  .ei-footer-left,
  .ei-footer-right {
    margin-top: 0 !important;
    padding-top: 42px !important;
  }
}



/* =========================================================
   Round 13 footer white-space correction:
   - top-left footer gap is solid white only, no gradient
   - no white area at the bottom of the left footer panel
   ========================================================= */
.ei-footer {
  background: #0074b0 !important;
  position: relative !important;
  overflow: hidden !important;
}
.ei-footer:before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 50% !important;
  height: 64px !important;
  background: #ffffff !important;
  background-image: none !important;
  z-index: 0 !important;
  pointer-events: none !important;
}
.ei-footer-grid {
  position: relative !important;
  z-index: 1 !important;
  background: transparent !important;
  align-items: stretch !important;
}
.ei-footer-left {
  margin-top: 64px !important;
  background: #007ab8 !important;
  background-color: #007ab8 !important;
  padding-top: 62px !important;
}
.ei-footer-right {
  margin-top: 0 !important;
  background: #0074b0 !important;
  background-color: #0074b0 !important;
  padding-top: 38px !important;
}
.ei-footer-bottom {
  background: transparent !important;
}

@media (max-width: 980px) {
  .ei-footer {
    background: #007ab8 !important;
  }
  .ei-footer-left,
  .ei-footer-right {
    margin-top: 0 !important;
  }
}



/* =========================================================
   Round 14 footer exact-match pass
   - footer geometry matches Erikson split panel more closely
   - footer typography tightened to source proportions
   - button label text reduced and yellow-to-black animation restored/slowed
   ========================================================= */
:root {
  --ei-blue: #007ab8 !important;
  --ei-blue-2: #0074b0 !important;
  --ei-yellow: #ffc600 !important;
}

/* Keep the split footer: clean white top-left block, blue panels below/right. */
.ei-footer {
  background: #0074b0 !important;
  position: relative !important;
  overflow: hidden !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
}
.ei-footer:before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 50% !important;
  height: 64px !important;
  background: #fff !important;
  background-image: none !important;
  z-index: 0 !important;
}
.ei-footer-grid {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: 50% 50% !important;
  align-items: stretch !important;
  background: transparent !important;
}
.ei-footer-left {
  margin-top: 64px !important;
  background: #007ab8 !important;
  padding-top: 62px !important;
  padding-bottom: 78px !important;
  padding-left: 8.05vw !important;
  padding-right: 3.15vw !important;
}
.ei-footer-right {
  margin-top: 0 !important;
  background: #0074b0 !important;
  padding-top: 42px !important;
  padding-bottom: 50px !important;
  padding-left: 3.8vw !important;
  padding-right: 7.6vw !important;
}

/* Footer left typography and spacing. */
.ei-footer-logo {
  margin: 0 0 22px !important;
}
.ei-footer-logo a,
.ei-footer-logo img {
  width: 214px !important;
  max-width: 214px !important;
  height: auto !important;
}
.ei-address {
  margin: 0 0 24px !important;
  font-size: 15px !important;
  line-height: 1.42 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}
.ei-address a {
  color: #fff !important;
  font-size: inherit !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  transition: color .2s ease, text-decoration-color .2s ease !important;
}
.ei-address a:hover,
.ei-address a:focus {
  color: #fff !important;
  text-decoration-color: var(--ei-yellow) !important;
}
.ei-footer-buttons {
  gap: 9px !important;
  margin: 0 0 38px !important;
}
.ei-newsletter-copy {
  border-top: 1px solid rgba(255,255,255,.28) !important;
  margin: 0 0 26px !important;
  padding-top: 24px !important;
  max-width: 760px !important;
  font-size: 25px !important;
  line-height: 1.26 !important;
  font-weight: 900 !important;
  letter-spacing: -.012em !important;
  color: #fff !important;
}
.ei-newsletter-form {
  max-width: 700px !important;
  margin: 0 0 34px !important;
}
.ei-newsletter-form input {
  min-height: 51px !important;
  padding: 0 18px !important;
  font-size: 16px !important;
  font-weight: 400 !important;
}
.ei-candid {
  width: 96px !important;
  height: 104px !important;
  margin: 0 0 24px !important;
  padding: 12px 10px !important;
  font-size: 11px !important;
  line-height: 1.02 !important;
}
.ei-nonprofit {
  margin: 0 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #fff !important;
  letter-spacing: 0 !important;
}

/* Footer right menu: match compact heavy Erikson type and vertical rhythm. */
.ei-footer-menu-grid {
  display: grid !important;
  grid-template-columns: minmax(210px, 1fr) minmax(245px, 1fr) 48px !important;
  column-gap: 54px !important;
  align-items: start !important;
}
.ei-footer-col {
  margin: 0 0 38px !important;
}
.ei-footer-col h3 {
  margin: 0 0 16px !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  letter-spacing: .135em !important;
  text-transform: uppercase !important;
  color: #fff !important;
}
.ei-footer-col h3:before {
  width: 3px !important;
  height: 17px !important;
  margin-right: 7px !important;
  background: var(--ei-yellow) !important;
  vertical-align: -2px !important;
}
.ei-footer-col h3:after {
  color: #fff !important;
  margin-left: 4px !important;
}
.ei-footer-col ul {
  margin: 0 !important;
  padding-left: 18px !important;
  list-style: none !important;
}
.ei-footer-col li {
  margin: 0 0 13px !important;
  padding: 0 !important;
}
.ei-footer-col a,
.ei-footer-col a:link,
.ei-footer-col a:visited {
  display: inline !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.28 !important;
  font-weight: 900 !important;
  letter-spacing: -.004em !important;
  color: #fff !important;
  text-decoration: none !important;
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  padding-bottom: 3px !important;
  transition: background-size .28s ease !important;
}
.ei-footer-col a:hover,
.ei-footer-col a:focus {
  color: #fff !important;
  background-size: 100% 2px !important;
}
.ei-footer-col a:after {
  color: var(--ei-yellow) !important;
  font-weight: 900 !important;
}

/* Social icons: black disc with yellow icon on hover. */
.ei-social ul {
  margin: 0 !important;
  padding: 0 !important;
}
.ei-social li {
  margin: 0 0 29px !important;
}
.ei-social a,
.ei-social a:link,
.ei-social a:visited {
  width: 36px !important;
  height: 36px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  color: #fff !important;
  text-decoration: none !important;
  background-image: none !important;
  transition: background-color .25s ease, color .22s ease !important;
}
.ei-social a i {
  font-size: 19px !important;
  color: currentColor !important;
}
.ei-social a:hover,
.ei-social a:focus {
  background-color: #000 !important;
  color: var(--ei-yellow) !important;
}

/* Legal/copyright area: same baseline as source footer. */
.ei-footer-bottom {
  margin-top: 46px !important;
  padding-top: 27px !important;
  border-top: 1px solid rgba(255,255,255,.17) !important;
  background: transparent !important;
}
.ei-footer-bottom-inner {
  padding: 0 !important;
  margin: 0 !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
  color: #fff !important;
}
.ei-footer-bottom ul {
  margin: 0 0 11px !important;
  padding: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
}
.ei-footer-bottom li {
  margin: 0 !important;
  padding: 0 !important;
}
.ei-footer-bottom li:not(:last-child):after {
  content: '|' !important;
  color: #fff !important;
  margin: 0 10px !important;
}
.ei-footer-bottom a,
.ei-footer-bottom a:link,
.ei-footer-bottom a:visited {
  display: inline-block !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: #fff !important;
  text-decoration: none !important;
  background-image: linear-gradient(#fff,#fff), linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat, no-repeat !important;
  background-position: 0 100%, 0 100% !important;
  background-size: 100% 1px, 0 2px !important;
  padding-bottom: 1px !important;
  transition: background-size .28s ease !important;
}
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  color: #fff !important;
  background-size: 100% 1px, 100% 2px !important;
}
.ei-footer-bottom-inner span {
  display: block !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

/* Buttons: smaller text and slow source-like yellow-to-black wipe. */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-footer-buttons a,
.ei-footer-buttons a:link,
.ei-footer-buttons a:visited,
.ei-newsletter-form button,
.ei-search-form button {
  position: relative !important;
  overflow: hidden !important;
  background-color: var(--ei-yellow) !important;
  background-image: linear-gradient(90deg, #000 0%, #000 50%, var(--ei-yellow) 50%, var(--ei-yellow) 100%) !important;
  background-size: 205% 100% !important;
  background-position: 100% 0 !important;
  background-repeat: no-repeat !important;
  color: #000 !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  border: 0 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transform: none !important;
  transition: background-position 1.25s cubic-bezier(.19,1,.22,1), color .48s ease !important;
}
.ei-footer-buttons a {
  min-height: 30px !important;
  padding: 9px 15px !important;
}
.ei-newsletter-form button {
  min-height: 51px !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
}
.ei-apply {
  font-size: 13px !important;
  padding: 15px 26px !important;
}
.ei-apply:before,
.ei-footer-buttons a:before,
.ei-newsletter-form button:before,
.ei-search-form button:before {
  display: none !important;
  content: none !important;
}
.ei-apply:hover,
.ei-apply:focus,
.ei-footer-buttons a:hover,
.ei-footer-buttons a:focus,
.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus,
.ei-search-form button:hover,
.ei-search-form button:focus {
  background-position: 0 0 !important;
  color: #fff !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transform: none !important;
}
.ei-apply i,
.ei-footer-buttons a i,
.ei-apply:after,
.ei-footer-buttons a:after,
.ei-newsletter-form button:after,
.ei-search-form button:after {
  color: currentColor !important;
  transition: color .48s ease, transform .55s cubic-bezier(.19,1,.22,1) !important;
}
.ei-apply:hover i,
.ei-apply:focus i,
.ei-footer-buttons a:hover i,
.ei-footer-buttons a:focus i,
.ei-apply:hover:after,
.ei-apply:focus:after,
.ei-footer-buttons a:hover:after,
.ei-footer-buttons a:focus:after,
.ei-newsletter-form button:hover:after,
.ei-newsletter-form button:focus:after,
.ei-search-form button:hover:after,
.ei-search-form button:focus:after {
  color: currentColor !important;
  transform: translateX(3px) !important;
}

@media (max-width: 980px) {
  .ei-footer:before { display: none !important; }
  .ei-footer-left, .ei-footer-right {
    margin-top: 0 !important;
    padding: 42px 22px !important;
  }
  .ei-footer-menu-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 620px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-footer-menu-grid { grid-template-columns: 1fr !important; }
  .ei-newsletter-form { display: block !important; }
  .ei-newsletter-form input, .ei-newsletter-form button { width: 100% !important; }
}



/* =========================================================
   Round 15 footer white-space + height correction
   - force the top-left footer gap to pure white
   - reduce the overall footer height while keeping panels aligned
   ========================================================= */
.ei-footer {
  background: #0074b0 !important;
  background-image: none !important;
  position: relative !important;
  overflow: hidden !important;
}
.ei-footer:before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 50% !important;
  height: 64px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
  opacity: 1 !important;
  z-index: 5 !important;
  pointer-events: none !important;
}
.ei-footer-grid {
  position: relative !important;
  z-index: 2 !important;
  align-items: stretch !important;
}
.ei-footer-left {
  margin-top: 64px !important;
  padding-top: 54px !important;
  padding-bottom: 44px !important;
  background: #007ab8 !important;
  background-color: #007ab8 !important;
  background-image: none !important;
}
.ei-footer-right {
  margin-top: 0 !important;
  padding-top: 38px !important;
  padding-bottom: 34px !important;
  background: #0074b0 !important;
  background-color: #0074b0 !important;
  background-image: none !important;
}
.ei-footer-logo {
  margin-bottom: 18px !important;
}
.ei-address {
  margin-bottom: 22px !important;
}
.ei-footer-buttons {
  margin-bottom: 31px !important;
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
}
.ei-newsletter-copy {
  padding-top: 24px !important;
  margin-bottom: 24px !important;
}
.ei-newsletter-form {
  margin-bottom: 30px !important;
}
.ei-candid {
  margin-bottom: 20px !important;
}
.ei-footer-menu-grid {
  column-gap: 52px !important;
  row-gap: 0 !important;
}
.ei-footer-col h3 {
  margin-bottom: 14px !important;
}
.ei-footer-col li {
  margin-bottom: 11px !important;
}
.ei-social li {
  margin-bottom: 24px !important;
}
.ei-footer-bottom {
  margin-top: 30px !important;
  padding-top: 22px !important;
}
.ei-footer-bottom ul {
  margin-bottom: 9px !important;
}
@media (max-width: 980px) {
  .ei-footer:before {
    display: none !important;
    content: none !important;
  }
  .ei-footer-left,
  .ei-footer-right {
    margin-top: 0 !important;
    padding-top: 28px !important;
    padding-bottom: 40px !important;
  }
}

        
/* =========================================================
   Round 16 footer geometry correction
   - top-left footer gap pure white
   - shorter overall footer height to match erikson.edu
   ========================================================= */
.ei-footer {
  background: transparent !important;
  margin-top: 0 !important;
  overflow: visible !important;
}

.ei-footer-grid {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: stretch !important;
}

.ei-footer-left,
.ei-footer-right {
  position: relative !important;
}

.ei-footer-left {
  background: #0b82bf !important;
  padding: 58px 82px 44px 145px !important;
}

.ei-footer-left:before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 100% !important;
  height: 56px !important;
  background: #ffffff !important;
  display: block !important;
}

.ei-footer-right {
  background: #077bb6 !important;
  padding: 28px 110px 30px 66px !important;
}

.ei-footer-logo {
  margin-bottom: 20px !important;
  font-size: 23px !important;
  line-height: 1 !important;
}

.ei-address {
  margin: 0 0 20px !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.ei-footer-buttons {
  gap: 7px !important;
  margin: 0 0 28px !important;
  padding: 0 0 26px !important;
}

.ei-footer-buttons a {
  min-height: 29px !important;
  padding: 0 13px !important;
  font-size: 11px !important;
}

.ei-newsletter-copy {
  max-width: 620px !important;
  margin: 0 0 18px !important;
  font-size: 21px !important;
  line-height: 1.28 !important;
}

.ei-newsletter-form {
  max-width: 635px !important;
  margin-bottom: 24px !important;
}

.ei-newsletter-form input {
  padding: 15px 16px !important;
  font-size: 15px !important;
}

.ei-newsletter-form button {
  min-width: 157px !important;
  font-size: 13px !important;
}

.ei-candid {
  width: 94px !important;
  height: 96px !important;
  margin-bottom: 16px !important;
}

.ei-nonprofit {
  font-size: 14px !important;
  line-height: 1.35 !important;
  margin: 0 !important;
}

.ei-footer-menu-grid {
  grid-template-columns: 1fr 1fr 56px !important;
  gap: 38px !important;
}

.ei-footer-col {
  margin-bottom: 30px !important;
}

.ei-footer-col h3 {
  margin: 0 0 13px !important;
  font-size: 15px !important;
  line-height: 1.06 !important;
  letter-spacing: .11em !important;
}

.ei-footer-col li {
  margin: 0 0 9px !important;
}

.ei-footer-col a {
  font-size: 14px !important;
  line-height: 1.22 !important;
}

.ei-social li {
  margin: 0 0 23px !important;
}

.ei-social a {
  width: 23px !important;
  height: 23px !important;
  font-size: 17px !important;
}

.ei-footer-bottom {
  background: transparent !important;
  margin-top: 2px !important;
}

.ei-footer-bottom-inner {
  max-width: none !important;
  margin: 0 !important;
  padding: 8px 110px 18px 66px !important;
  display: block !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
}

.ei-footer-bottom ul {
  margin: 0 0 8px !important;
  gap: 12px !important;
}

.ei-footer-bottom li:not(:last-child):after {
  margin-left: 8px !important;
}

.ei-footer-bottom a,
.ei-footer-bottom span,
.ei-footer-bottom-inner {
  font-size: 12px !important;
}

@media (max-width: 980px) {
  .ei-footer-grid { grid-template-columns: 1fr !important; }
  .ei-footer-left,
  .ei-footer-right,
  .ei-footer-bottom-inner {
    padding-left: 36px !important;
    padding-right: 36px !important;
  }
}


/* =========================================================
   Round 17: footer height + pure white top-left gap
   ========================================================= */
html,
body,
.ei-site-content,
.ei-content-inner,
.ei-slate-content {
  background: #ffffff !important;
}

.ei-site-content {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
}

.ei-footer {
  background: transparent !important;
  margin-top: 0 !important;
  overflow: visible !important;
  width: 100% !important;
}

.ei-footer:before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 50% !important;
  height: 68px !important;
  background: #ffffff !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

.ei-footer-grid {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: stretch !important;
  min-height: 735px !important;
  position: relative !important;
  z-index: 1 !important;
}

.ei-footer-left {
  background: #0b82bf !important;
  margin-top: 68px !important;
  padding: 70px 82px 72px 145px !important;
  min-height: 667px !important;
}

.ei-footer-left:before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 100% !important;
  height: 68px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
  display: block !important;
}

.ei-footer-right {
  background: #077bb6 !important;
  padding: 46px 110px 54px 66px !important;
  min-height: 735px !important;
}

.ei-footer-logo {
  margin-bottom: 24px !important;
}

.ei-address {
  margin: 0 0 25px !important;
}

.ei-footer-buttons {
  margin: 0 0 36px !important;
  padding: 0 0 34px !important;
}

.ei-newsletter-copy {
  margin: 0 0 25px !important;
  font-size: 22px !important;
  line-height: 1.34 !important;
}

.ei-newsletter-form {
  margin-bottom: 34px !important;
}

.ei-candid {
  margin-bottom: 23px !important;
}

.ei-footer-menu-grid {
  gap: 46px !important;
}

.ei-footer-col {
  margin-bottom: 46px !important;
}

.ei-footer-col h3 {
  font-size: 15px !important;
  margin-bottom: 16px !important;
}

.ei-footer-col li {
  margin-bottom: 12px !important;
}

.ei-social li {
  margin-bottom: 28px !important;
}

.ei-footer-bottom {
  background: transparent !important;
  margin-top: 20px !important;
}

.ei-footer-bottom-inner {
  padding: 12px 110px 0 66px !important;
}

@media (max-width: 980px) {
  .ei-footer:before,
  .ei-footer-left:before { display: none !important; }
  .ei-footer-grid { grid-template-columns: 1fr !important; min-height: 0 !important; }
  .ei-footer-left { margin-top: 0 !important; min-height: 0 !important; }
  .ei-footer-right { min-height: 0 !important; }
}


/* =========================================================
   Round 18 footer position/height correction
   - footer comes up higher on the page
   - footer fills the page vertically
   - top-left gap is forced to pure #ffffff
   ========================================================= */

/* Remove the soft gray/shadow edge that was making the upper-left gap look gray. */
.ei-main,
.ei-slate-content,
.c_site-content,
#content {
  box-shadow: none !important;
  background: #ffffff !important;
}

/* Pull the footer upward so the right panel starts higher, closer to the Erikson reference. */
.ei-footer {
  margin-top: -64px !important;
  background: transparent !important;
  position: relative !important;
  z-index: 2 !important;
  overflow: visible !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 78px) !important;
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: stretch !important;
  background: transparent !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 78px) !important;
  position: relative !important;
}

/* Pure white top-left block. */
.ei-footer-left {
  background: #0b82bf !important;
  padding: 118px 82px 72px 145px !important;
}
.ei-footer-left:before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  z-index: 5 !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 64px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* Right side begins at the very top of the footer and fills the page. */
.ei-footer-right {
  background: #077bb6 !important;
  padding: 52px 110px 56px 66px !important;
  display: flex !important;
  flex-direction: column !important;
}

.ei-footer-menu-grid {
  flex: 1 1 auto !important;
}
.ei-footer-bottom {
  margin-top: auto !important;
}

@media (max-width: 980px) {
  .ei-footer {
    margin-top: 0 !important;
  }
  .ei-footer-grid {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
  }
  .ei-footer-left,
  .ei-footer-right {
    min-height: auto !important;
  }
  .ei-footer-left {
    padding-top: 52px !important;
  }
}


/* =========================================================
   Round 20 footer viewport height correction
   Based on Round 18 visual state, with footer filling one full page view.
   ========================================================= */
.ei-footer {
  min-height: 100vh !important;
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  background: transparent !important;
}

.ei-footer-grid {
  flex: 1 1 auto !important;
  min-height: calc(100vh - 96px) !important;
  display: grid !important;
  align-items: stretch !important;
}


.ei-footer-left {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

.ei-footer-right {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}

.ei-footer-right .ei-footer-bottom {
  margin-top: auto !important;
}

.ei-footer-left:before {
  background: #ffffff !important;
}

@media (max-width: 980px) {
}


/* =========================================================
   Round 21 footer top spacing correction
   - keep Round 20 full-view footer
   - add a small white breathing space at the top
   - make the left-side white block visible and pure #ffffff
   ========================================================= */
.ei-footer {
  margin-top: 24px !important;
  min-height: calc(100vh - 24px) !important;
  background: transparent !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 120px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 120px) !important;
}

.ei-footer-left:before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 100% !important;
  height: 24px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  opacity: 1 !important;
  box-shadow: none !important;
}

@media (max-width: 980px) {
}



/* =========================================================
   Round 22 footer spacing adjustment
   - small white space above the entire footer
   - left-side white block reduced to about half height
   ========================================================= */
.ei-footer {
  margin-top: 16px !important;
  min-height: calc(100vh - 16px) !important;
  background: transparent !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 96px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 96px) !important;
}

.ei-footer-left:before {
  height: 12px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

@media (max-width: 980px) {
}


/* =========================================================
   Round 23 footer fine-tuning
   - slightly taller footer
   - less white space above footer
   - left white block about half height
   - restore Sign Me Up yellow-to-black animation
   - unbold Directions link
   ========================================================= */
.ei-footer {
  margin-top: 8px !important;
  min-height: calc(100vh - 8px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 72px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 72px) !important;
}

.ei-footer-left:before {
  height: 6px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

.ei-address a,
.ei-address a:link,
.ei-address a:visited,
.ei-address a:hover,
.ei-address a:focus {
  font-weight: 400 !important;
}

/* Make the newsletter button animation work even when Slate/browser CSS overrides pseudo-elements. */
.ei-newsletter-form button,
.ei-newsletter-form button:link,
.ei-newsletter-form button:visited {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(to right, #000000 50%, var(--ei-yellow) 50%) right bottom / 200% 100% no-repeat !important;
  color: #000000 !important;
  border: 0 !important;
  box-shadow: none !important;
  transition: background-position .95s cubic-bezier(.19, 1, .22, 1), color .38s ease, transform .22s ease !important;
}


.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus {
  background-position: left bottom !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
  text-decoration: none !important;
}

@media (max-width: 980px) {
  .ei-footer-left:before {
    display: none !important;
  }
}



/* =========================================================
   Round 24 tweaks
   - footer just a little shorter
   - reduce left-side white block slightly
   - force Sign Me Up button yellow-to-black animation
   ========================================================= */
.ei-footer {
  margin-top: 8px !important;
  min-height: calc(100vh - 28px) !important;
}



.ei-footer-left:before {
  height: 3px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

/* Force the newsletter submit button to animate even when Slate strips or overrides pseudo-elements. */
.ei-newsletter-form button,
.ei-newsletter-form button:link,
.ei-newsletter-form button:visited {
  position: relative !important;
  overflow: hidden !important;
  background-color: var(--ei-yellow) !important;
  background-image: linear-gradient(to right, #000000 0%, #000000 50%, var(--ei-yellow) 50%, var(--ei-yellow) 100%) !important;
  background-size: 200% 100% !important;
  background-position: 100% 0 !important;
  color: #000000 !important;
  text-decoration: none !important;
  transition: background-position .95s cubic-bezier(.19, 1, .22, 1), color .32s ease, transform .22s ease !important;
}


.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus {
  background-color: var(--ei-yellow) !important;
  background-image: linear-gradient(to right, #000000 0%, #000000 50%, var(--ei-yellow) 50%, var(--ei-yellow) 100%) !important;
  background-position: 0 0 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
}

.ei-newsletter-form button:hover *,
.ei-newsletter-form button:focus * {
  color: #ffffff !important;
}



/* =========================================================
   Round 25 tweaks
   - whole footer about 10px shorter
   - reduce the top white space by about 10px
   ========================================================= */
.ei-footer {
  margin-top: 0 !important;
  min-height: calc(100vh - 38px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 104px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 104px) !important;
}


@media (max-width: 980px) {
  .ei-footer {
    margin-top: 0 !important;
    min-height: 0 !important;
  }
  .ei-footer-grid,
  .ei-footer-left,
  .ei-footer-right {
    min-height: 0 !important;
  }
}


/* =========================================================
   Round 26 footer height + Directions + Sign Me Up animation
   ========================================================= */
.ei-footer {
  margin-top: 0 !important;
  min-height: calc(100vh - 28px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 94px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 94px) !important;
}

.ei-footer-left:before {
  height: 0 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

.ei-address a,
.ei-address a:link,
.ei-address a:visited,
.ei-address a:hover,
.ei-address a:focus,
.ei-footer .ei-address a,
.ei-footer .ei-address a:link,
.ei-footer .ei-address a:visited,
.ei-footer .ei-address a:hover,
.ei-footer .ei-address a:focus {
  font-weight: 400 !important;
}

/* Sign Me Up: match Erikson's slower yellow-to-black fill without pseudo-elements. */
.ei-newsletter-form button,
.ei-newsletter-form button:link,
.ei-newsletter-form button:visited {
  position: relative !important;
  overflow: hidden !important;
  background: var(--ei-yellow) !important;
  background-color: var(--ei-yellow) !important;
  background-image: none !important;
  color: #000000 !important;
  box-shadow: inset 0 0 0 0 #000000 !important;
  border: 0 !important;
  text-decoration: none !important;
  transition: box-shadow 1.05s cubic-bezier(.19, 1, .22, 1), color .34s ease, transform .22s ease !important;
}

.ei-newsletter-form button:before,
.ei-newsletter-form button:after {
  display: none !important;
  content: '' !important;
}

.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus {
  background: var(--ei-yellow) !important;
  background-color: var(--ei-yellow) !important;
  background-image: none !important;
  box-shadow: inset 260px 0 0 0 #000000 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
}

@media (max-width: 980px) {
}



/* =========================================================
   Round 27 tweak
   - make the entire footer about 10px taller
   ========================================================= */
.ei-footer {
  min-height: calc(100vh - 18px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 84px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 84px) !important;
}

@media (max-width: 980px) {
  .ei-footer,
  .ei-footer-grid,
  .ei-footer-left,
  .ei-footer-right {
    min-height: 0 !important;
  }
}


/* Round 28: make entire footer 5px taller */
.ei-footer-grid {
  min-height: calc(100vh + 5px) !important;
}


/* =========================================================
   Round 29: make entire footer 3px shorter
   ========================================================= */
.ei-footer-left,
.ei-footer-right {
  padding-bottom: calc(var(--round29-existing-bottom, 0px)) !important;
}

/* Reduce total footer height by 3px without changing the visible layout. */
.ei-footer-left {
  padding-bottom: 47px !important;
}

.ei-footer-right {
  padding-bottom: 52px !important;
}

.ei-footer-bottom-inner {
  padding-bottom: 15px !important;
}


/* =========================================================
   Round 30: make entire footer another 3px shorter
   ========================================================= */
.ei-footer-left {
  padding-bottom: 44px !important;
}

.ei-footer-right {
  padding-bottom: 49px !important;
}

.ei-footer-bottom-inner {
  padding-bottom: 12px !important;
}


/* =========================================================
   Round 31: add 5px white space above the entire footer
   ========================================================= */
.ei-footer {
  margin-top: 5px !important;
}


/* =========================================================
   Add 5px #ffffff white space at the top of the RIGHT footer column only
   ========================================================= */
.ei-footer-right {
  border-top: 5px solid #ffffff !important;
  box-sizing: border-box !important;
}


/* =========================================================
   Reduce the entire .ei-footer height by 5px
   ========================================================= */
.ei-footer-left {
  padding-bottom: 39px !important;
}

.ei-footer-right {
  padding-bottom: 44px !important;
}

.ei-footer-bottom-inner {
  padding-bottom: 7px !important;
}


/* =========================================================
   Revert global font experiment; match the selected nonprofit text only
   ========================================================= */
.ei-nonprofit {
  color: #ffffff !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 21px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-rendering: auto !important;
  margin: 0 !important;
}


/* =========================================================
   Requested fixes:
   - ei-newsletter-copy font weight to 700
   - reapply address font matching
   - move left footer column content up and to the right
   ========================================================= */

/* Move left footer content up and to the right */
.ei-footer-left {
  padding-top: 34px !important;
  padding-left: 162px !important;
  padding-right: 82px !important;
}

/* Reduce excess space between buttons and divider line */
.ei-footer-buttons {
  padding-bottom: 16px !important;
  margin-bottom: 28px !important;
}

/* Newsletter copy weight */
.ei-newsletter-copy {
  font-weight: 700 !important;
}

/* Address font match */
.ei-address {
  color: #ffffff !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 21px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-rendering: auto !important;
}

/* Keep Directions from becoming bold while matching the address line */
.ei-address a,
.ei-address a:link,
.ei-address a:visited,
.ei-address a:hover,
.ei-address a:focus {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 21px !important;
  font-weight: 400 !important;
}


/* =========================================================
   Match right footer column link font to erikson.edu
   ========================================================= */
.ei-footer-right .ei-footer-col a,
.ei-footer-right .ei-footer-col a:link,
.ei-footer-right .ei-footer-col a:visited,
.ei-footer-right .ei-footer-col a:hover,
.ei-footer-right .ei-footer-col a:focus {
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 21px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  color: #ffffff !important;
  text-rendering: auto !important;
  -webkit-font-smoothing: antialiased !important;
}

/* Match right footer section headings to Erikson.edu's Gotham heading style */
.ei-footer-right .ei-footer-col h3 {
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 18px !important;
  font-weight: 700 !important;
  letter-spacing: 0.13em !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  -webkit-font-smoothing: antialiased !important;
}


/* =========================================================
   Fix right-footer heading links + icon + font weight
   ========================================================= */

/* Right footer sub-links: make weight 700 */
.ei-footer-right .ei-footer-col a,
.ei-footer-right .ei-footer-col a:link,
.ei-footer-right .ei-footer-col a:visited,
.ei-footer-right .ei-footer-col a:hover,
.ei-footer-right .ei-footer-col a:focus {
  font-weight: 700 !important;
}

/* Make footer headings behave like real links */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:link,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:visited,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:hover,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:focus {
  color: #ffffff !important;
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 18px !important;
  font-weight: 700 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  background-image: none !important;
}

/* Replace the incorrect double-pipe icon with Erikson-style yellow vertical mark */
.ei-footer-right .ei-footer-col h3 {
  position: relative !important;
  padding-left: 11px !important;
}

.ei-footer-right .ei-footer-col h3:before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 2px !important;
  width: 3px !important;
  height: 16px !important;
  background: var(--ei-yellow) !important;
  margin: 0 !important;
  letter-spacing: 0 !important;
}

.ei-footer-right .ei-footer-col h3:after {
  content: '' !important;
}

/* Add the white chevron after the heading text, like erikson.edu */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:after {
  content: ' ›' !important;
  color: #ffffff !important;
  display: inline !important;
  margin-left: 3px !important;
  font-weight: 700 !important;
}

/* Keep normal footer list links with the small yellow chevron */
.ei-footer-right .ei-footer-col ul a:after {
  content: ' ›' !important;
  color: var(--ei-yellow) !important;
  font-weight: 700 !important;
}


/* =========================================================
   Fix right-footer heading underline animation and Erikson-style icon
   ========================================================= */

/* Heading wrapper should not create the icon anymore. The icon belongs inline before the link. */
.ei-footer-right .ei-footer-col h3 {
  position: static !important;
  padding-left: 0 !important;
}

.ei-footer-right .ei-footer-col h3:before,
.ei-footer-right .ei-footer-col h3:after {
  content: '' !important;
  display: none !important;
}

/* Match Erikson.edu: double yellow vertical mark before the heading text */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:before {
  content: '||' !important;
  color: var(--ei-yellow) !important;
  display: inline-block !important;
  margin-right: 8px !important;
  letter-spacing: -2px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  background: none !important;
}

/* Keep the heading chevron after the text */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:after {
  content: ' ›' !important;
  color: #ffffff !important;
  display: inline !important;
  margin-left: 3px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  background: none !important;
}

/* Heading links: restore the Erikson underline animation */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:link,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:visited {
  color: #ffffff !important;
  text-decoration: none !important;
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  transition: background-size .28s ease !important;
}

.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:hover,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:focus {
  color: #ffffff !important;
  text-decoration: none !important;
  background-size: 100% 2px !important;
}

/* Do not let the underline apply to the pseudo-icon/chevron themselves. */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:hover:before,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:focus:before,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:hover:after,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:focus:after {
  background: none !important;
  text-decoration: none !important;
}


/* =========================================================
   Right footer heading final match:
   - Gotham font
   - correct double-bar icon drawn as bars, not text
   - underline animation begins at icon, not only the letters
   ========================================================= */

/* Right footer heading wrapper */
.ei-footer-right .ei-footer-col h3 {
  position: relative !important;
  padding-left: 0 !important;
  margin-bottom: 14px !important;
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 20px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}

/* Remove any older text-based or block icons */
.ei-footer-right .ei-footer-col h3:before,
.ei-footer-right .ei-footer-col h3:after,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:before {
  content: '' !important;
  display: none !important;
}

/* Heading link: animation spans from the yellow icon through the text */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:link,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:visited {
  position: relative !important;
  display: inline-block !important;
  padding-left: 12px !important;
  color: #ffffff !important;
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 20px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  transition: background-size .28s ease !important;
}

/* Correct Erikson-style icon: two thin yellow vertical bars */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link span.ei-heading-mark {
  display: none !important;
}

.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  top: 3px !important;
  width: 6px !important;
  height: 14px !important;
  background:
    linear-gradient(var(--ei-yellow), var(--ei-yellow)) 0 0 / 2px 14px no-repeat,
    linear-gradient(var(--ei-yellow), var(--ei-yellow)) 4px 0 / 2px 14px no-repeat !important;
}

/* White chevron after heading text */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:after {
  content: ' ›' !important;
  color: #ffffff !important;
  display: inline !important;
  margin-left: 3px !important;
  font-weight: 700 !important;
  background: none !important;
  text-decoration: none !important;
}

/* Hover animation */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:hover,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:focus {
  color: #ffffff !important;
  text-decoration: none !important;
  background-size: 100% 2px !important;
}

/* Right column sublinks font to match Erikson.edu */
.ei-footer-right .ei-footer-col ul a,
.ei-footer-right .ei-footer-col ul a:link,
.ei-footer-right .ei-footer-col ul a:visited,
.ei-footer-right .ei-footer-col ul a:hover,
.ei-footer-right .ei-footer-col ul a:focus {
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 20px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  color: #ffffff !important;
  text-decoration: none !important;
}


/* =========================================================
   Right footer heading icon/hover final correction
   - icon does not disappear on hover
   - underline animation excludes icon and starts at text
   - first yellow bar is shorter than second, like erikson.edu
   ========================================================= */

/* Keep heading links positioned for the custom icon */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:link,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:visited {
  position: relative !important;
  display: inline-block !important;
  padding-left: 12px !important;
  overflow: visible !important;
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 12px 100% !important;
  background-size: 0 2px !important;
  transition: background-size .28s ease !important;
}

/* Hover underline starts at the letters, not the icon */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:hover,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:focus {
  background-position: 12px 100% !important;
  background-size: calc(100% - 12px) 2px !important;
}

/* Correct Erikson-style two-line icon:
   first bar is shorter, second bar is taller */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  top: 3px !important;
  width: 7px !important;
  height: 15px !important;
  background:
    linear-gradient(var(--ei-yellow), var(--ei-yellow)) 0 4px / 2px 10px no-repeat,
    linear-gradient(var(--ei-yellow), var(--ei-yellow)) 4px 0 / 2px 14px no-repeat !important;
  z-index: 2 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: none !important;
}

/* Make sure the icon stays visible during hover/focus */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:hover:before,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:focus:before {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  background:
    linear-gradient(var(--ei-yellow), var(--ei-yellow)) 0 4px / 2px 10px no-repeat,
    linear-gradient(var(--ei-yellow), var(--ei-yellow)) 4px 0 / 2px 14px no-repeat !important;
}

/* Keep the white chevron from picking up the underline */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:after,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:hover:after,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:focus:after {
  content: ' ›' !important;
  color: #ffffff !important;
  background: none !important;
  text-decoration: none !important;
}


/* =========================================================
   Requested footer adjustments
   - Right footer section heading links: 800 weight, 14px
   - Move all left footer content down 10px
   ========================================================= */

/* Move all left-side footer content down 10px */
.ei-footer-left {
  padding-top: 44px !important;
}

/* Right footer heading links: Admissions, Community Services, Policy & Research, Academics, About */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:link,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:visited,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:hover,
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:focus {
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
}

/* Keep the chevron matching the updated heading weight */
.ei-footer-right .ei-footer-col h3 a.ei-footer-heading-link:after {
  font-weight: 800 !important;
}


/* =========================================================
   Requested footer adjustments
   - Move second right-footer link column slightly right
   - Move left footer content down another 4px
   ========================================================= */

/* Previous left footer top was 44px; move down another 4px */
.ei-footer-left {
  padding-top: 48px !important;
}

/* Move the second column on the right footer slightly to the right */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(2) {
  padding-left: 12px !important;
}


/* =========================================================
   Requested footer refinements
   - Move second right-footer link column back slightly
   - Match footer legal/copyright font + spacing to erikson.edu
   ========================================================= */

/* Previous value was 12px; reduce so the second column is only slightly offset */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(2) {
  padding-left: 6px !important;
}

/* Legal/footer-bottom typography and spacing */
.ei-footer-bottom,
.ei-footer-bottom-inner,
.ei-footer-bottom ul,
.ei-footer-bottom li,
.ei-footer-bottom a,
.ei-footer-bottom span {
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  color: #ffffff !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: auto !important;
}

.ei-footer-bottom-inner {
  font-size: 14px !important;
  line-height: 21px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  padding-top: 18px !important;
}

.ei-footer-bottom ul {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0 !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
}

.ei-footer-bottom li {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ei-footer-bottom li:not(:last-child):after {
  content: '|' !important;
  color: #ffffff !important;
  margin: 0 10px !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 21px !important;
}

.ei-footer-bottom a,
.ei-footer-bottom a:link,
.ei-footer-bottom a:visited,
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 21px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
  background-image: linear-gradient(#ffffff, #ffffff), linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat, no-repeat !important;
  background-position: 0 100%, 0 100% !important;
  background-size: 100% 1px, 0 2px !important;
  transition: background-size .28s ease !important;
}

.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  color: #ffffff !important;
  background-size: 100% 1px, 100% 2px !important;
}

.ei-footer-bottom .ei-copyright,
.ei-footer-bottom span,
.ei-footer-bottom-inner > span {
  display: block !important;
  margin-top: 9px !important;
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 21px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: #ffffff !important;
}


/* =========================================================
   Requested footer refinements
   - Bring second right-footer column back left slightly
   - Match bottom legal-link font/line spacing more closely
   - Move horizontal divider above legal links down slightly
   ========================================================= */

/* The previous offset was 6px; reduce it so the second column comes back left. */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(2) {
  padding-left: 2px !important;
}

/* Move the divider/legal area down a bit. */
.ei-footer-bottom {
  margin-top: 14px !important;
  padding-top: 12px !important;
}

/* Keep the divider line full and positioned just above the legal links. */
.ei-footer-bottom:before {
  content: '' !important;
  display: block !important;
  height: 1px !important;
  width: 100% !important;
  background: rgba(255,255,255,.22) !important;
  margin: 0 0 18px 0 !important;
}

/* Prevent any older border from doubling the line. */
.ei-footer-bottom-inner {
  border-top: 0 !important;
  padding-top: 0 !important;
}

/* Bottom legal links: Gotham, lighter, slightly taller line-height like erikson.edu. */
.ei-footer-bottom,
.ei-footer-bottom-inner,
.ei-footer-bottom ul,
.ei-footer-bottom li,
.ei-footer-bottom a,
.ei-footer-bottom span {
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  color: #ffffff !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: auto !important;
}

.ei-footer-bottom-inner {
  font-size: 14px !important;
  line-height: 28px !important;
  font-weight: 400 !important;
  letter-spacing: -0.25px !important;
}

.ei-footer-bottom ul {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0 !important;
  row-gap: 0 !important;
  margin: 0 0 2px 0 !important;
  padding: 0 !important;
}

.ei-footer-bottom li {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 28px !important;
}

.ei-footer-bottom li:not(:last-child):after {
  content: '|' !important;
  color: #ffffff !important;
  margin: 0 9px !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 28px !important;
}

.ei-footer-bottom a,
.ei-footer-bottom a:link,
.ei-footer-bottom a:visited,
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 28px !important;
  font-weight: 400 !important;
  letter-spacing: -0.25px !important;
  color: #ffffff !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
  background-image: linear-gradient(#ffffff, #ffffff), linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat, no-repeat !important;
  background-position: 0 88%, 0 88% !important;
  background-size: 100% 1px, 0 2px !important;
  transition: background-size .28s ease !important;
}

.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  background-size: 100% 1px, 100% 2px !important;
}

.ei-footer-bottom .ei-copyright,
.ei-footer-bottom span,
.ei-footer-bottom-inner > span {
  display: block !important;
  margin-top: 8px !important;
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 28px !important;
  font-weight: 400 !important;
  letter-spacing: -0.25px !important;
  color: #ffffff !important;
}


/* =========================================================
   Requested footer refinements
   - Bottom legal links font: Gotham A/B, sans-serif
   - Remove duplicate/top horizontal line above bottom links
   - Add vertical spacing before second row footer sections
   - Increase Sign Me Up button text size to match erikson.edu
   ========================================================= */

/* Remove the older/top horizontal divider so only one line remains. */
.ei-footer-bottom {
  border-top: 0 !important;
}

.ei-footer-bottom-inner {
  border-top: 0 !important;
}

/* Keep only this one divider line above the legal links. */
.ei-footer-bottom:before {
  content: '' !important;
  display: block !important;
  height: 1px !important;
  width: 100% !important;
  background: rgba(255,255,255,.22) !important;
  margin: 0 0 18px 0 !important;
}

/* Bottom legal links exact font stack requested. */
.ei-footer-bottom,
.ei-footer-bottom-inner,
.ei-footer-bottom ul,
.ei-footer-bottom li,
.ei-footer-bottom a,
.ei-footer-bottom span {
  font-family: "Gotham A", "Gotham B", sans-serif !important;
}

.ei-footer-bottom a,
.ei-footer-bottom a:link,
.ei-footer-bottom a:visited,
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  font-family: "Gotham A", "Gotham B", sans-serif !important;
  font-size: 14px !important;
  line-height: 28px !important;
  font-weight: 400 !important;
  letter-spacing: -0.25px !important;
}

/* Add more vertical space before the second row of right-footer sections. */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(3),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(4),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(5) {
  margin-top: 18px !important;
}

/* Sign Me Up button text size closer to erikson.edu. */
.ei-newsletter-form button {
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}


/* =========================================================
   Requested footer refinements
   - Slightly more weight on bottom legal links
   - Slightly larger Sign Me Up font
   - More vertical spacing between main right-footer links
   - Move second right-footer column left slightly
   ========================================================= */

/* Bottom legal links: a little more weight */
.ei-footer-bottom a,
.ei-footer-bottom a:link,
.ei-footer-bottom a:visited,
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus,
.ei-footer-bottom .ei-copyright,
.ei-footer-bottom span,
.ei-footer-bottom-inner > span {
  font-weight: 500 !important;
}

/* Sign Me Up button font a little bigger */
.ei-newsletter-form button {
  font-size: 15px !important;
  line-height: 19px !important;
}

/* More vertical spacing between the main links on the right footer */
.ei-footer-right .ei-footer-col li {
  margin-bottom: 13px !important;
}

/* Move second column slightly left from the previous position */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(2) {
  padding-left: 0 !important;
  margin-left: -4px !important;
}


/* =========================================================
   Requested footer refinements
   - Bottom legal links font to Roboto/Arial/Helvetica
   - More vertical space between right-footer header link groups
   - Add chevron to Sign Me Up button
   ========================================================= */

/* Bottom legal/copyright links on the right side footer */
.ei-footer-bottom,
.ei-footer-bottom-inner,
.ei-footer-bottom ul,
.ei-footer-bottom li,
.ei-footer-bottom a,
.ei-footer-bottom span,
.ei-footer-bottom .ei-copyright,
.ei-footer-bottom-inner > span {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
}

/* Keep the current sizing/weight, just force the requested font stack */
.ei-footer-bottom a,
.ei-footer-bottom a:link,
.ei-footer-bottom a:visited,
.ei-footer-bottom a:hover,
.ei-footer-bottom a:focus {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
}

/* More vertical space between the right-footer header link groups */
.ei-footer-right .ei-footer-col {
  margin-bottom: 40px !important;
}

/* A little extra space before lower groups, matching the staggered Erikson layout */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(3),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(4),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(5) {
  margin-top: 24px !important;
}

/* Add the chevron at the end of the Sign Me Up button */
.ei-newsletter-form button:after {
  content: ' ›' !important;
  display: inline !important;
  color: currentColor !important;
  margin-left: 5px !important;
  font-weight: 900 !important;
  background: none !important;
  text-decoration: none !important;
}


/* =========================================================
   Requested footer refinements
   - Left-align bottom legal links with first footer link column
   - Make horizontal divider above them darker/more visible
   ========================================================= */

/* Align the bottom legal/copyright area with the first right-footer column */
.ei-footer-bottom,
.ei-footer-bottom-inner {
  text-align: left !important;
}

.ei-footer-bottom-inner {
  padding-left: 0 !important;
  margin-left: 0 !important;
}

/* Make the legal links start flush with the first footer column */
.ei-footer-bottom ul {
  justify-content: flex-start !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

/* Darker/more visible horizontal divider like erikson.edu */
.ei-footer-bottom:before {
  background: rgba(255,255,255,.38) !important;
}


/* =========================================================
   Requested footer refinements
   - Sign Me Up button font to Gotham A/B
   - Move social icons up to align with Community Services
   - Make divider above bottom right links darker blue
   ========================================================= */

/* Sign Me Up button font */
.ei-newsletter-form button,
.ei-newsletter-form button:after {
  font-family: "Gotham A", "Gotham B", sans-serif !important;
}

/* Move social media icons up to align with Community Services heading */
.ei-footer-right .ei-social {
  margin-top: 0 !important;
  padding-top: 0 !important;
  align-self: start !important;
}


/* Darker blue horizontal divider above the bottom links */
.ei-footer-bottom:before {
  background: #005f8f !important;
  opacity: 1 !important;
}


/* =========================================================
   Requested footer refinements
   - Legal divider line color #0b82bf
   - Move social icons higher aligned with Community Services
   - Bold Directions and make its chevron white
   ========================================================= */

/* Horizontal line above Legal Policies / Privacy Policy / etc. */
.ei-footer-bottom:before {
  background: #0b82bf !important;
  opacity: 1 !important;
}

/* Move social media icons higher on the far right, aligned with Community Services */
.ei-footer-right .ei-social {
  margin-top: -42px !important;
  padding-top: 0 !important;
  align-self: start !important;
}


/* Bold Directions in the address line */
.ei-address a,
.ei-address a:link,
.ei-address a:visited,
.ei-address a:hover,
.ei-address a:focus {
  font-weight: 700 !important;
}

/* Make the Directions chevron/arrow white instead of yellow */
.ei-address a:after {
  color: #ffffff !important;
}


/* =========================================================
   Requested footer refinements
   - Newsletter copy font-size 23px
   - Force wrap after "insights"
   - Move social media icons up to align with Community Services
   ========================================================= */

/* Newsletter copy */
.ei-newsletter-copy {
  font-size: 23px !important;
  line-height: 31px !important;
  font-weight: 700 !important;
  max-width: 660px !important;
}

/* Move social media icons higher, aligned with Community Services */
.ei-footer-right .ei-social {
  margin-top: -72px !important;
  padding-top: 0 !important;
  align-self: start !important;
}



/* =========================================================
   Final requested footer tuning
   - Bold Directions and make its chevron white
   - Increase newsletter copy by 1px
   - Move bottom legal links slightly right
   - Move social icons to the top of the right footer
   ========================================================= */

/* Bold Directions in the left footer address line */
.ei-address a,
.ei-address a:link,
.ei-address a:visited,
.ei-address a:hover,
.ei-address a:focus {
  font-weight: 700 !important;
}

/* Make the Directions chevron white */
.ei-address a:after {
  color: #ffffff !important;
}

/* Newsletter copy: increase by 1px and preserve the forced wrap after insights */
.ei-newsletter-copy {
  font-size: 24px !important;
  line-height: 32px !important;
  font-weight: 700 !important;
}

/* Move the bottom right-footer legal links slightly right to align with Registration & Student Records */
.ei-footer-bottom-inner {
  padding-left: 18px !important;
}

.ei-footer-bottom ul {
  padding-left: 0 !important;
  margin-left: 0 !important;
  justify-content: flex-start !important;
}

/* Move social media icons to the top of the right footer column */
.ei-footer-right .ei-social {
  margin-top: -118px !important;
  padding-top: 0 !important;
  align-self: start !important;
}



/* =========================================================
   Requested footer fixes
   - Newsletter wraps after "insights"
   - Directions is bold
   - Social icons moved up and slightly left
   ========================================================= */

/* Keep "policy insights" together on the first line, then break after insights. */
.ei-newsletter-copy {
  font-size: 23px !important;
  line-height: 31px !important;
  font-weight: 700 !important;
  max-width: 760px !important;
  letter-spacing: -0.15px !important;
}

/* Bold Directions in the address line. */
.ei-footer-left .ei-address a,
.ei-footer-left .ei-address a:link,
.ei-footer-left .ei-address a:visited,
.ei-footer-left .ei-address a:hover,
.ei-footer-left .ei-address a:focus {
  font-weight: 900 !important;
}

/* Keep the Directions chevron white. */
.ei-footer-left .ei-address a:after {
  color: #ffffff !important;
  font-weight: 900 !important;
}

/* Move the social media icons higher and slightly left. */
.ei-footer-right .ei-social {
  margin-top: -150px !important;
  margin-left: -18px !important;
  padding-top: 0 !important;
  align-self: start !important;
}

.ei-footer-right .ei-social ul {
  margin-top: 0 !important;
  padding-top: 0 !important;
}


/* =========================================================
   Force social media icons higher and slightly left
   Previous margin changes were not enough because the footer grid was
   still reserving the original social column position.
   ========================================================= */

/* Make the right footer grid the positioning parent */
.ei-footer-right {
  position: relative !important;
}

/* Pull the social icon column out of the normal grid flow and place it manually */
.ei-footer-right .ei-social {
  position: absolute !important;
  top: 50px !important;
  right: 58px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  z-index: 5 !important;
}

/* Keep icons stacked vertically */
.ei-footer-right .ei-social ul {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ei-footer-right .ei-social li {
  display: block !important;
  margin: 0 0 30px 0 !important;
  padding: 0 !important;
}

/* Keep the social icon hover behavior */
.ei-footer-right .ei-social a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}


/* =========================================================
   Requested footer text adjustment
   - Nonprofit/EIN line font-size: 15.5px
   ========================================================= */
.ei-nonprofit {
  font-size: 15.5px !important;
}


/* =========================================================
   Requested footer refinements
   - Move second right-footer link column left
   - Make social icons lighter / less bold
   - Move social icons higher
   ========================================================= */

/* Move the second column of right-footer links left a little */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(2) {
  padding-left: 0 !important;
  margin-left: -12px !important;
}

/* Move social media icons higher and keep them slightly left */
.ei-footer-right .ei-social {
  position: absolute !important;
  top: 22px !important;
  right: 58px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  z-index: 5 !important;
}

/* Make social icons less bold/heavy to better match erikson.edu */
.ei-footer-right .ei-social a,
.ei-footer-right .ei-social a:link,
.ei-footer-right .ei-social a:visited,
.ei-footer-right .ei-social a:hover,
.ei-footer-right .ei-social a:focus,
.ei-footer-right .ei-social i,
.ei-footer-right .ei-social svg {
  font-weight: 400 !important;
  text-shadow: none !important;
  -webkit-font-smoothing: antialiased !important;
}

/* Slightly reduce icon visual weight/size */
.ei-footer-right .ei-social a {
  font-size: 18px !important;
  width: 24px !important;
  height: 24px !important;
}

.ei-footer-right .ei-social li {
  margin-bottom: 28px !important;
}


/* =========================================================
   Requested footer refinement
   - Move social media icons further left
   ========================================================= */
.ei-footer-right .ei-social {
  right: 92px !important;
}


/* =========================================================
   Social icon final tuning
   - Move social media icon column further left
   - Make hover circle larger to match erikson.edu
   ========================================================= */

/* Position social icons further left while keeping them high in the footer */
.ei-footer-right {
  position: relative !important;
}

.ei-footer-right .ei-social {
  position: absolute !important;
  top: 22px !important;
  right: 145px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  z-index: 5 !important;
}

/* Keep the icons stacked vertically */
.ei-footer-right .ei-social ul {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ei-footer-right .ei-social li {
  display: block !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
}

/* Larger hover target/circle, like erikson.edu */
.ei-footer-right .ei-social a,
.ei-footer-right .ei-social a:link,
.ei-footer-right .ei-social a:visited {
  width: 46px !important;
  height: 46px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: #ffffff !important;
  font-size: 20px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  transition: background-color .22s ease, color .22s ease, transform .22s ease !important;
}

/* Black circular hover with yellow icon */
.ei-footer-right .ei-social a:hover,
.ei-footer-right .ei-social a:focus {
  width: 46px !important;
  height: 46px !important;
  background: #000000 !important;
  color: var(--ei-yellow) !important;
  border-radius: 50% !important;
  text-decoration: none !important;
  transform: none !important;
}

.ei-footer-right .ei-social a:hover i,
.ei-footer-right .ei-social a:focus i,
.ei-footer-right .ei-social a:hover svg,
.ei-footer-right .ei-social a:focus svg {
  color: var(--ei-yellow) !important;
  fill: var(--ei-yellow) !important;
  font-weight: 400 !important;
}


/* =========================================================
   Social icon final adjustment
   - Move social icons a little more left
   - Bring icons a little closer together
   ========================================================= */
.ei-footer-right .ei-social {
  right: 165px !important;
}

.ei-footer-right .ei-social li {
  margin-bottom: 14px !important;
}


/* =========================================================
   Social icon spacing adjustment
   - Move social icons just a little closer together
   ========================================================= */
.ei-footer-right .ei-social li {
  margin-bottom: 9px !important;
}


/* =========================================================
   Social icon update
   - Change Twitter icon to X
   ========================================================= */
.ei-footer-right .ei-social a[href*="twitter.com"] i:before,
.ei-footer-right .ei-social a[href*="x.com"] i:before {
  content: "𝕏" !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-weight: 700 !important;
}

.ei-footer-right .ei-social a[href*="twitter.com"]:hover i:before,
.ei-footer-right .ei-social a[href*="x.com"]:hover i:before,
.ei-footer-right .ei-social a[href*="twitter.com"]:focus i:before,
.ei-footer-right .ei-social a[href*="x.com"]:focus i:before {
  content: "𝕏" !important;
  color: var(--ei-yellow) !important;
}


/* =========================================================
   Candid / Platinum Transparency badge formatting
   - Match Erikson.edu badge proportions and text layout
   ========================================================= */
.ei-candid {
  width: 98px !important;
  height: 98px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ffffff !important;
  border: 4px solid #9cc4d9 !important;
  box-shadow: inset 0 0 0 2px #d8e7ef !important;
  padding: 7px !important;
  margin-top: 0 !important;
  margin-bottom: 20px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.ei-candid-inner,
.ei-candid > div {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  background: #ffffff !important;
  color: #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 11px !important;
  line-height: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  padding: 2px 1px !important;
  box-sizing: border-box !important;
}

.ei-candid .ei-candid-text,
.ei-candid .candid-text,
.ei-candid span,
.ei-candid p {
  color: #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 11px !important;
  line-height: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

.ei-candid strong,
.ei-candid b,
.ei-candid .candid-brand {
  color: #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 13px !important;
  line-height: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
  display: block !important;
  text-align: left !important;
}

/* If the badge is plain text directly inside .ei-candid, normalize it. */
.ei-candid {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 11px !important;
  line-height: 12px !important;
  font-weight: 400 !important;
  color: #000000 !important;
  text-align: left !important;
}


/* =========================================================
   Header hover/dropdown restoration
   Restores the working sub-navigation hover behavior while keeping
   the completed footer unchanged.
   ========================================================= */

/* Keep header above Slate content and footer */
.ei-header,
.ei-mainbar,
.ei-nav,
.ei-nav-list,
.ei-nav-item {
  position: relative !important;
  z-index: 9000 !important;
}

.ei-nav-item {
  position: relative !important;
}

/* Restore dropdown display on hover/focus */
.ei-nav-item .ei-mega {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.ei-nav-item:hover > .ei-mega,
.ei-nav-item:focus-within > .ei-mega {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Position the mega menu under the blue nav bar without detaching it from hover */
.ei-mega {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  z-index: 9999 !important;
  background: #ffffff !important;
  border-top: 4px solid var(--ei-yellow) !important;
  box-shadow: 0 24px 44px rgba(0,0,0,.25) !important;
}

/* Make the dropdown easier to keep open while moving the mouse downward */
.ei-mega:before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: -14px !important;
  height: 14px !important;
  background: transparent !important;
}

/* Restore hover styling on the main nav items */
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link {
  background: #0876a9 !important;
  color: var(--ei-yellow) !important;
  text-decoration: none !important;
}

/* Keep dropdown links clickable and styled */
.ei-mega a {
  pointer-events: auto !important;
  text-decoration: none !important;
}

.ei-mega a:hover,
.ei-mega a:focus {
  color: #000000 !important;
  text-decoration: none !important;
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 100% 2px !important;
}

/* Prevent Slate content from sitting on top of the dropdown */
.ei-site-content,
#main-content,
#slate-root {
  position: relative !important;
  z-index: 1 !important;
}


/* =========================================================
   Full Erikson header sub-navigation items
   Adds all missing desktop mega-menu links from erikson.edu while
   preserving the working hover/dropdown behavior.
   ========================================================= */

/* Use the actual class names in this build file. */
.ei-menu-item {
  position: relative !important;
  z-index: 9000 !important;
}

.ei-menu-item .ei-mega {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.ei-menu-item:hover > .ei-mega,
.ei-menu-item:focus-within > .ei-mega {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Keep dropdown attached to the hovered nav item, so it does not disappear. */
.ei-mega {
  top: 112px !important;
  z-index: 9999 !important;
  background: #ffffff !important;
  border-top: 4px solid var(--ei-yellow) !important;
  box-shadow: 0 22px 34px rgba(0,0,0,.18) !important;
}

/* More room for the full menu content. */
.ei-mega-admissions {
  grid-template-columns: repeat(4, minmax(190px, 1fr)) !important;
}

.ei-mega-academics {
  grid-template-columns: repeat(2, minmax(420px, 1fr)) !important;
  column-gap: 72px !important;
}

.ei-mega-community,
.ei-mega-policy {
  grid-template-columns: repeat(2, minmax(260px, 1fr)) !important;
}

.ei-mega-about {
  grid-template-columns: repeat(3, minmax(230px, 1fr)) !important;
}

/* Sub-navigation typography and hierarchy */
.ei-mega h3 a {
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: inherit !important;
  color: #000000 !important;
}

.ei-mega h3 a:hover,
.ei-mega h3 a:focus {
  color: #000000 !important;
}

.ei-mega .ei-mega-sub {
  position: relative !important;
  margin-left: 16px !important;
  margin-bottom: 12px !important;
}



/* Prevent footer-specific heading styles from affecting header mega-menu headings. */
.ei-mega .ei-footer-heading-link {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  letter-spacing: inherit !important;
  text-transform: none !important;
}

/* Keep Slate page content below open mega menus. */
.ei-site-content,
#main-content,
#slate-root {
  position: relative !important;
  z-index: 1 !important;
}


/* =========================================================
   Requested fixes:
   - Center header mega-menu dropdowns like erikson.edu
   - Reduce space between Erikson Store and bottom legal links
   ========================================================= */

/* Center the desktop mega menu under the page/nav area instead of left-aligning it */
.ei-menu-item {
  position: static !important;
}

.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  position: absolute !important;
  top: 100% !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: min(1440px, calc(100vw - 110px)) !important;
  max-width: 1440px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  z-index: 9999 !important;
}

/* Keep hover working after moving the menu to the center */
.ei-menu-item:hover > .ei-mega,
.ei-menu-item:focus-within > .ei-mega,
.ei-nav-item:hover > .ei-mega,
.ei-nav-item:focus-within > .ei-mega {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* The menu content should start inside the centered panel, not at the viewport edge */
.ei-mega {
  padding-left: 42px !important;
  padding-right: 42px !important;
  box-sizing: border-box !important;
}

/* Reduce the vertical gap between Erikson Store and the bottom legal links */
.ei-footer-right .ei-footer-col {
  margin-bottom: 24px !important;
}

/* Pull the legal area up closer to the menu links */
.ei-footer-bottom {
  margin-top: -8px !important;
  padding-top: 0 !important;
}

.ei-footer-bottom:before {
  margin-bottom: 14px !important;
}

/* Keep the bottom links aligned and compact */
.ei-footer-bottom-inner {
  padding-top: 0 !important;
}


/* =========================================================
   Header/footer tuning from screenshots
   - Move centered mega menus slightly left
   - Header hover: no darker blue block, only white underline
   - Make Apply Now text larger
   - Shorten footer height
   - Add more spacing between right-footer parent link groups
   ========================================================= */

/* Mega menu was slightly too far right; nudge the centered dropdown left */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  left: calc(50% - 34px) !important;
  transform: translateX(-50%) !important;
}

/* Top blue navigation hover should not darken the whole blue block */
.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link {
  background: transparent !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: inset 0 -4px 0 #ffffff !important;
}

/* Keep the active/hover arrow black like Erikson.edu */
.ei-menu-item:hover > .ei-menu-link:after,
.ei-menu-item:focus-within > .ei-menu-link:after,
.ei-nav-item:hover > .ei-nav-link:after,
.ei-nav-item:focus-within > .ei-nav-link:after {
  border-top-color: #000000 !important;
}

/* Apply Now button text size closer to Erikson.edu */
.ei-apply,
.ei-apply-button,
a.ei-apply,
a.ei-apply-button {
  font-size: 14px !important;
  line-height: 16px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

/* Shorten the overall footer height while keeping its layout */
.ei-footer {
  min-height: calc(100vh - 70px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 145px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 145px) !important;
}

.ei-footer-left {
  padding-top: 44px !important;
  padding-bottom: 28px !important;
}

.ei-footer-right {
  padding-top: 34px !important;
  padding-bottom: 24px !important;
}

/* Pull legal links upward to remove the excess footer height/gap */
.ei-footer-bottom {
  margin-top: -26px !important;
  padding-top: 0 !important;
}

.ei-footer-bottom:before {
  margin-bottom: 12px !important;
}

.ei-footer-bottom-inner {
  padding-top: 0 !important;
  padding-bottom: 4px !important;
}

/* Add more vertical spacing between the parent link groups on right footer */
.ei-footer-right .ei-footer-col {
  margin-bottom: 48px !important;
}

.ei-footer-right .ei-footer-menu-grid > div:nth-child(3),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(4),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(5) {
  margin-top: 32px !important;
}

/* Keep social icons high after footer height changes */
.ei-footer-right .ei-social {
  top: 22px !important;
}


/* =========================================================
   Header/footer tuning v2
   - Move hover sub-navigation further left
   - Shorten footer more
   - Make Apply Now text larger
   - Increase vertical spacing between right-footer parent groups
   ========================================================= */

/* Move the mega-menu dropdown further left so it centers like erikson.edu */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  left: calc(50% - 72px) !important;
  transform: translateX(-50%) !important;
}

/* Larger Apply Now text */
.ei-apply,
.ei-apply-button,
a.ei-apply,
a.ei-apply-button {
  font-size: 15px !important;
  line-height: 17px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

/* Shorten the footer further */
.ei-footer {
  min-height: calc(100vh - 110px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 185px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 185px) !important;
}

.ei-footer-left {
  padding-top: 42px !important;
  padding-bottom: 18px !important;
}

.ei-footer-right {
  padding-top: 30px !important;
  padding-bottom: 16px !important;
}

/* Pull the legal area up to remove extra blue space */
.ei-footer-bottom {
  margin-top: -42px !important;
  padding-top: 0 !important;
}


.ei-footer-bottom-inner {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* More vertical space between parent link groups on the right side */
.ei-footer-right .ei-footer-col {
  margin-bottom: 60px !important;
}

.ei-footer-right .ei-footer-menu-grid > div:nth-child(3),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(4),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(5) {
  margin-top: 44px !important;
}


/* =========================================================
   Header/footer tuning v3
   - Add a little more space below bottom legal links
   - Reduce total footer height about 5px
   - Fade in top-nav hover underline/active state
   - Make mega menu wider and centered
   - Increase Apply Now font size
   ========================================================= */

/* Footer: slightly shorter overall but with a little more bottom breathing room */
.ei-footer {
  min-height: calc(100vh - 115px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 190px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 190px) !important;
}

.ei-footer-left {
  padding-bottom: 13px !important;
}

.ei-footer-right {
  padding-bottom: 11px !important;
}

/* Add more space between copyright/legal links and bottom of page */
.ei-footer-bottom-inner {
  padding-bottom: 10px !important;
}

/* Header hover: fade in like erikson.edu */
.ei-menu-link,
.ei-nav-link {
  transition: color .25s ease, box-shadow .35s ease, background-color .25s ease !important;
  box-shadow: inset 0 0 0 rgba(255,255,255,0) !important;
}

.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link {
  background: transparent !important;
  color: #ffffff !important;
  box-shadow: inset 0 -4px 0 #ffffff !important;
}

/* Mega menu fade-in */
.ei-menu-item .ei-mega,
.ei-nav-item .ei-mega {
  transition: opacity .28s ease, visibility .28s ease !important;
}

.ei-menu-item:hover > .ei-mega,
.ei-menu-item:focus-within > .ei-mega,
.ei-nav-item:hover > .ei-mega,
.ei-nav-item:focus-within > .ei-mega {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Wider and centered hover sub-navigation */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: min(1520px, calc(100vw - 70px)) !important;
  max-width: 1520px !important;
}

/* Keep menu content nicely inset inside the wider centered panel */
.ei-mega {
  padding-left: 52px !important;
  padding-right: 52px !important;
}

/* Apply Now button font larger */
.ei-apply,
.ei-apply-button,
a.ei-apply,
a.ei-apply-button {
  font-size: 16px !important;
  line-height: 18px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}


/* =========================================================
   Header + footer final match pass
   Source header/link structure matched to erikson.edu/request-information.
   - Make desktop mega menus use the mainbar/page as the positioning parent,
     so they are truly centered instead of shifted by the nav/logo area.
   - Improve Erikson header typography, hover fade, dropdown sizing.
   - Shorten footer 5px while adding bottom breathing room under copyright.
   ========================================================= */

/* ---------- Header layout / typography ---------- */
.ei-header {
  position: relative !important;
  z-index: 8000 !important;
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
}

.ei-topbar {
  height: 49px !important;
  min-height: 49px !important;
  background: #000000 !important;
}

.ei-topbar .ei-container {
  height: 49px !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding-left: 118px !important;
  padding-right: 118px !important;
  display: flex !important;
  align-items: center !important;
}

.ei-topbar .ei-top-links a,
.ei-topbar .ei-top-links a:link,
.ei-topbar .ei-top-links a:visited,
.ei-search-open {
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 12px !important;
  line-height: 49px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
}

.ei-search-open {
  letter-spacing: 5px !important;
  text-transform: uppercase !important;
}

.ei-mainbar {
  position: relative !important;
  height: 114px !important;
  min-height: 114px !important;
  background: #007eb7 !important;
  z-index: 8000 !important;
}

.ei-mainbar .ei-container {
  max-width: 1440px !important;
  height: 114px !important;
  margin: 0 auto !important;
  padding-left: 118px !important;
  padding-right: 118px !important;
  display: flex !important;
  align-items: stretch !important;
  position: static !important;
}

.ei-logo {
  min-width: 270px !important;
  height: 114px !important;
  display: flex !important;
  align-items: center !important;
}

.ei-logo img {
  width: 275px !important;
  max-width: 275px !important;
  height: auto !important;
}

.ei-nav,
.ei-menu {
  position: static !important;
}

.ei-nav {
  display: flex !important;
  align-items: stretch !important;
  flex: 1 1 auto !important;
  height: 114px !important;
}

.ei-menu {
  height: 114px !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: space-between !important;
  flex: 1 1 auto !important;
}

.ei-menu-item {
  position: static !important;
  display: flex !important;
  align-items: stretch !important;
}

/* main nav links: Erikson style, no dark hover block */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited {
  height: 114px !important;
  min-width: 142px !important;
  padding: 0 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 20px !important;
  font-weight: 700 !important;
  letter-spacing: -0.2px !important;
  color: #ffffff !important;
  text-align: center !important;
  text-decoration: none !important;
  background: transparent !important;
  box-shadow: inset 0 0 0 rgba(255,255,255,0) !important;
  transition: color .25s ease, box-shadow .35s ease, background-color .25s ease !important;
}

.ei-menu-link:after {
  content: "" !important;
  display: block !important;
  width: 0 !important;
  height: 0 !important;
  margin-top: 13px !important;
  border-left: 4px solid transparent !important;
  border-right: 4px solid transparent !important;
  border-top: 5px solid #000000 !important;
  transition: border-color .25s ease !important;
}

.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link {
  color: #ffffff !important;
  background: transparent !important;
  box-shadow: inset 0 -4px 0 #ffffff !important;
}

.ei-menu-item:hover > .ei-menu-link:after,
.ei-menu-item:focus-within > .ei-menu-link:after {
  border-top-color: #000000 !important;
}

/* Apply Now: larger, closer to erikson.edu */
.ei-apply,
.ei-apply:link,
.ei-apply:visited {
  align-self: center !important;
  min-width: 142px !important;
  height: 42px !important;
  margin-left: 28px !important;
  padding: 0 21px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  font-family: "Gotham A", "Gotham B", sans-serif !important;
  font-size: 17px !important;
  line-height: 18px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  color: #000000 !important;
  text-decoration: none !important;
  background: linear-gradient(to right, #000000 50%, var(--ei-yellow) 50%) right bottom / 200% 100% no-repeat !important;
  border-radius: 4px !important;
  transition: background-position .45s ease, color .25s ease !important;
}

.ei-apply:hover,
.ei-apply:focus {
  background-position: left bottom !important;
  color: #ffffff !important;
}

/* ---------- Mega menu positioning / behavior ---------- */
/* Hide without display:none so opacity transition can fade in smoothly. */
.ei-menu-item > .ei-mega {
  display: grid !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  top: 114px !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: min(1445px, calc(100vw - 150px)) !important;
  max-width: 1445px !important;
  min-height: 304px !important;
  margin: 0 !important;
  padding: 40px 50px 54px !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
  color: #000000 !important;
  border-top: 4px solid var(--ei-yellow) !important;
  box-shadow: 0 25px 38px rgba(0,0,0,.22) !important;
  z-index: 9999 !important;
  transition: opacity .28s ease, visibility .28s ease !important;
}

.ei-menu-item:hover > .ei-mega,
.ei-menu-item:focus-within > .ei-mega {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* transparent bridge so the hover does not drop when moving into the menu */
.ei-menu-item > .ei-mega:before {
  content: '' !important;
  position: absolute !important;
  top: -14px !important;
  left: 0 !important;
  right: 0 !important;
  height: 14px !important;
  background: transparent !important;
}

.ei-mega-admissions {
  grid-template-columns: 1.08fr 1.14fr 1.05fr 1fr !important;
  column-gap: 58px !important;
}

.ei-mega-academics {
  grid-template-columns: 1fr 1fr !important;
  column-gap: 108px !important;
}

.ei-mega-community,
.ei-mega-policy {
  grid-template-columns: 1fr 1fr !important;
  column-gap: 90px !important;
}

.ei-mega-about {
  grid-template-columns: 1fr 1fr 1fr !important;
  column-gap: 72px !important;
}

/* Mega-menu typography and link behavior */
.ei-mega h3 {
  margin: 0 0 22px 0 !important;
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 21px !important;
  line-height: 26px !important;
  font-weight: 700 !important;
  letter-spacing: .03em !important;
  color: #000000 !important;
}

.ei-mega h3 a {
  color: #000000 !important;
  font: inherit !important;
  text-decoration: none !important;
}

.ei-mega h3:before {
  content: '▌' !important;
  color: var(--ei-yellow) !important;
  margin-right: 8px !important;
  font-size: 20px !important;
  line-height: 1 !important;
}

.ei-mega h3 a:after {
  content: ' ›' !important;
  color: #000000 !important;
}

.ei-mega ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ei-mega li {
  margin: 0 0 15px 0 !important;
  padding: 0 !important;
}

.ei-mega a,
.ei-mega a:link,
.ei-mega a:visited {
  color: #000000 !important;
  font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 20px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  background-image: linear-gradient(var(--ei-yellow), var(--ei-yellow)) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  transition: background-size .25s ease !important;
}

.ei-mega a:after {
  content: ' ›' !important;
  color: var(--ei-yellow) !important;
}

.ei-mega a:hover,
.ei-mega a:focus {
  color: #000000 !important;
  background-size: 100% 2px !important;
}

.ei-mega .ei-mega-sub {
  position: relative !important;
  margin-left: 17px !important;
  margin-bottom: 12px !important;
}

.ei-mega .ei-mega-sub:before {
  content: '·' !important;
  position: absolute !important;
  left: -13px !important;
  top: 0 !important;
  color: var(--ei-yellow) !important;
  font-weight: 900 !important;
}

.ei-mega .ei-mega-sub a {
  font-weight: 500 !important;
}

/* ---------- Footer height/bottom spacing adjustment ---------- */
/* Shorten whole footer another 5px, but preserve extra breathing room below copyright. */
.ei-footer {
  min-height: calc(100vh - 120px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 195px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 195px) !important;
}

.ei-footer-left {
  padding-bottom: 8px !important;
}

.ei-footer-right {
  padding-bottom: 6px !important;
}

.ei-footer-bottom {
  margin-top: -50px !important;
  padding-top: 0 !important;
}

.ei-footer-bottom-inner {
  padding-bottom: 18px !important;
}

.ei-footer-bottom:before {
  margin-bottom: 10px !important;
}


/* =========================================================
   Header/footer final tuning v2
   - Shorten entire footer about 3px
   - Double the space below copyright
   - Make top black bar slightly taller
   - Widen top navigation/header content across page
   - Reduce Apply Now text size
   - Move right footer link groups down slightly, not social icons
   ========================================================= */

/* Top black utility bar: a little taller */
.ei-topbar {
  height: 54px !important;
  min-height: 54px !important;
}

.ei-topbar .ei-container {
  height: 54px !important;
  line-height: 54px !important;
}

/* Widen header/nav layout closer to erikson.edu */
.ei-topbar .ei-container,
.ei-mainbar .ei-container {
  max-width: 1540px !important;
  padding-left: 86px !important;
  padding-right: 86px !important;
}

.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited {
  min-width: 154px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* Apply Now text was too large; bring it back closer to erikson.edu */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  font-size: 14px !important;
  line-height: 16px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

/* Shorten the full footer container about 3px */
.ei-footer {
  min-height: calc(100vh - 123px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 198px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 198px) !important;
}

.ei-footer-left {
  padding-bottom: 5px !important;
}

.ei-footer-right {
  padding-bottom: 3px !important;
}

/* Add more space below the copyright/bottom links */
.ei-footer-bottom-inner {
  padding-bottom: 36px !important;
}

/* Move only the right footer link groups down a little; do not move the social icons */
.ei-footer-right .ei-footer-menu-grid {
  padding-top: 10px !important;
}



/* =========================================================
   Header/footer final tuning v3
   - Shorten entire footer by 1px
   - Move right-footer link groups down a little more, not social icons
   - Add 1px height to the top black bar
   - Widen top navigation content further across the page
   ========================================================= */

/* Top black utility bar: +1px height */
.ei-topbar {
  height: 55px !important;
  min-height: 55px !important;
}

.ei-topbar .ei-container {
  height: 55px !important;
  line-height: 55px !important;
}

/* Widen the header/navigation content more like erikson.edu */
.ei-topbar .ei-container,
.ei-mainbar .ei-container {
  max-width: 1600px !important;
  padding-left: 64px !important;
  padding-right: 64px !important;
}

/* Let the main nav occupy a bit more horizontal room */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited {
  min-width: 160px !important;
  padding-left: 26px !important;
  padding-right: 26px !important;
}

/* Keep Apply Now size from previous version; explicitly preserve it */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  font-size: 14px !important;
  line-height: 16px !important;
  font-weight: 900 !important;
}

/* Shorten the full footer container by about 1px */
.ei-footer {
  min-height: calc(100vh - 124px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 199px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 199px) !important;
}

.ei-footer-left {
  padding-bottom: 4px !important;
}

.ei-footer-right {
  padding-bottom: 2px !important;
}

/* Move only the right-footer link groups down a little more; social icons stay fixed */
.ei-footer-right .ei-footer-menu-grid {
  padding-top: 16px !important;
}



/* =========================================================
   Header/footer final tuning v4
   - Restore smooth fade transition on main sub-navigation hover
   - Shorten entire footer by 1px
   - Move right-footer link groups down more, not social icons
   - Add 2px height to black top bar
   - Add 2px height to blue main navigation bar
   - Widen header/navigation content further across page
   ========================================================= */

/* Top black utility bar: +2px from previous version */
.ei-topbar {
  height: 57px !important;
  min-height: 57px !important;
}

.ei-topbar .ei-container {
  height: 57px !important;
  line-height: 57px !important;
}

/* Blue navigation bar: +2px height */
.ei-mainbar,
.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-logo {
  height: 116px !important;
  min-height: 116px !important;
}

/* Widen the header/navigation content more like erikson.edu */
.ei-topbar .ei-container,
.ei-mainbar .ei-container {
  max-width: 1680px !important;
  padding-left: 42px !important;
  padding-right: 42px !important;
}

.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited {
  min-width: 166px !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
}

/* Keep Apply Now font size from the approved version */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  font-size: 14px !important;
  line-height: 16px !important;
  font-weight: 900 !important;
}

/* Restore real fade-in on main sub navigation.
   Do not use display:none, because it prevents the opacity transition. */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  display: grid !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  top: 116px !important;
  transition:
    opacity 0.32s ease,
    visibility 0s linear 0.32s !important;
}

.ei-menu-item:hover > .ei-mega,
.ei-menu-item:focus-within > .ei-mega,
.ei-nav-item:hover > .ei-mega,
.ei-nav-item:focus-within > .ei-mega {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transition:
    opacity 0.32s ease,
    visibility 0s linear 0s !important;
}

/* Keep the white underline hover fade on the blue nav itself */
.ei-menu-link,
.ei-nav-link {
  transition: color .25s ease, box-shadow .35s ease, background-color .25s ease !important;
}

/* Shorten the full footer container by about 1px */
.ei-footer {
  min-height: calc(100vh - 125px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 200px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 200px) !important;
}

.ei-footer-left {
  padding-bottom: 3px !important;
}

.ei-footer-right {
  padding-bottom: 1px !important;
}

/* Move only the right-footer link groups down more; social icons stay fixed */
.ei-footer-right .ei-footer-menu-grid {
  padding-top: 23px !important;
}



/* =========================================================
   Header/footer final tuning v5
   - Slightly longer sub-navigation fade
   - Blue main nav +3px height
   - Move right-footer link groups down more, not social icons
   - Shorten entire footer by 1px
   - Slightly larger/heavier black-bar and blue-bar nav text
   - Fix Candid badge text formatting
   ========================================================= */

/* Slightly longer fade-in/out for the main sub-navigation */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  transition:
    opacity 0.42s ease,
    visibility 0s linear 0.42s !important;
}

.ei-menu-item:hover > .ei-mega,
.ei-menu-item:focus-within > .ei-mega,
.ei-nav-item:hover > .ei-mega,
.ei-nav-item:focus-within > .ei-mega {
  transition:
    opacity 0.42s ease,
    visibility 0s linear 0s !important;
}

/* Blue navigation bar: +3px height from the last version */
.ei-mainbar,
.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-logo {
  height: 119px !important;
  min-height: 119px !important;
}

/* Keep the dropdown attached directly below the taller blue nav */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 119px !important;
}

/* Slightly larger and heavier main blue nav text */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  font-size: 18px !important;
  line-height: 21px !important;
  font-weight: 800 !important;
}

/* Slightly larger and heavier black top-bar text */
.ei-topbar .ei-top-links a,
.ei-topbar .ei-top-links a:link,
.ei-topbar .ei-top-links a:visited,
.ei-search-open {
  font-size: 13px !important;
  font-weight: 800 !important;
}

/* Move only the right-footer link groups down a little more; social icons stay fixed */
.ei-footer-right .ei-footer-menu-grid {
  padding-top: 31px !important;
}


/* Shorten the full footer container by about 1px */
.ei-footer {
  min-height: calc(100vh - 126px) !important;
}

.ei-footer-grid {
  min-height: calc(100vh - 201px) !important;
}

.ei-footer-left,
.ei-footer-right {
  min-height: calc(100vh - 201px) !important;
}

.ei-footer-left {
  padding-bottom: 2px !important;
}

.ei-footer-right {
  padding-bottom: 0 !important;
}

/* Fix the Platinum / Transparency / 2026 / Candid badge text */
.ei-candid {
  width: 98px !important;
  height: 98px !important;
  padding: 7px !important;
  background: #ffffff !important;
  border: 4px solid #9cc4d9 !important;
  box-shadow: inset 0 0 0 2px #d8e7ef !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  color: #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  text-align: left !important;
}

.ei-candid-inner,
.ei-candid > div {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  padding: 1px 0 0 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
  color: #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  text-align: left !important;
}

.ei-candid span,
.ei-candid p,
.ei-candid .ei-candid-text,
.ei-candid .candid-text {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 11px !important;
  line-height: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}

.ei-candid strong,
.ei-candid b,
.ei-candid .candid-brand {
  display: block !important;
  margin: 1px 0 0 0 !important;
  padding: 0 !important;
  color: #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}


/* =========================================================
   Header/footer final tuning v6
   - Make sub-navigation fade just a little longer
   - Add another 3px height to the blue navigation bar
   - Move right-footer link groups down a little more, not social icons
   - Reduce top nav link weight slightly
   ========================================================= */

/* Slightly longer fade-in/out for main sub-navigation */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  transition:
    opacity 0.52s ease,
    visibility 0s linear 0.52s !important;
}

.ei-menu-item:hover > .ei-mega,
.ei-menu-item:focus-within > .ei-mega,
.ei-nav-item:hover > .ei-mega,
.ei-nav-item:focus-within > .ei-mega {
  transition:
    opacity 0.52s ease,
    visibility 0s linear 0s !important;
}

/* Blue navigation bar: another +3px height */
.ei-mainbar,
.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-logo {
  height: 122px !important;
  min-height: 122px !important;
}

/* Keep the dropdown attached below the taller blue nav */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 122px !important;
}

/* Top navigation text weight was slightly too heavy; reduce a bit */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  font-weight: 760 !important;
}

/* Black top-bar text weight was slightly too heavy; reduce a bit */
.ei-topbar .ei-top-links a,
.ei-topbar .ei-top-links a:link,
.ei-topbar .ei-top-links a:visited,
.ei-search-open {
  font-weight: 760 !important;
}

/* Move only the right-footer link groups down a little more; social icons stay fixed */
.ei-footer-right .ei-footer-menu-grid {
  padding-top: 38px !important;
}

.ei-footer-right .ei-social {
  top: 22px !important;
}


/* =========================================================
   Header/footer final tuning v7
   - Fix Candid badge text stack
   - Narrow top navigation content just a hair
   - Better vertical centering of blue nav logo/links
   - Add dotted background to main content
   - Move left-footer content slightly
   - Add a little more copyright bottom space
   - Add subtle letter spacing to top navigation text
   ========================================================= */

/* Top navigation content: slightly less wide than prior pass */
.ei-topbar .ei-container,
.ei-mainbar .ei-container {
  max-width: 1640px !important;
  padding-left: 54px !important;
  padding-right: 54px !important;
}

/* Blue nav: improve vertical center alignment of logo, links, and button */
.ei-mainbar,
.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-logo {
  height: 122px !important;
  min-height: 122px !important;
}

.ei-mainbar .ei-container {
  align-items: center !important;
}

.ei-logo {
  display: flex !important;
  align-items: center !important;
}

.ei-nav {
  align-items: center !important;
}

.ei-menu {
  align-items: center !important;
}

.ei-menu-item {
  align-items: center !important;
}

.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited {
  height: 122px !important;
  min-height: 122px !important;
  align-items: center !important;
  justify-content: center !important;
  padding-top: 2px !important;
  letter-spacing: 0.012em !important;
}

/* Add subtle letter spacing in the black top bar too */
.ei-topbar .ei-top-links a,
.ei-topbar .ei-top-links a:link,
.ei-topbar .ei-top-links a:visited,
.ei-search-open {
  letter-spacing: 0.018em !important;
}

/* Keep approved top-link weight from v6 */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited,
.ei-topbar .ei-top-links a,
.ei-topbar .ei-top-links a:link,
.ei-topbar .ei-top-links a:visited,
.ei-search-open {
  font-weight: 760 !important;
}

/* Ensure dropdown stays attached below the vertically centered/taller nav */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 122px !important;
}

/* Add Erikson-style dotted background to the main content area */
#main-content,
.ei-site-content,
#slate-root {
  background-color: #ffffff !important;
  background-image: radial-gradient(circle, rgba(0, 126, 183, 0.22) 1px, transparent 1.2px) !important;
  background-size: 18px 18px !important;
  background-position: 0 0 !important;
}

/* Keep inner Slate content readable on top of the dotted pattern */
#main-content > *,
.ei-site-content > *,
#slate-root > * {
  position: relative !important;
}

/* Move left-footer content just a little */
.ei-footer-left {
  padding-left: 7px !important;
  padding-top: 2px !important;
}

/* Add a little more breathing room below copyright */
.ei-footer-bottom-inner {
  padding-bottom: 42px !important;
}

/* Candid badge text: stacked and contained */
.ei-candid {
  width: 104px !important;
  height: 115px !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  background: #ffffff !important;
  border: 4px solid #9cc4d9 !important;
  box-shadow: inset 0 0 0 2px #d8e7ef !important;
  padding: 8px 7px 7px 7px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
}

.ei-candid-inner {
  width: 100% !important;
  height: 100% !important;
  display: grid !important;
  grid-template-rows: auto auto auto 1fr !important;
  align-content: space-between !important;
  justify-items: start !important;
  background: #ffffff !important;
  color: #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  text-align: left !important;
  box-sizing: border-box !important;
}

.ei-candid-inner span {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 11px !important;
  line-height: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  white-space: nowrap !important;
}

.ei-candid-inner strong {
  align-self: end !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  white-space: nowrap !important;
}

/* Remove pseudo/content conflicts from older Candid overrides */
.ei-candid:before,
.ei-candid:after,
.ei-candid-inner:before,
.ei-candid-inner:after {
  content: none !important;
  display: none !important;
}


/* =========================================================
   Header/footer final tuning v8
   - Undo left-footer horizontal move; move left content slightly down instead
   - Move right-footer link column left slightly
   - Move social icons up slightly
   - Widen top navigation content back out a little
   - Move logo up slightly and blue-nav links down slightly
   - Force Erikson-style dotted background to show in main content
   ========================================================= */

/* Widen top navigation content back out a little from v7 */
.ei-topbar .ei-container,
.ei-mainbar .ei-container {
  max-width: 1665px !important;
  padding-left: 46px !important;
  padding-right: 46px !important;
}

/* Logo was a little too low; move only logo up */
.ei-logo,
.ei-logo:link,
.ei-logo:visited {
  transform: translateY(-3px) !important;
}

/* Blue navigation links need to sit slightly lower than logo */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  transform: translateY(3px) !important;
}

/* Keep the Apply Now button vertically balanced with the nav */
.ei-apply,
.ei-apply:link,
.ei-apply:visited {
  transform: translateY(2px) !important;
}

/* Undo the left-footer move from v7; move the content down instead of left */
.ei-footer-left {
  padding-left: 0 !important;
  transform: translateY(5px) !important;
}

/* Move only the right footer link groups left slightly */
.ei-footer-right .ei-footer-menu-grid {
  transform: translateX(-10px) !important;
  padding-top: 38px !important;
}

/* Move social media icons up slightly, independent of the link groups */
.ei-footer-right .ei-social {
  top: 16px !important;
  transform: none !important;
}

/* Force dotted background to show across the main Slate content area */
body,
#main-content,
.ei-site-content,
#slate-root,
#content,
#content_body,
#form_page,
div[id*="content"],
div[class*="content"] {
  background-color: #ffffff !important;
}

#main-content,
.ei-site-content,
#slate-root,
#content,
#content_body,
#form_page {
  background-image:
    radial-gradient(circle, rgba(0, 126, 183, 0.32) 1.25px, transparent 1.35px) !important;
  background-size: 18px 18px !important;
  background-position: 0 0 !important;
  background-repeat: repeat !important;
}

/* If Slate inner panels have a white background, let the dotted section show behind them */
#main-content > div,
.ei-site-content > div,
#slate-root > div {
  background-color: transparent !important;
}

/* Put actual form/content cards back on white so text remains readable */
#main-content form,
#main-content table,
#main-content .form_container,
#main-content .form_page,
#main-content .content,
#slate-root form,
#slate-root table,
#slate-root .form_container,
#slate-root .form_page,
#slate-root .content {
  background-color: #ffffff !important;
}


/* =========================================================
   Header/footer final tuning v9
   - Restore footer left/right positioning from before the last pass
   - Keep corrected top nav width/logo position
   - Move blue nav links slightly down/right
   - Remove lighter blue edge panels in top blue nav
   - Make hover dropdown span from logo left to Apply Now right
   - Re-tune footer blue shades closer to erikson.edu
   - Rework dotted background to match erikson.edu more closely
   ========================================================= */

/* Restore footer left side: undo the last horizontal/down transform */
.ei-footer-left {
  padding-left: 0 !important;
  transform: none !important;
}

/* Restore right-footer links/social from before the last pass */
.ei-footer-right .ei-footer-menu-grid {
  transform: none !important;
  padding-top: 38px !important;
}

.ei-footer-right .ei-social {
  top: 22px !important;
  transform: none !important;
}

/* Keep the current corrected width, but make sure all blue nav surfaces use one solid color */
.ei-header,
.ei-mainbar,
.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-item,
.ei-logo {
  background-color: #007eb7 !important;
  background-image: none !important;
}

/* Remove any edge overlays/alternate blue panels */
.ei-mainbar:before,
.ei-mainbar:after,
.ei-mainbar .ei-container:before,
.ei-mainbar .ei-container:after,
.ei-nav:before,
.ei-nav:after {
  background: transparent !important;
  background-image: none !important;
  content: none !important;
  display: none !important;
}

/* Move only the blue nav links slightly down and right; leave logo where it is */
.ei-menu {
  transform: translateX(10px) !important;
}

.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  transform: translateY(5px) !important;
}

/* Keep Apply Now visually aligned after shifting links */
.ei-apply,
.ei-apply:link,
.ei-apply:visited {
  transform: translateY(3px) !important;
}

/* Hover dropdown should span from the logo left edge to the Apply Now right edge */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(1488px, calc(100vw - 108px)) !important;
  max-width: 1488px !important;
  padding-left: 50px !important;
  padding-right: 50px !important;
}

/* Footer blue shade tuning closer to erikson.edu */
.ei-footer {
  background-color: #007eb7 !important;
  background-image: none !important;
}

.ei-footer-left {
  background-color: #0b83bb !important;
}

.ei-footer-right {
  background-color: #057fb5 !important;
}


/* Dotted background: use Erikson-style light gray large dots, not small blue dots */
body {
  background-color: #ffffff !important;
}

#main-content,
.ei-site-content,
#slate-root {
  background-color: #ffffff !important;
  background-image:
    radial-gradient(circle, rgba(0,0,0,0.055) 0 12px, transparent 13px) !important;
  background-size: 39px 39px !important;
  background-position: 0 0 !important;
  background-repeat: repeat !important;
}

/* Keep the actual Slate application content readable in the center while dots show around it */
#main-content > div,
.ei-site-content > div,
#slate-root > div {
  background-color: transparent !important;
}

#main-content form,
#main-content table,
#main-content .form_container,
#main-content .form_page,
#main-content .content,
#main-content .portal,
#main-content .page,
#slate-root form,
#slate-root table,
#slate-root .form_container,
#slate-root .form_page,
#slate-root .content,
#slate-root .portal,
#slate-root .page {
  background-color: #ffffff !important;
}

/* Avoid applying dotted background inside footer */
.ei-footer,
.ei-footer * {
  background-image: none !important;
}


/* =========================================================
   Header/footer final tuning v10
   - Move blue nav text slightly down/right
   - Extend mega menu further left to the logo edge while keeping right edge
   - Remove stray blue line under Search in black top bar
   - Move social icons up slightly
   - Restore left-footer alignment
   - Darken footer blues closer to erikson.edu
   - Rebuild dotted background closer to erikson.edu
   ========================================================= */

/* Move only the blue navigation link text slightly down and right */
.ei-menu {
  transform: translateX(16px) !important;
}

.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  transform: translate(6px, 8px) !important;
}

/* Keep Apply Now balanced after the nav text shift */
.ei-apply,
.ei-apply:link,
.ei-apply:visited {
  transform: translateY(3px) !important;
}

/* Mega menu: keep right side, extend left side closer to logo left */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  left: calc(50% - 42px) !important;
  width: min(1572px, calc(100vw - 24px)) !important;
  max-width: 1572px !important;
  transform: translateX(-50%) !important;
}

/* Remove the stray blue underline/line under Search in the black top bar */
.ei-topbar,
.ei-topbar .ei-container,
.ei-search-open,
.ei-search-open:hover,
.ei-search-open:focus {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  background-image: none !important;
}

.ei-search-open:before,
.ei-search-open:after {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.ei-topbar:before,
.ei-topbar:after,
.ei-topbar .ei-container:before,
.ei-topbar .ei-container:after {
  content: none !important;
  display: none !important;
}

/* Move social media icons on the right footer up slightly */
.ei-footer-right .ei-social {
  top: 14px !important;
  transform: none !important;
}

/* Restore left-footer content alignment back to the original inset */
.ei-footer-left {
  transform: none !important;
  padding-left: 136px !important;
  padding-top: 58px !important;
  box-sizing: border-box !important;
}

.ei-footer-left > *,
.ei-footer-left .ei-footer-left-inner {
  margin-left: 0 !important;
  transform: none !important;
}

/* Footer blues: slightly darker and closer to erikson.edu */
.ei-footer {
  background-color: #007caf !important;
  background-image: none !important;
}

.ei-footer-left {
  background-color: #0a82b8 !important;
}

.ei-footer-right {
  background-color: #007caf !important;
}

.ei-footer-bottom,
.ei-footer-bottom-inner {
  background-color: transparent !important;
}

/* Dotted background: softer gray large dots like erikson.edu */
body,
#main-content,
.ei-site-content,
#slate-root {
  background-color: #ffffff !important;
}

#main-content,
.ei-site-content,
#slate-root {
  background-image:
    radial-gradient(circle at center, rgba(0, 0, 0, 0.055) 0 14px, transparent 14.5px) !important;
  background-size: 38px 38px !important;
  background-position: -1px -1px !important;
  background-repeat: repeat !important;
}

/* Keep the center application area white; leave only page margins dotted */
#main-content > div,
.ei-site-content > div,
#slate-root > div {
  background-color: transparent !important;
}

#main-content form,
#main-content table,
#main-content .form_container,
#main-content .form_page,
#main-content .content,
#main-content .portal,
#main-content .page,
#main-content .application,
#slate-root form,
#slate-root table,
#slate-root .form_container,
#slate-root .form_page,
#slate-root .content,
#slate-root .portal,
#slate-root .page,
#slate-root .application {
  background-color: #ffffff !important;
}

/* Never apply the dot pattern inside the header/footer */
.ei-header,
.ei-header *,
.ei-footer,
.ei-footer * {
  background-image: none !important;
}


/* =========================================================
   Header/footer final tuning v11
   - Darken footer blue shades slightly
   - Move left-footer content right slightly
   - Left-align Candid. in badge
   - Refine blue-nav link font spacing/weight
   - Reduce Apply Now weight slightly
   - Remove Search underline/blue line
   - Improve Search letter spacing
   - Add Erikson-style dotted background with downward fade
   ========================================================= */

/* Darker footer blues closer to erikson.edu */
.ei-footer {
  background-color: #0077aa !important;
  background-image: none !important;
}

.ei-footer-left {
  background-color: #087db4 !important;
}

.ei-footer-right {
  background-color: #0077aa !important;
}

/* Move left-footer content just slightly right */
.ei-footer-left {
  padding-left: 146px !important;
}

/* Left-justify the Candid brand text */
.ei-candid,
.ei-candid-inner,
.ei-candid-inner strong,
.ei-candid strong,
.ei-candid b {
  text-align: left !important;
  justify-content: flex-start !important;
  justify-items: start !important;
  align-items: flex-start !important;
}

.ei-candid-inner strong,
.ei-candid strong,
.ei-candid b {
  align-self: start !important;
  margin-left: 0 !important;
}

/* Refine blue navigation typography/spacing */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  font-size: 17px !important;
  line-height: 20px !important;
  font-weight: 740 !important;
  letter-spacing: 0.006em !important;
  transform: translate(8px, 8px) !important;
}

/* Reduce Apply Now weight just a bit */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  font-size: 14px !important;
  line-height: 16px !important;
  font-weight: 820 !important;
  letter-spacing: 0.01em !important;
}

/* Remove any remaining blue line under Search/top-left black bar */
.ei-topbar,
.ei-topbar *,
.ei-search-open,
.ei-search-open:hover,
.ei-search-open:focus,
.ei-search-open:active {
  border-bottom-color: transparent !important;
  text-decoration: none !important;
  box-shadow: none !important;
  outline: none !important;
}

.ei-search-open {
  border: 0 !important;
  background: transparent !important;
  background-image: none !important;
  letter-spacing: 5.5px !important;
  text-transform: uppercase !important;
}

.ei-search-open:hover,
.ei-search-open:focus {
  color: #ffffff !important;
  background: transparent !important;
  background-image: none !important;
  text-decoration: none !important;
}

.ei-search-open:before,
.ei-search-open:after,
.ei-topbar:before,
.ei-topbar:after {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Add a subtle white cover at the bottom of the black bar to mask old underline artifacts */
.ei-topbar {
  position: relative !important;
}

.ei-topbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -1px !important;
  height: 1px !important;
  background: #000000 !important;
  z-index: 5 !important;
}

/* Erikson-style dotted background with fade down the page.
   Overlay is non-interactive and sits over white content areas, but under readable content. */
#main-content,
.ei-site-content,
#slate-root {
  position: relative !important;
  background-color: #ffffff !important;
  overflow: hidden !important;
}

#main-content:before,
.ei-site-content:before,
#slate-root:before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 360px !important;
  pointer-events: none !important;
  z-index: 0 !important;
  background-image:
    linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.55) 62%, #ffffff 100%),
    radial-gradient(circle, rgba(0,0,0,0.07) 0 13px, transparent 13.5px) !important;
  background-size: 100% 100%, 40px 40px !important;
  background-position: 0 0, 0 0 !important;
  background-repeat: no-repeat, repeat !important;
}

/* Ensure page content stays above the dotted overlay */
#main-content > *,
.ei-site-content > *,
#slate-root > * {
  position: relative !important;
  z-index: 1 !important;
}

/* Keep footer/header clear of the dotted pattern */
.ei-header,
.ei-header *,
.ei-footer,
.ei-footer * {
  background-image: none !important;
}


/* =========================================================
   Header-only tuning v12
   Footer preserved from v11.
   ========================================================= */

/* Search text spacing closer to erikson.edu */
.ei-search-open {
  letter-spacing: 4.4px !important;
  font-size: 13px !important;
  font-weight: 760 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  background: transparent !important;
  background-image: none !important;
  text-decoration: none !important;
}

/* Slightly increase only the right-side black-bar utility links */
.ei-topbar .ei-top-links a,
.ei-topbar .ei-top-links a:link,
.ei-topbar .ei-top-links a:visited {
  font-size: 13.4px !important;
  font-weight: 760 !important;
  letter-spacing: 0.012em !important;
}

/* Remove the stray blue line under Search */
.ei-topbar,
.ei-topbar .ei-container,
.ei-search-open,
.ei-search-open:hover,
.ei-search-open:focus,
.ei-search-open:active,
.ei-search-open *,
.ei-search-open *:hover,
.ei-search-open *:focus {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  text-decoration: none !important;
  background-image: none !important;
}

.ei-search-open:before,
.ei-search-open:after,
.ei-search-open i:before,
.ei-search-open i:after {
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

/* Mask any remaining artifact directly beneath Search only */
.ei-topbar .ei-container {
  position: relative !important;
}

.ei-topbar .ei-container:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -2px !important;
  width: 260px !important;
  height: 4px !important;
  background: #000000 !important;
  z-index: 50 !important;
  pointer-events: none !important;
}

/* Blue nav font: closer to Erikson's Gotham-style weight/spacing */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  font-family: "Gotham A", "Gotham B", "Montserrat", "Arial", sans-serif !important;
  font-size: 17px !important;
  line-height: 20px !important;
  font-weight: 700 !important;
  letter-spacing: -0.005em !important;
  transform: translate(8px, 8px) !important;
}

/* Move the small arrows up just a touch */
.ei-menu-link:after,
.ei-nav-link:after {
  margin-top: 8px !important;
}

/* Apply Now: tiny bit smaller text and tighter padding */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  font-size: 13.5px !important;
  line-height: 15px !important;
  font-weight: 800 !important;
  padding-left: 17px !important;
  padding-right: 17px !important;
  min-width: 132px !important;
  height: 40px !important;
}

/* Dotted background: fill the full content width, not only side gutters. */
#main-content,
.ei-site-content,
#slate-root {
  position: relative !important;
  background-color: #ffffff !important;
  background-image: none !important;
  overflow: hidden !important;
}

#main-content:before,
.ei-site-content:before,
#slate-root:before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  width: 100% !important;
  height: 430px !important;
  pointer-events: none !important;
  z-index: 1 !important;
  background-image:
    linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.15) 42%, rgba(255,255,255,0.78) 78%, #ffffff 100%),
    radial-gradient(circle, rgba(0,0,0,0.065) 0 13px, transparent 13.7px) !important;
  background-size: 100% 100%, 40px 40px !important;
  background-position: 0 0, 0 0 !important;
  background-repeat: no-repeat, repeat !important;
}

#main-content > *,
.ei-site-content > *,
#slate-root > * {
  position: relative !important;
  z-index: 2 !important;
}

/* Remove old side-only dot backgrounds from inner wrappers */
#main-content > div,
.ei-site-content > div,
#slate-root > div,
#content,
#content_body,
#form_page,
div[id*="content"],
div[class*="content"] {
  background-image: none !important;
}

#main-content form,
#slate-root form,
#main-content table,
#slate-root table {
  position: relative !important;
  z-index: 3 !important;
}

/* Do not allow the dotted pattern into header/footer */
.ei-header,
.ei-header *,
.ei-footer,
.ei-footer * {
  background-image: none !important;
}


/* =========================================================
   Header/main-content tuning v14
   Base restored to v12 because v13 broke the sub-navigation hover.
   - Restore working sublink hover/fade
   - Slightly decrease Apply Now font and make button narrower
   - Add tiny letter spacing to bottom-right footer links
   - Remove black mask/line protruding from Search area
   - Try dotted background as an overlay so Slate white panels do not hide it
   ========================================================= */

/* Restore working mega-menu hover and fade behavior */
.ei-header,
.ei-mainbar,
.ei-nav,
.ei-menu {
  position: relative !important;
  z-index: 10000 !important;
}

.ei-menu-item {
  position: static !important;
}

.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  display: grid !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition:
    opacity 0.52s ease,
    visibility 0s linear 0.52s !important;
  z-index: 10001 !important;
}

.ei-menu-item:hover > .ei-mega,
.ei-menu-item:focus-within > .ei-mega,
.ei-nav-item:hover > .ei-mega,
.ei-nav-item:focus-within > .ei-mega {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transition:
    opacity 0.52s ease,
    visibility 0s linear 0s !important;
}

/* Apply Now: keep the height, reduce font and width just a hair */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  height: 40px !important;
  font-size: 13px !important;
  line-height: 15px !important;
  min-width: 124px !important;
  padding-left: 13px !important;
  padding-right: 13px !important;
}

/* Bottom-right footer links: just a hair more letter spacing */
.ei-footer-right a,
.ei-footer-bottom a {
  letter-spacing: 0.012em !important;
}

/* Remove the previous black mask/line under Search */
.ei-topbar .ei-container:before,
.ei-topbar .ei-container:after,
.ei-topbar:before,
.ei-topbar:after,
.ei-search-open:before,
.ei-search-open:after {
  content: none !important;
  display: none !important;
}

.ei-search-open,
.ei-search-open:hover,
.ei-search-open:focus,
.ei-search-open:active,
.ei-search-open *,
.ei-search-open *:hover,
.ei-search-open *:focus {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  text-decoration: none !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* Keep the black bar itself clean */
.ei-topbar,
.ei-topbar .ei-container {
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  background-image: none !important;
}

/* Dotted background attempt #2:
   Put the dots as a non-clickable overlay across the full Slate content region,
   above white wrapper backgrounds but subtle enough to sit behind the text visually. */
#main-content,
.ei-site-content,
#slate-root {
  position: relative !important;
  background-color: #ffffff !important;
  overflow: hidden !important;
}

#main-content:after,
.ei-site-content:after,
#slate-root:after {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 430px !important;
  pointer-events: none !important;
  z-index: 2 !important;
  background-image:
    linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.18) 50%, rgba(255,255,255,0.78) 82%, #ffffff 100%),
    radial-gradient(circle, rgba(0,0,0,0.055) 0 13px, transparent 13.75px) !important;
  background-size: 100% 100%, 40px 40px !important;
  background-position: 0 0, 0 0 !important;
  background-repeat: no-repeat, repeat !important;
}

/* Keep core content above the dot overlay so fields/links remain usable */
#main-content > *,
.ei-site-content > *,
#slate-root > * {
  position: relative !important;
  z-index: 3 !important;
}

/* Make broad Slate page wrappers transparent when possible */
#content,
#content_body,
#form_page,
#main-content > div,
.ei-site-content > div,
#slate-root > div {
  background-image: none !important;
}

/* Keep header/footer clean and above everything */
.ei-header,
.ei-header * {
  z-index: auto;
}


.ei-footer,
.ei-footer * {
  background-image: none !important;
}


/* =========================================================
   Header/content/footer tuning v15
   - Remove blue Search line without black protrusion
   - Search icon/text hover yellow
   - Decrease Search letter spacing slightly
   - Add a touch more weight to blue nav links
   - Restore white underline on blue nav hover
   - Extend sub-menu hover a little farther left
   - Force dotted background above Slate white content with subtle overlay
   - Set footer blue backgrounds to requested colors
   ========================================================= */

/* Requested footer blue shades */
.ei-footer-left {
  background-color: #007ab8 !important;
}


.ei-footer {
  background-color: #0074b0 !important;
}

/* Clean black top bar and remove blue line under Search */
.ei-topbar,
.ei-topbar .ei-container {
  background-color: #000000 !important;
  background-image: none !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  position: relative !important;
}

/* Internal black cover line, contained inside the topbar only */
.ei-topbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 3px !important;
  background: #000000 !important;
  z-index: 20 !important;
  pointer-events: none !important;
}

.ei-search-open,
.ei-search-open:link,
.ei-search-open:visited {
  color: #ffffff !important;
  letter-spacing: 4.0px !important;
  text-decoration: none !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  background: transparent !important;
  background-image: none !important;
  transition: color .22s ease !important;
}

.ei-search-open i,
.ei-search-open:before {
  color: inherit !important;
  transition: color .22s ease !important;
}

.ei-search-open:hover,
.ei-search-open:focus,
.ei-search-open:hover i,
.ei-search-open:focus i,
.ei-search-open:hover:before,
.ei-search-open:focus:before {
  color: var(--ei-yellow) !important;
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  background: transparent !important;
  background-image: none !important;
}

.ei-search-open:after,
.ei-search-open i:after,
.ei-search-open i:before {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

/* Blue nav links: just a touch more weight */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  font-weight: 745 !important;
}

/* Restore white underline on blue main nav hover/focus */
.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link {
  background: transparent !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: inset 0 -4px 0 #ffffff !important;
}

/* Make underline fade in/out cleanly */
.ei-menu-link,
.ei-nav-link {
  transition: color .25s ease, box-shadow .35s ease, background-color .25s ease !important;
}

/* Stretch the mega menu slightly farther left */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  left: calc(50% - 74px) !important;
  width: min(1628px, calc(100vw - 10px)) !important;
  max-width: 1628px !important;
}

/* Dotted background attempt #3:
   Put a subtle non-clickable overlay ABOVE Slate's white wrappers so it cannot be hidden.
   The opacity is low and fades downward like erikson.edu. */
#main-content,
.ei-site-content,
#slate-root {
  position: relative !important;
  background-color: #ffffff !important;
  overflow: hidden !important;
}

#main-content:after,
.ei-site-content:after,
#slate-root:after {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 430px !important;
  pointer-events: none !important;
  z-index: 999 !important;
  opacity: .92 !important;
  background-image:
    linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,.12) 46%, rgba(255,255,255,.62) 78%, #ffffff 100%),
    radial-gradient(circle, rgba(0,0,0,.052) 0 13px, transparent 13.7px) !important;
  background-size: 100% 100%, 40px 40px !important;
  background-position: 0 0, 0 0 !important;
  background-repeat: no-repeat, repeat !important;
}

/* Keep header/footer/menus above the dot overlay */
.ei-header,
.ei-header *,
.ei-footer,
.ei-footer *,
.ei-mega,
.ei-mega * {
  background-image: none !important;
}

.ei-header {
  z-index: 10000 !important;
}

.ei-footer {
  position: relative !important;
  z-index: 2 !important;
}


/* =========================================================
   Header/footer/content tuning v16
   - Increase blue main-nav link font just a hair
   - Match bottom-right footer links to nonprofit text font
   - Reduce Search letter spacing slightly
   - Make dotted background dots larger and gradient begin earlier
   ========================================================= */

/* Blue main navigation links: just a hair larger */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  font-size: 17.5px !important;
  line-height: 20.5px !important;
  font-weight: 745 !important;
}

/* Search: decrease letter spacing just a hair */
.ei-search-open,
.ei-search-open:link,
.ei-search-open:visited {
  letter-spacing: 3.65px !important;
}

/* Bottom-right footer links: match the nonprofit text font treatment */
.ei-footer-bottom a,
.ei-footer-bottom a:link,
.ei-footer-bottom a:visited {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 15.5px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
  letter-spacing: 0.006em !important;
}

/* Keep the bottom legal/copyright text consistent */
.ei-footer-bottom,
.ei-footer-bottom p,
.ei-footer-bottom li {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 15.5px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
}

/* Dotted background: larger dots, and gradient fade starts earlier */
#main-content:after,
.ei-site-content:after,
#slate-root:after {
  height: 430px !important;
  opacity: .94 !important;
  background-image:
    linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,.34) 34%, rgba(255,255,255,.78) 66%, #ffffff 100%),
    radial-gradient(circle, rgba(0,0,0,.052) 0 15px, transparent 15.7px) !important;
  background-size: 100% 100%, 44px 44px !important;
  background-position: 0 0, -2px -2px !important;
  background-repeat: no-repeat, repeat !important;
}


/* =========================================================
   Restored background-dot version + re-applied final header/footer changes
   ========================================================= */

/* Add 2px to the bottom of the top black bar without moving its content */
.ei-topbar {
  height: 55px !important;
  min-height: 55px !important;
  padding-bottom: 2px !important;
  box-sizing: border-box !important;
  background: #000000 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: inset 0 -2px 0 #000000 !important;
  overflow: hidden !important;
}


/* Hide the small blue seam under Search/top bar without adding visible black overflow */
.ei-topbar:after,
.ei-topbar .ei-container:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 3px !important;
  background: #000000 !important;
  z-index: 50000 !important;
  pointer-events: none !important;
}

.ei-search-open,
.ei-search-open:hover,
.ei-search-open:focus,
.ei-search-open:active,
.ei-search-open *,
.ei-search-open *:before,
.ei-search-open *:after {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  background-image: none !important;
  text-decoration: none !important;
}

.ei-search-open:hover,
.ei-search-open:focus,
.ei-search-open:hover i,
.ei-search-open:focus i {
  color: var(--ei-yellow) !important;
}

/* Blue top navigation: font face/weight and white hover line */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 17.75px !important;
  line-height: 21px !important;
  font-weight: 780 !important;
  letter-spacing: 0 !important;
  box-shadow: inset 0 0 0 rgba(255,255,255,0) !important;
  transition: color .25s ease, box-shadow .35s ease, background-color .25s ease !important;
}


/* Apply Now button: final width, shadow, icon direction */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  height: 40px !important;
  min-width: 118px !important;
  padding-left: 11px !important;
  padding-right: 11px !important;
  font-size: 13px !important;
  line-height: 15px !important;
  font-weight: 800 !important;
  box-shadow: 0 6px 14px rgba(0,0,0,.28) !important;
}

.ei-apply i,
.ei-apply-button i,
.ei-apply .fa,
.ei-apply-button .fa,
.ei-apply .fa-pencil-alt,
.ei-apply-button .fa-pencil-alt {
  display: inline-block !important;
  transform: scaleX(-1) !important;
  transform-origin: center center !important;
}

/* Official Candid image badge and HLC iframe badge */
.ei-accreditation-row {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin: 0 0 20px 0 !important;
}

.ei-candid-image {
  width: 104px !important;
  height: 115px !important;
  flex: 0 0 104px !important;
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  overflow: hidden !important;
  text-decoration: none !important;
}

.ei-candid-image img {
  width: 100% !important;
  height: auto !important;
  max-height: 100% !important;
  object-fit: contain !important;
  display: block !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.ei-hlc-seal {
  width: 104px !important;
  height: 115px !important;
  flex: 0 0 104px !important;
  display: block !important;
  background: transparent !important;
  overflow: hidden !important;
  text-decoration: none !important;
}

.ei-hlc-iframe-wrap {
  width: 104px !important;
  height: 115px !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

.ei-hlc-iframe-wrap iframe {
  width: 104px !important;
  height: 115px !important;
  border: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

/* Move the footer container up by 2px at the top */
.ei-footer {
  margin-top: -2px !important;
}

/* Keep footer colors from the final version */
.ei-footer-left,
.ei-footer-grid,
.ei-footer {
  background-color: #007ab8 !important;
}

.ei-footer-right {
  background-color: #0074b0 !important;
}

/* Re-apply right-footer column positioning without moving social icons */
.ei-footer-right .ei-footer-menu-grid,
.ei-footer-bottom,
.ei-footer-bottom-inner {
  transform: none !important;
}

.ei-footer-right .ei-social,
.ei-footer-right .ei-social ul,
.ei-footer-right .ei-social li,
.ei-footer-right .ei-social a {
  top: 0 !important;
  right: auto !important;
  left: auto !important;
  margin-top: 0 !important;
  transform: none !important;
}

.ei-footer-right .ei-footer-menu-grid > div:nth-child(1),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(3),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(5) {
  transform: translateX(2px) !important;
}

.ei-footer-right .ei-footer-menu-grid > div:nth-child(2),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(4),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(6) {
  transform: translateX(-5px) !important;
}

/* Keep nonprofit line one line higher */
.ei-nonprofit {
  transform: translateY(-20px) !important;
  margin-top: -2px !important;
  margin-bottom: -20px !important;
}

/* Slower Sign Me Up hover-to-black animation */
.ei-newsletter-form button,
.ei-newsletter-form button:link,
.ei-newsletter-form button:visited {
  transition:
    background-position .75s ease,
    background-color .75s ease,
    color .35s ease,
    box-shadow .35s ease !important;
}

.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus {
  transition:
    background-position .75s ease,
    background-color .75s ease,
    color .35s ease,
    box-shadow .35s ease !important;
}


/* =========================================================
   Follow-up tuning
   - Add 1 more pixel to the bottom of the top black nav bar
   - Make Apply Now a touch narrower
   - Undo the footer positioning/color changes from the last pass
   - Add a tiny bit more weight to blue nav links
   - Slow Sign Me Up hover animation again
   - Preserve the Search blue-line fix
   ========================================================= */

/* Add 1 more pixel of black at the bottom without moving topbar content */
.ei-topbar {
  height: 56px !important;
  min-height: 56px !important;
  padding-bottom: 3px !important;
  box-sizing: border-box !important;
  background: #000000 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: inset 0 -3px 0 #000000 !important;
  overflow: hidden !important;
}


.ei-topbar:after,
.ei-topbar .ei-container:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 4px !important;
  background: #000000 !important;
  z-index: 50000 !important;
  pointer-events: none !important;
}

/* Apply Now: a touch narrower, keep current height/shadow/icon behavior */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  min-width: 114px !important;
  padding-left: 9px !important;
  padding-right: 9px !important;
}

/* Blue nav links: very small weight increase */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  font-weight: 790 !important;
}

/* Keep white hover line under blue nav links */
.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-menu-link:hover,
.ei-menu-link:focus,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link,
.ei-nav-link:hover,
.ei-nav-link:focus {
  background: transparent !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: inset 0 -4px 0 #ffffff !important;
}

/* Undo the footer layout/color changes from the previous pass */
.ei-footer {
  margin-top: 0 !important;
}

.ei-footer-left,
.ei-footer-grid,
.ei-footer {
  background-color: var(--ei-blue) !important;
}

.ei-footer-right {
  background-color: var(--ei-blue-2) !important;
}

.ei-footer-right .ei-footer-menu-grid,
.ei-footer-bottom,
.ei-footer-bottom-inner,
.ei-footer-right .ei-footer-menu-grid > div:nth-child(1),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(2),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(3),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(4),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(5),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(6) {
  transform: none !important;
}

.ei-footer-right .ei-social,
.ei-footer-right .ei-social ul,
.ei-footer-right .ei-social li,
.ei-footer-right .ei-social a {
  top: auto !important;
  right: auto !important;
  left: auto !important;
  margin-top: 0 !important;
  transform: none !important;
}

/* Undo the nonprofit line movement from the previous pass */
.ei-nonprofit {
  transform: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Sign Me Up button: slow the yellow-to-black hover wipe more */
.ei-newsletter-form button,
.ei-newsletter-form button:link,
.ei-newsletter-form button:visited {
  transition:
    background-position 1.05s cubic-bezier(.19,1,.22,1),
    background-color 1.05s cubic-bezier(.19,1,.22,1),
    color .45s ease,
    box-shadow .45s ease !important;
}

.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus {
  transition:
    background-position 1.05s cubic-bezier(.19,1,.22,1),
    background-color 1.05s cubic-bezier(.19,1,.22,1),
    color .45s ease,
    box-shadow .45s ease !important;
}


/* =========================================================
   Follow-up tuning
   - Keep Apply Now icon orientation correct on hover
   - Add 1px height to black top bar
   - Move nonprofit line up one line
   - Restore social icons to upper-right footer position
   - Restore top whitespace on left footer
   ========================================================= */

/* Add 1 more pixel of black height at bottom without moving topbar content */
.ei-topbar {
  height: 57px !important;
  min-height: 57px !important;
  padding-bottom: 4px !important;
  box-sizing: border-box !important;
  background: #000000 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: inset 0 -4px 0 #000000 !important;
  overflow: hidden !important;
}

.ei-topbar .ei-container {
  height: 53px !important;
  line-height: 53px !important;
  background: #000000 !important;
}

/* Keep the Apply Now pencil orientation fixed during hover */
.ei-apply i,
.ei-apply-button i,
.ei-apply .fa,
.ei-apply-button .fa,
.ei-apply .fa-pencil-alt,
.ei-apply-button .fa-pencil-alt {
  display: inline-block !important;
  transform: scaleX(-1) !important;
  transform-origin: center center !important;
}

.ei-apply:hover i,
.ei-apply:focus i,
.ei-apply-button:hover i,
.ei-apply-button:focus i,
.ei-apply:hover .fa,
.ei-apply:focus .fa,
.ei-apply-button:hover .fa,
.ei-apply-button:focus .fa,
.ei-apply:hover .fa-pencil-alt,
.ei-apply:focus .fa-pencil-alt,
.ei-apply-button:hover .fa-pencil-alt,
.ei-apply-button:focus .fa-pencil-alt {
  transform: scaleX(-1) translateX(-2px) !important;
}

/* Restore the top whitespace on the left side of the footer */
.ei-footer-left {
  padding-top: 68px !important;
}

/* Bring the nonprofit line up one line */
.ei-nonprofit {
  transform: translateY(-20px) !important;
  margin-top: -2px !important;
  margin-bottom: -20px !important;
}

/* Put social media icons back up and all the way to the right */
.ei-footer-right {
  position: relative !important;
}

.ei-footer-right .ei-social {
  position: absolute !important;
  top: 22px !important;
  right: 115px !important;
  left: auto !important;
  margin: 0 !important;
  transform: none !important;
  z-index: 5 !important;
}


.ei-footer-right .ei-social li {
  margin: 0 0 27px 0 !important;
  padding: 0 !important;
  transform: none !important;
}



/* =========================================================
   Footer/social/topbar follow-up tuning
   - Slow Sign Me Up hover animation slightly more
   - Add 1px more black at bottom of top black bar without moving content
   - Stretch Sign Me Up form to the same width as the horizontal rule above it
   - Restore right footer/social positioning closer to the good reference
   - Restore top breathing room on left footer content
   ========================================================= */

/* Add 1px more height at the bottom of the black top bar while leaving content in place */
.ei-topbar {
  height: 58px !important;
  min-height: 58px !important;
  padding-bottom: 5px !important;
  box-sizing: border-box !important;
  background: #000000 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: inset 0 -5px 0 #000000 !important;
  overflow: hidden !important;
}



/* Sign Me Up form stretches to the same width as the horizontal rule above */
.ei-newsletter-form {
  width: 100% !important;
  max-width: none !important;
}

/* Slow the Sign Me Up hover-to-black animation just a touch more */
.ei-newsletter-form button,
.ei-newsletter-form button:link,
.ei-newsletter-form button:visited {
  transition:
    background-position 1.35s cubic-bezier(.19,1,.22,1),
    background-color 1.35s cubic-bezier(.19,1,.22,1),
    color .52s ease,
    box-shadow .52s ease !important;
}

.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus {
  transition:
    background-position 1.35s cubic-bezier(.19,1,.22,1),
    background-color 1.35s cubic-bezier(.19,1,.22,1),
    color .52s ease,
    box-shadow .52s ease !important;
}

/* Restore top breathing room on left footer content */
.ei-footer-left {
  padding-top: 82px !important;
}

/* Restore right footer positioning context */
.ei-footer-right {
  position: relative !important;
}

/* Keep the right-footer link/menu layout from the current file */
.ei-footer-right .ei-footer-menu-grid {
  transform: none !important;
}

/* Restore social icons placement: higher, slightly left, tighter spacing */
.ei-footer-right .ei-social {
  position: absolute !important;
  top: 8px !important;
  right: 165px !important;
  left: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  z-index: 5 !important;
}


.ei-footer-right .ei-social li {
  margin: 0 0 9px 0 !important;
  padding: 0 !important;
  transform: none !important;
}



/* =========================================================
   Final patch using uploaded v15 as right-footer/social reference only
   - Keep current header/topbar/dots/form work
   - Restore right-footer social placement closer to referenced v15
   ========================================================= */

/* Reference-style right footer positioning context */
.ei-footer-right {
  position: relative !important;
}

/* Restore social icons: upper-right column, tighter vertical spacing */
.ei-footer-right .ei-social {
  position: absolute !important;
  top: 14px !important;
  right: 135px !important;
  left: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  z-index: 5 !important;
}

.ei-footer-right .ei-social ul {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.ei-footer-right .ei-social li {
  display: block !important;
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.ei-footer-right .ei-social a {
  transform: none !important;
}

/* Keep left footer from filling to the absolute top; preserve the white/top breathing room */
.ei-footer-left {
  padding-top: 82px !important;
}

/* Keep Sign Me Up animation slightly slower */
.ei-newsletter-form button,
.ei-newsletter-form button:link,
.ei-newsletter-form button:visited,
.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus {
  transition:
    background-position 1.35s cubic-bezier(.19,1,.22,1),
    background-color 1.35s cubic-bezier(.19,1,.22,1),
    color .52s ease,
    box-shadow .52s ease !important;
}

/* Keep the fixed black top bar seam/height treatment */
.ei-topbar {
  height: 58px !important;
  min-height: 58px !important;
  padding-bottom: 5px !important;
  box-sizing: border-box !important;
  background: #000000 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: inset 0 -5px 0 #000000 !important;
  overflow: hidden !important;
}

.ei-topbar .ei-container {
  height: 53px !important;
  line-height: 53px !important;
  background: #000000 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.ei-topbar:after,
.ei-topbar .ei-container:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 5px !important;
  background: #000000 !important;
  z-index: 50000 !important;
  pointer-events: none !important;
}


/* =========================================================
   Footer/header/nav tuning from screenshot
   ========================================================= */

/* Restore the white space above the left side of the footer */
.ei-footer {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

.ei-footer-grid {
  background: transparent !important;
  align-items: start !important;
}

.ei-footer-left {
  margin-top: 62px !important;
  padding-top: 68px !important;
  background-color: var(--ei-blue) !important;
}

.ei-footer-right {
  margin-top: 0 !important;
  background-color: var(--ei-blue-2) !important;
}

/* Keep the bottom/legal area inside the right footer and blue */
.ei-footer-bottom {
  background: transparent !important;
}

/* Move social media icons slightly left, keep them high/right */
.ei-footer-right .ei-social {
  position: absolute !important;
  top: 14px !important;
  right: 155px !important;
  left: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  z-index: 5 !important;
}

.ei-footer-right .ei-social ul {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ei-footer-right .ei-social li {
  display: block !important;
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
}

/* Stretch Sign Me Up form to line up with the horizontal rule above it */
.ei-newsletter-form {
  width: 100% !important;
  max-width: 100% !important;
  margin-right: 0 !important;
}

.ei-newsletter-form input {
  flex: 1 1 auto !important;
}

.ei-newsletter-form button {
  flex: 0 0 164px !important;
}

/* Top black utility bar: vertically center Search in the fixed content track */
.ei-topbar {
  height: 58px !important;
  min-height: 58px !important;
  padding-bottom: 5px !important;
  box-sizing: border-box !important;
  background: #000000 !important;
  overflow: hidden !important;
}

.ei-topbar .ei-container {
  height: 53px !important;
  line-height: 53px !important;
  display: flex !important;
  align-items: center !important;
}

.ei-search-open {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 53px !important;
  line-height: 53px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Move top utility links 1px down and 1px right */
.ei-top-links {
  transform: translate(1px, 1px) !important;
}

/* Add 1px height to the blue navigation bar */
.ei-mainbar,
.ei-mainbar .ei-container {
  height: 113px !important;
  min-height: 113px !important;
}

/* Move main blue nav links 1px down and 1px right */
.ei-menu {
  transform: translate(1px, 1px) !important;
}

.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 113px !important;
  min-height: 113px !important;
  transform: translate(1px, 1px) !important;
  position: relative !important;
}

/* Force the missing white hover line under the blue nav links */
.ei-menu-link:before,
.ei-nav-link:before {
  content: '' !important;
  position: absolute !important;
  left: 16px !important;
  right: 16px !important;
  bottom: 0 !important;
  height: 4px !important;
  background: #ffffff !important;
  opacity: 0 !important;
  transition: opacity .25s ease !important;
  display: block !important;
  pointer-events: none !important;
}


.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-menu-link:hover,
.ei-menu-link:focus,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link,
.ei-nav-link:hover,
.ei-nav-link:focus {
  background: transparent !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: inset 0 -4px 0 #ffffff !important;
}


/* =========================================================
   Footer full-height and nav hover cleanup
   ========================================================= */

/* Keep the white space above the left footer, but make the blue footer areas run to the bottom */
.ei-footer {
  background: linear-gradient(to right, #ffffff 0 50%, var(--ei-blue-2) 50% 100%) !important;
  background-color: var(--ei-blue-2) !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  overflow: hidden !important;
}

.ei-footer-grid {
  background: transparent !important;
  align-items: stretch !important;
}

.ei-footer-left {
  margin-top: 62px !important;
  padding-top: 68px !important;
  padding-bottom: 120px !important;
  margin-bottom: -120px !important;
  background-color: var(--ei-blue) !important;
}

.ei-footer-right {
  margin-top: 0 !important;
  padding-bottom: 120px !important;
  margin-bottom: -120px !important;
  background-color: var(--ei-blue-2) !important;
}

/* Fix the small blue line that appeared in the black bar above the blue nav */
.ei-topbar {
  position: relative !important;
  z-index: 10020 !important;
  background: #000000 !important;
  border-bottom: 0 !important;
  box-shadow: inset 0 -5px 0 #000000 !important;
  overflow: hidden !important;
}

.ei-topbar:after,
.ei-topbar .ei-container:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 5px !important;
  background: #000000 !important;
  z-index: 60000 !important;
  pointer-events: none !important;
}

.ei-mainbar {
  position: relative !important;
  z-index: 10010 !important;
  margin-top: -1px !important;
  border-top: 0 !important;
  box-shadow: none !important;
  background-color: var(--ei-blue) !important;
}

/* Add the extra 1px to the blue bar and keep content aligned */
.ei-mainbar,
.ei-mainbar .ei-container {
  height: 114px !important;
  min-height: 114px !important;
}

/* Move the blue-bar links one more pixel down and right */
.ei-menu {
  transform: translate(2px, 2px) !important;
}

.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 114px !important;
  min-height: 114px !important;
  transform: translate(2px, 2px) !important;
  position: relative !important;
}

/* White hover bar: visible on hover, but not animated */
.ei-menu-link:before,
.ei-nav-link:before {
  content: '' !important;
  position: absolute !important;
  left: 16px !important;
  right: 16px !important;
  bottom: 0 !important;
  height: 4px !important;
  background: #ffffff !important;
  opacity: 0 !important;
  transition: none !important;
  display: block !important;
  pointer-events: none !important;
}


/* Use the pseudo line only; remove animated box-shadow that was affecting the bar edges */
.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-menu-link:hover,
.ei-menu-link:focus,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link,
.ei-nav-link:hover,
.ei-nav-link:focus {
  background: transparent !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: none !important;
}


/* =========================================================
   Button/social/nav cleanup
   - Sign Me Up font smaller and no wrapping
   - Move footer social icons 3px left only
   - Straighten bottom of blue nav bar
   - Move Search down 1px
   - Move top black-bar utility links 1px down/right
   ========================================================= */

/* Sign Me Up button: decrease font by 1pt and prevent wrapping */
.ei-newsletter-form button {
  font-size: 13px !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
}

/* Move footer social media icons 3px left without affecting anything else */
.ei-footer-right .ei-social {
  right: 158px !important;
}

/* Move Search down 1px in the black top bar */
.ei-search-open {
  transform: translateY(1px) !important;
}

/* Move right-side top black-bar utility links 1px down and 1px right */
.ei-top-links {
  transform: translate(1px, 1px) !important;
}

/* Straighten the bottom edge of the blue navigation bar */
.ei-mainbar,
.ei-mainbar .ei-container {
  height: 114px !important;
  min-height: 114px !important;
  overflow: hidden !important;
  background-color: var(--ei-blue) !important;
}


/* Keep the blue bar bottom perfectly flat */
.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 2px !important;
  background: var(--ei-blue) !important;
  z-index: 30 !important;
  pointer-events: none !important;
}

/* Do not move the whole link boxes; that was creating the uneven bottom */
.ei-menu {
  transform: none !important;
}

.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 114px !important;
  min-height: 114px !important;
  transform: none !important;
  position: relative !important;
  padding-top: 2px !important;
  box-sizing: border-box !important;
}

/* Keep the hover bar instant and inside the blue nav link area */
.ei-menu-link:before,
.ei-nav-link:before {
  bottom: 0 !important;
  height: 4px !important;
  transition: none !important;
  z-index: 35 !important;
}



/* =========================================================
   Nav/dropdown/social/button tuning
   - Restore hover sub-navigation menus
   - Add 3px to bottom of blue navigation bar
   - Increase Sign Me Up font by 1pt
   - Move footer social icons 1px left and slightly closer together
   ========================================================= */

/* Blue nav: add 3px to bottom while keeping the bottom edge straight */
.ei-mainbar,
.ei-mainbar .ei-container {
  height: 117px !important;
  min-height: 117px !important;
  background-color: var(--ei-blue) !important;
}

/* Restore dropdown visibility: do not clip mega menus */
.ei-mainbar,
.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-item {
  overflow: visible !important;
}

/* Keep the flat bottom edge on the blue bar */
.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 3px !important;
  background: var(--ei-blue) !important;
  z-index: 30 !important;
  pointer-events: none !important;
}

/* Match the link hit area to the taller nav bar */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 117px !important;
  min-height: 117px !important;
  transform: none !important;
  position: relative !important;
  padding-top: 2px !important;
  box-sizing: border-box !important;
}

/* Make sure dropdowns start below the taller bar and can appear */
.ei-mega,
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 117px !important;
  overflow: visible !important;
  z-index: 10050 !important;
}

/* Restore the hover/focus reveal behavior for sub-navigation menus */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  display: grid !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}


/* Keep white hover line instant and visible */
.ei-menu-link:before,
.ei-nav-link:before {
  bottom: 0 !important;
  height: 4px !important;
  transition: none !important;
  z-index: 35 !important;
}


/* Sign Me Up button: increase font by 1pt */
.ei-newsletter-form button {
  font-size: 14px !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
}

/* Social icons: 1px left and a hair closer together */
.ei-footer-right .ei-social {
  right: 159px !important;
}

.ei-footer-right .ei-social li {
  margin-bottom: 10px !important;
}


/* =========================================================
   Nav/social/button follow-up tuning
   - Slightly less weight on Sign Me Up text
   - Move footer social icons 1px left only
   - Add 3px more blue at bottom of nav bar
   - Keep hover underline/caret visible and stable
   ========================================================= */

/* Sign Me Up: a little less heavy */
.ei-newsletter-form button {
  font-weight: 800 !important;
  font-size: 14px !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
}

/* Footer social icons: exactly 1px left, no other footer movement */
.ei-footer-right .ei-social {
  right: 160px !important;
}

/* Blue navigation bar: add 3px more blue at the bottom */
.ei-mainbar,
.ei-mainbar .ei-container {
  height: 120px !important;
  min-height: 120px !important;
  background-color: var(--ei-blue) !important;
  overflow: visible !important;
}

.ei-mainbar {
  position: relative !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* Straight blue fill at the bottom, behind hover elements */
.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 6px !important;
  background: var(--ei-blue) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Link hit areas match the taller nav */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 120px !important;
  min-height: 120px !important;
  position: relative !important;
  transform: none !important;
  overflow: visible !important;
  box-shadow: none !important;
}

/* Dropdowns start below the taller blue bar */
.ei-mega,
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 120px !important;
  z-index: 10050 !important;
  overflow: visible !important;
}

/* Keep white hover bar instant, visible, and not animated */
.ei-menu-link:before,
.ei-nav-link:before {
  content: '' !important;
  position: absolute !important;
  left: 16px !important;
  right: 16px !important;
  bottom: 0 !important;
  height: 4px !important;
  background: #ffffff !important;
  opacity: 0 !important;
  transition: none !important;
  display: block !important;
  pointer-events: none !important;
  z-index: 10 !important;
}


/* Keep the small yellow hover caret/arrow from disappearing or shifting */
.ei-menu-link:after,
.ei-nav-link:after {
  content: '' !important;
  display: block !important;
  margin-top: 8px !important;
  width: 0 !important;
  height: 0 !important;
  border-left: 4px solid transparent !important;
  border-right: 4px solid transparent !important;
  border-top: 6px solid #000000 !important;
  position: relative !important;
  left: 0 !important;
  right: auto !important;
  transform: none !important;
  z-index: 12 !important;
  transition: none !important;
}

.ei-menu-item:hover > .ei-menu-link:after,
.ei-menu-item:focus-within > .ei-menu-link:after,
.ei-menu-link:hover:after,
.ei-menu-link:focus:after,
.ei-nav-item:hover > .ei-nav-link:after,
.ei-nav-item:focus-within > .ei-nav-link:after,
.ei-nav-link:hover:after,
.ei-nav-link:focus:after {
  border-top-color: var(--ei-yellow) !important;
  transform: none !important;
  left: 0 !important;
  right: auto !important;
}

/* Make sure hover state doesn't remove the line/caret by box-shadow overrides */
.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-menu-link:hover,
.ei-menu-link:focus,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link,
.ei-nav-link:hover,
.ei-nav-link:focus {
  background: transparent !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: none !important;
}


/* =========================================================
   Final nav/button/candid/topbar tuning
   - Slower and lighter Sign Me Up text
   - Candid/Platinum badge 155x155
   - Add 1px more blue to bottom of blue nav
   - Make hover line full height/flush and non-animated
   - Keep carets black on hover
   - Remove mismatched blue block after logo
   - Move Search and first four top links down/right
   ========================================================= */

/* Sign Me Up: slower black animation and slightly lighter text */
.ei-newsletter-form button,
.ei-newsletter-form button:link,
.ei-newsletter-form button:visited {
  font-weight: 740 !important;
  font-size: 14px !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
  transition:
    background-position 1.65s cubic-bezier(.19,1,.22,1),
    background-color 1.65s cubic-bezier(.19,1,.22,1),
    color .58s ease,
    box-shadow .58s ease !important;
}

.ei-newsletter-form button:hover,
.ei-newsletter-form button:focus {
  transition:
    background-position 1.65s cubic-bezier(.19,1,.22,1),
    background-color 1.65s cubic-bezier(.19,1,.22,1),
    color .58s ease,
    box-shadow .58s ease !important;
}

/* Candid / Platinum Transparency badge */
.ei-candid-image,
.ei-candid,
.ei-candid-new {
  width: 104px !important;
  height: 115px !important;
  flex: 0 0 104px !important;
}

.ei-candid-image img {
  width: 100% !important;
  height: auto !important;
  max-height: 100% !important;
  object-fit: contain !important;
  display: block !important;
}

/* Add 1px more blue to the bottom of the main blue nav bar */
.ei-mainbar,
.ei-mainbar .ei-container {
  height: 121px !important;
  min-height: 121px !important;
  background-color: var(--ei-blue) !important;
  overflow: visible !important;
}

/* Remove mismatched blue shade/block after logo by forcing one uniform blue surface */
.ei-mainbar,
.ei-mainbar .ei-container,
.ei-logo,
.ei-logo:link,
.ei-logo:visited,
.ei-nav,
.ei-menu,
.ei-menu-item,
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited {
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* Keep bottom of blue nav straight and flush */
.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 7px !important;
  background: var(--ei-blue) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Match link area to the taller bar */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 121px !important;
  min-height: 121px !important;
  position: relative !important;
  transform: none !important;
  overflow: visible !important;
  box-shadow: none !important;
}

/* Dropdowns start below the taller nav */
.ei-mega,
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 121px !important;
  z-index: 10050 !important;
  overflow: visible !important;
}

/* White hover line: instant, flush, and one pixel taller to match the rest */
.ei-menu-link:before,
.ei-nav-link:before {
  content: '' !important;
  position: absolute !important;
  left: 16px !important;
  right: 16px !important;
  bottom: 0 !important;
  height: 5px !important;
  background: #ffffff !important;
  opacity: 0 !important;
  transition: none !important;
  display: block !important;
  pointer-events: none !important;
  z-index: 25 !important;
}


/* Carets stay black on hover; do not turn yellow */
.ei-menu-link:after,
.ei-nav-link:after,
.ei-menu-item:hover > .ei-menu-link:after,
.ei-menu-item:focus-within > .ei-menu-link:after,
.ei-menu-link:hover:after,
.ei-menu-link:focus:after,
.ei-nav-item:hover > .ei-nav-link:after,
.ei-nav-item:focus-within > .ei-nav-link:after,
.ei-nav-link:hover:after,
.ei-nav-link:focus:after {
  border-top-color: #000000 !important;
  transition: none !important;
  transform: none !important;
  left: 0 !important;
  right: auto !important;
}

/* Keep blue nav hover clean */
.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-menu-link:hover,
.ei-menu-link:focus,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link,
.ei-nav-link:hover,
.ei-nav-link:focus {
  background-color: var(--ei-blue) !important;
  background-image: none !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

/* Move Search down 1 more pixel */
.ei-search-open {
  transform: translateY(2px) !important;
}

/* Move Alumni, Careers, News & Press, Events down 1px and right 1px */
.ei-topbar .ei-top-links li:nth-child(-n+4) {
  transform: translate(1px, 1px) !important;
}


/* =========================================================
   Position/size tuning
   - Sign Me Up +1pt
   - Top utility first four links +1px right
   - Blue nav +1px bottom height
   - Main blue nav labels +2px down/right
   - Left footer link groups +1px right
   ========================================================= */

/* Sign Me Up button font +1pt */
.ei-newsletter-form button {
  font-size: 15px !important;
  font-weight: 740 !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
}

/* Alumni / Careers / News & Press / Events: 1px more to the right */
.ei-topbar .ei-top-links li:nth-child(-n+4) {
  transform: translate(2px, 1px) !important;
}

/* Add 1px more blue to the bottom of the blue nav bar */
.ei-mainbar,
.ei-mainbar .ei-container {
  height: 122px !important;
  min-height: 122px !important;
  background-color: var(--ei-blue) !important;
  overflow: visible !important;
}


/* Main blue nav links: move labels/links 2px down and 2px right */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 122px !important;
  min-height: 122px !important;
  transform: translate(2px, 2px) !important;
  position: relative !important;
  overflow: visible !important;
}

/* Keep dropdowns aligned below the taller bar */
.ei-mega,
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 122px !important;
  z-index: 10050 !important;
}

/* Keep hover line and caret stable after moving link boxes */
.ei-menu-link:before,
.ei-nav-link:before {
  bottom: 0 !important;
  height: 5px !important;
  transition: none !important;
}

.ei-menu-link:after,
.ei-nav-link:after,
.ei-menu-item:hover > .ei-menu-link:after,
.ei-menu-item:focus-within > .ei-menu-link:after,
.ei-menu-link:hover:after,
.ei-menu-link:focus:after,
.ei-nav-item:hover > .ei-nav-link:after,
.ei-nav-item:focus-within > .ei-nav-link:after,
.ei-nav-link:hover:after,
.ei-nav-link:focus:after {
  border-top-color: #000000 !important;
  transition: none !important;
}

/* Footer: move only the listed left-side/right-footer link groups 1px to the right */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(1),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(3) {
  transform: translateX(1px) !important;
}


/* =========================================================
   Footer/top-nav/blue-fill tuning
   - Listed footer link groups 2px right
   - Alumni/Careers/News & Press 1px right
   - Fill non-link white gaps at bottom of blue nav with blue
   - Preserve hover line only under active hovered link
   ========================================================= */

/* Footer: move only the specified link groups 2px to the right */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(1),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(3) {
  transform: translateX(2px) !important;
}

/* Top black navigation: move only Alumni, Careers, News & Press 1px right */
.ei-topbar .ei-top-links li:nth-child(1),
.ei-topbar .ei-top-links li:nth-child(2),
.ei-topbar .ei-top-links li:nth-child(3) {
  transform: translate(3px, 1px) !important;
}

/* Fill white gaps along the bottom of the blue navigation bar with blue */
.ei-mainbar {
  background-color: var(--ei-blue) !important;
  background-image: none !important;
  position: relative !important;
  overflow: visible !important;
}


/* Blue fill strip sits behind the hover underline so unused areas stay blue */
.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 8px !important;
  background: var(--ei-blue) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Keep link boxes on top of the blue fill */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  background-color: var(--ei-blue) !important;
  background-image: none !important;
  position: relative !important;
  z-index: 5 !important;
}

/* Preserve the hover line only on the hovered/focused link */
.ei-menu-link:before,
.ei-nav-link:before {
  content: '' !important;
  position: absolute !important;
  left: 16px !important;
  right: 16px !important;
  bottom: 0 !important;
  height: 5px !important;
  background: #ffffff !important;
  opacity: 0 !important;
  transition: none !important;
  display: block !important;
  pointer-events: none !important;
  z-index: 20 !important;
}

.ei-menu-item:hover > .ei-menu-link:before,
.ei-menu-item:focus-within > .ei-menu-link:before,
.ei-menu-link:hover:before,
.ei-menu-link:focus:before,
.ei-nav-item:hover > .ei-nav-link:before,
.ei-nav-item:focus-within > .ei-nav-link:before,
.ei-nav-link:hover:before,
.ei-nav-link:focus:before {
  opacity: 1 !important;
}


/* =========================================================
   Top nav / footer final tuning
   - my.Erikson + Donate icons #0074b0
   - Alumni/Careers/News & Press 1px right
   - Listed footer link groups 2px right
   - Fill non-hover white gaps at bottom of blue nav with blue
   - Move blue nav links/carets down 2px and right 3px, excluding Apply Now
   ========================================================= */

/* Top black nav icons: my.Erikson Login and Donate */
.ei-topbar .ei-top-links li:nth-child(n+5) a i,
.ei-topbar .ei-top-links li:nth-child(n+5) a:hover i,
.ei-topbar .ei-top-links li:nth-child(n+5) a:focus i {
  color: #0074b0 !important;
}

/* Alumni / Careers / News & Press: 1px farther right */
.ei-topbar .ei-top-links li:nth-child(1),
.ei-topbar .ei-top-links li:nth-child(2),
.ei-topbar .ei-top-links li:nth-child(3) {
  transform: translate(4px, 1px) !important;
}

/* Footer: move only the listed Admissions + Academics link groups 2px right */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(1),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(3) {
  transform: translateX(4px) !important;
}

/* Keep the entire blue nav surface uniform; remove odd blue shade blocks */
.ei-mainbar,
.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-item {
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* Fill bottom white gaps with blue only in non-hover areas */
.ei-mainbar {
  position: relative !important;
  overflow: visible !important;
  background-color: var(--ei-blue) !important;
}

.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 8px !important;
  background: var(--ei-blue) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Move the main blue nav labels/carets down 2px and right 3px without moving Apply Now */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  transform: translate(5px, 4px) !important;
  position: relative !important;
  z-index: 5 !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* Explicitly do not move Apply Now */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  transform: none !important;
}

/* Default bottom of each nav link should stay blue unless hovered/focused */
.ei-menu-link:before,
.ei-nav-link:before {
  content: '' !important;
  position: absolute !important;
  left: 16px !important;
  right: 16px !important;
  bottom: 0 !important;
  height: 5px !important;
  background: #ffffff !important;
  opacity: 0 !important;
  transition: none !important;
  display: block !important;
  pointer-events: none !important;
  z-index: 25 !important;
}

/* Hover line appears only under the hovered/focused link */
.ei-menu-item:hover > .ei-menu-link:before,
.ei-menu-item:focus-within > .ei-menu-link:before,
.ei-menu-link:hover:before,
.ei-menu-link:focus:before,
.ei-nav-item:hover > .ei-nav-link:before,
.ei-nav-item:focus-within > .ei-nav-link:before,
.ei-nav-link:hover:before,
.ei-nav-link:focus:before {
  opacity: 1 !important;
  transition: none !important;
}

/* Keep non-hover bottom areas blue */
.ei-menu-link:not(:hover):before,
.ei-nav-link:not(:hover):before {
  opacity: 0 !important;
}

/* Carets remain black and move with the link text */
.ei-menu-link:after,
.ei-nav-link:after,
.ei-menu-item:hover > .ei-menu-link:after,
.ei-menu-item:focus-within > .ei-menu-link:after,
.ei-menu-link:hover:after,
.ei-menu-link:focus:after,
.ei-nav-item:hover > .ei-nav-link:after,
.ei-nav-item:focus-within > .ei-nav-link:after,
.ei-nav-link:hover:after,
.ei-nav-link:focus:after {
  border-top-color: #000000 !important;
  transition: none !important;
}


/* =========================================================
   Blue nav + footer final adjustment
   - Do not change the black top navigation
   - Move main blue nav links/carets down 1px and right 2px
   - Keep Apply Now fixed
   - Fix non-hover white gaps at bottom of blue bar
   - Move specified footer link groups 1px farther right
   ========================================================= */

/* Footer: move only the listed Admissions + Academics link groups 1px farther right */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(1),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(3) {
  transform: translateX(5px) !important;
}

/* Keep the blue navigation surface uniform */
.ei-mainbar,
.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-item {
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* Blue fill strip above the bottom edge to hide any non-hover white gaps */
.ei-mainbar {
  position: relative !important;
  overflow: visible !important;
  background-color: var(--ei-blue) !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 9px !important;
  background: var(--ei-blue) !important;
  z-index: 40 !important;
  pointer-events: none !important;
}

/* Move only the main blue navigation links/carets; leave Apply Now alone */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  transform: translate(7px, 5px) !important;
  position: relative !important;
  z-index: 50 !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* Apply Now stays exactly where it is */
.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  transform: none !important;
}

/* Non-hover state: bottom stays blue, no white segments */
.ei-menu-link:before,
.ei-nav-link:before {
  content: '' !important;
  position: absolute !important;
  left: 16px !important;
  right: 16px !important;
  bottom: 0 !important;
  height: 5px !important;
  background: #ffffff !important;
  opacity: 0 !important;
  transition: none !important;
  display: block !important;
  pointer-events: none !important;
  z-index: 70 !important;
}

/* Hover state: show the white line only under the hovered/focused link */
.ei-menu-item:hover > .ei-menu-link:before,
.ei-menu-item:focus-within > .ei-menu-link:before,
.ei-menu-link:hover:before,
.ei-menu-link:focus:before,
.ei-nav-item:hover > .ei-nav-link:before,
.ei-nav-item:focus-within > .ei-nav-link:before,
.ei-nav-link:hover:before,
.ei-nav-link:focus:before {
  opacity: 1 !important;
  transition: none !important;
}

/* Keep the carets black and moving with the link text */
.ei-menu-link:after,
.ei-nav-link:after,
.ei-menu-item:hover > .ei-menu-link:after,
.ei-menu-item:focus-within > .ei-menu-link:after,
.ei-menu-link:hover:after,
.ei-menu-link:focus:after,
.ei-nav-item:hover > .ei-nav-link:after,
.ei-nav-item:focus-within > .ei-nav-link:after,
.ei-nav-link:hover:after,
.ei-nav-link:focus:after {
  border-top-color: #000000 !important;
  transition: none !important;
  transform: none !important;
}

/* Ensure hover styling matches the public site behavior without changing button position */
.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-menu-link:hover,
.ei-menu-link:focus,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link,
.ei-nav-link:hover,
.ei-nav-link:focus {
  background-color: var(--ei-blue) !important;
  background-image: none !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

/* Dropdowns remain aligned to the current taller blue bar */
.ei-mega,
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 122px !important;
  z-index: 10050 !important;
}


/* =========================================================
   Logo/nav-line/footer-spacing tuning
   - Move Erikson logo 1px down and 1px left
   - Fill scattered white lines at bottom of blue nav
   - Keep white hover line above/visible, with yellow caret below it
   - Move main nav links/carets down 1px and right 1px
   - Add one line space between International Students and Academics only
   ========================================================= */

/* Move Erikson logo 1px down and 1px left */
.ei-logo {
  transform: translate(-1px, 1px) !important;
}

/* Keep one continuous blue background across the nav, including all empty bottom areas */
.ei-mainbar,
.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-item,
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited {
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* Blue fill strip at bottom, behind hovered link line */
.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 12px !important;
  background: var(--ei-blue) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Move only the main blue nav links/carets another 1px down/right; Apply Now remains untouched */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  transform: translate(8px, 6px) !important;
  position: relative !important;
  z-index: 20 !important;
  overflow: visible !important;
}

.ei-apply,
.ei-apply:link,
.ei-apply:visited,
.ei-apply-button,
.ei-apply-button:link,
.ei-apply-button:visited {
  transform: none !important;
}

/* White hover line sits above the yellow/black caret so it is not covered */
.ei-menu-link:before,
.ei-nav-link:before {
  content: '' !important;
  position: absolute !important;
  left: 16px !important;
  right: 16px !important;
  bottom: 7px !important;
  height: 5px !important;
  background: #ffffff !important;
  opacity: 0 !important;
  display: block !important;
  transition: none !important;
  pointer-events: none !important;
  z-index: 80 !important;
}


/* Caret stays black, does not cover the white hover line */
.ei-menu-link:after,
.ei-nav-link:after,
.ei-menu-item:hover > .ei-menu-link:after,
.ei-menu-item:focus-within > .ei-menu-link:after,
.ei-menu-link:hover:after,
.ei-menu-link:focus:after,
.ei-nav-item:hover > .ei-nav-link:after,
.ei-nav-item:focus-within > .ei-nav-link:after,
.ei-nav-link:hover:after,
.ei-nav-link:focus:after {
  border-top-color: #000000 !important;
  transition: none !important;
  transform: none !important;
  position: relative !important;
  z-index: 40 !important;
}

/* Make sure no old box-shadow underline creates broken white segments */
.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-menu-link:hover,
.ei-menu-link:focus,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link,
.ei-nav-link:hover,
.ei-nav-link:focus {
  background-color: var(--ei-blue) !important;
  background-image: none !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

/* Add one line of space between International Students and Academics only */
.ei-footer-right .ei-footer-menu-grid > div:nth-child(1) {
  margin-bottom: calc(46px + 1em) !important;
}


/* =========================================================
   Footer gap + blue nav bottom/weight tuning
   - Reduce space between Erikson Store and bottom legal links
   - Fill non-hover white gaps at bottom of blue nav
   - Keep hover line behavior intact
   - Add a touch more weight to blue nav links
   ========================================================= */

/* Footer: remove about one line of space above the bottom/legal links */
.ei-footer-bottom {
  margin-top: 30px !important;
  padding-top: 25px !important;
}

/* Blue nav links: just a touch more bold */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  font-weight: 800 !important;
}

/* Fill stray non-hover white gaps along the bottom of the blue navigation bar */
.ei-mainbar {
  position: relative !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
  overflow: visible !important;
}

.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-item {
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* Blue strip covers only the unused/non-hover bottom areas */
.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 12px !important;
  background: var(--ei-blue) !important;
  z-index: 60 !important;
  pointer-events: none !important;
}

/* Keep links above the blue fill strip so the hover line can still show */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  position: relative !important;
  z-index: 80 !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* On hover, lift the active link above the blue strip */
.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-menu-link:hover,
.ei-menu-link:focus,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link,
.ei-nav-link:hover,
.ei-nav-link:focus {
  z-index: 100 !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

/* Preserve the hover line only on the active link */
.ei-menu-link:before,
.ei-nav-link:before {
  z-index: 120 !important;
}



/* =========================================================
   Blue nav weight/height tuning
   - Decrease blue nav link weight a hair
   - Add 2px more height to bottom of blue bar to cover bottom white lines
   ========================================================= */

/* Decrease the blue nav link weight slightly */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  font-weight: 790 !important;
}

/* Add 2px more blue to the bottom of the blue navigation bar */
.ei-mainbar,
.ei-mainbar .ei-container {
  height: 124px !important;
  min-height: 124px !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* Keep the bottom edge filled blue across the entire bar */
.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 14px !important;
  background: var(--ei-blue) !important;
  z-index: 60 !important;
  pointer-events: none !important;
}

/* Match link hit area to the taller blue bar */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 124px !important;
  min-height: 124px !important;
}

/* Keep dropdown menus aligned below the taller blue bar */
.ei-mega,
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 124px !important;
}


/* =========================================================
   Blue nav overflow + letter spacing tuning
   - Keep current blue nav height
   - Clip hover-tab overflow so blue blocks do not extend outside the bar
   - Add slight letter spacing to blue bar links
   ========================================================= */

/* Keep the current height, but clip visual overflow from hover tabs */
.ei-mainbar {
  height: 124px !important;
  min-height: 124px !important;
  position: relative !important;
  overflow: hidden !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

.ei-mainbar .ei-container {
  height: 124px !important;
  min-height: 124px !important;
  overflow: visible !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* Keep dropdowns visible while clipping only the blue hover/link overflow inside the link boxes */
.ei-nav,
.ei-menu,
.ei-menu-item {
  overflow: visible !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 124px !important;
  min-height: 124px !important;
  max-height: 124px !important;
  overflow: hidden !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
  letter-spacing: .015em !important;
}

/* Remove extra blue fill strips that were protruding past the bar */
.ei-mainbar:after {
  content: none !important;
  display: none !important;
}

/* Keep hover line inside the nav link area only */
.ei-menu-link:before,
.ei-nav-link:before {
  bottom: 0 !important;
  height: 5px !important;
  z-index: 25 !important;
}

/* Preserve dropdown behavior despite clipping the main blue bar */
.ei-mega,
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 124px !important;
  overflow: visible !important;
  z-index: 10050 !important;
}


/* =========================================================
   Dropdown/logo/social fix
   - Restore hover sub-navigation menus
   - Keep blue nav visual clipping/height intact
   - Move Erikson logo 1px left
   - Move footer social icons 1px up and 1px left only
   ========================================================= */

/* Move Erikson logo 1px farther left */
.ei-logo {
  transform: translate(-2px, 1px) !important;
}

/* Restore dropdown menus while keeping the blue nav bar height/appearance */
.ei-mainbar {
  height: 124px !important;
  min-height: 124px !important;
  overflow: visible !important;
  position: relative !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-item {
  overflow: visible !important;
}

/* Clip only the individual blue link boxes so no blue hover overflow appears */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 124px !important;
  min-height: 124px !important;
  max-height: 124px !important;
  overflow: hidden !important;
}

/* Restore sub-navigation visibility */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  display: grid !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  top: 124px !important;
  z-index: 10050 !important;
  overflow: visible !important;
}


/* Keep dropdown itself from being clipped */
.ei-mega {
  overflow: visible !important;
}

/* Footer social icons: 1px up and 1px left only */
.ei-footer-right .ei-social {
  top: 13px !important;
  right: 161px !important;
}


/* =========================================================
   Dropdown overflow + hover-line + footer gap fix
   - Keep sub-navigation menus working
   - Remove blue overflow below hover tabs
   - Move white hover line up above the caret/yellow hover area
   - Remove one line of space between Erikson Store and legal links
   ========================================================= */

/* Keep blue bar height unchanged and dropdowns visible */
.ei-mainbar,
.ei-mainbar .ei-container {
  height: 124px !important;
  min-height: 124px !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

.ei-mainbar,
.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-item {
  overflow: visible !important;
}

/* Prevent the transformed hover tab/link box from extending below the blue bar */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited {
  height: 118px !important;
  min-height: 118px !important;
  max-height: 118px !important;
  overflow: hidden !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

/* Keep dropdowns aligned below the full 124px blue bar */
.ei-mega,
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  top: 124px !important;
  z-index: 10050 !important;
  overflow: visible !important;
}

/* Blue fill behind the clipped link area so the bar bottom remains solid */
.ei-mainbar:after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 8px !important;
  background: var(--ei-blue) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Move the white hover line up so it sits above the caret/yellow hover area */
.ei-menu-link:before,
.ei-nav-link:before {
  bottom: 10px !important;
  height: 5px !important;
  z-index: 80 !important;
  transition: none !important;
}


/* Keep the caret below the white line and stable */
.ei-menu-link:after,
.ei-nav-link:after,
.ei-menu-item:hover > .ei-menu-link:after,
.ei-menu-item:focus-within > .ei-menu-link:after,
.ei-menu-link:hover:after,
.ei-menu-link:focus:after,
.ei-nav-item:hover > .ei-nav-link:after,
.ei-nav-item:focus-within > .ei-nav-link:after,
.ei-nav-link:hover:after,
.ei-nav-link:focus:after {
  border-top-color: #000000 !important;
  transition: none !important;
  transform: none !important;
  z-index: 40 !important;
}

/* Footer: delete one line of space between Erikson Store and the legal links */
.ei-footer-bottom {
  margin-top: 10px !important;
  padding-top: 20px !important;
}


/* =========================================================
   Overflow/footer-gap fix v2
   - Remove blue overflow under hover tabs while keeping dropdowns
   - Move legal links up closer to Erikson Store
   ========================================================= */

/* Keep the overall blue bar height and dropdown visibility */
.ei-mainbar,
.ei-mainbar .ei-container {
  height: 124px !important;
  min-height: 124px !important;
  background-color: var(--ei-blue) !important;
  background-image: none !important;
}

.ei-mainbar {
  position: relative !important;
  overflow: visible !important;
}

.ei-mainbar .ei-container,
.ei-nav,
.ei-menu,
.ei-menu-item {
  overflow: visible !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* Remove the blue background from the individual link tabs so nothing can protrude below the bar */
.ei-menu-link,
.ei-menu-link:link,
.ei-menu-link:visited,
.ei-nav-link,
.ei-nav-link:link,
.ei-nav-link:visited,
.ei-menu-item:hover > .ei-menu-link,
.ei-menu-item:focus-within > .ei-menu-link,
.ei-menu-link:hover,
.ei-menu-link:focus,
.ei-nav-item:hover > .ei-nav-link,
.ei-nav-item:focus-within > .ei-nav-link,
.ei-nav-link:hover,
.ei-nav-link:focus {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

/* Clip the visual blue tab area only; the dropdown itself remains visible */
.ei-menu-link,
.ei-nav-link {
  height: 118px !important;
  min-height: 118px !important;
  max-height: 118px !important;
  overflow: visible !important;
}

/* No blue fill pseudo-strip extending under hovered tabs */
.ei-mainbar:after {
  content: none !important;
  display: none !important;
}

/* Restore dropdown menus */
.ei-menu-item > .ei-mega,
.ei-nav-item > .ei-mega {
  display: grid !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  top: 124px !important;
  z-index: 10050 !important;
  overflow: visible !important;
}

.ei-menu-item:hover > .ei-mega,
.ei-menu-item:focus-within > .ei-mega,
.ei-nav-item:hover > .ei-mega,
.ei-nav-item:focus-within > .ei-mega {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Keep white hover line visible above the caret */
.ei-menu-link:before,
.ei-nav-link:before {
  bottom: 10px !important;
  height: 5px !important;
  z-index: 80 !important;
  transition: none !important;
}


/* Footer: delete the remaining line of space between Erikson Store and legal links */
.ei-footer-right .ei-footer-menu-grid {
  margin-bottom: -18px !important;
  padding-bottom: 0 !important;
}

.ei-footer-right .ei-footer-col {
  margin-bottom: 6px !important;
}

.ei-footer-bottom {
  margin-top: -28px !important;
  padding-top: 0 !important;
}

.ei-footer-bottom:before {
  margin-top: 0 !important;
  margin-bottom: 8px !important;
}


/* =========================================================
   Footer revert + hover-line tuning
   - Undo the footer gap changes from the last pass
   - Make white hover lines thinner
   - Place white hover line directly on top of the caret/yellow hover area
   ========================================================= */

/* Undo the last footer spacing change; restore previous footer gap behavior */
.ei-footer-right .ei-footer-menu-grid {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.ei-footer-right .ei-footer-col {
  margin-bottom: 46px !important;
}

.ei-footer-bottom {
  margin-top: 10px !important;
  padding-top: 20px !important;
}

.ei-footer-bottom:before {
  margin-top: 0 !important;
  margin-bottom: 10px !important;
}

/* White hover line: thinner and directly above the caret/yellow hover line */
.ei-menu-link:before,
.ei-nav-link:before {
  bottom: 5px !important;
  height: 3px !important;
  z-index: 90 !important;
  transition: none !important;
}

.ei-menu-item:hover > .ei-menu-link:before,
.ei-menu-item:focus-within > .ei-menu-link:before,
.ei-menu-link:hover:before,
.ei-menu-link:focus:before,
.ei-nav-item:hover > .ei-nav-link:before,
.ei-nav-item:focus-within > .ei-nav-link:before,
.ei-nav-link:hover:before,
.ei-nav-link:focus:before {
  opacity: 1 !important;
  transition: none !important;
}

/* Keep the caret immediately below the white line and unchanged on hover */
.ei-menu-link:after,
.ei-nav-link:after,
.ei-menu-item:hover > .ei-menu-link:after,
.ei-menu-item:focus-within > .ei-menu-link:after,
.ei-menu-link:hover:after,
.ei-menu-link:focus:after,
.ei-nav-item:hover > .ei-nav-link:after,
.ei-nav-item:focus-within > .ei-nav-link:after,
.ei-nav-link:hover:after,
.ei-nav-link:focus:after {
  border-top-color: #000000 !important;
  transition: none !important;
  transform: none !important;
}


/* =========================================================
   Footer right-side group spacing only
   - Add one line between International Students and Academics
   - Add one line between Clinical Practitioner Programs and Policy & Research
   - Add one line between Research and About
   - No header/nav changes
   ========================================================= */

.ei-footer-right .ei-footer-menu-grid > div:nth-child(1) > .ei-footer-col:nth-child(1) {
  margin-bottom: calc(46px + 1em) !important;
}

.ei-footer-right .ei-footer-menu-grid > div:nth-child(2) > .ei-footer-col:nth-child(1),
.ei-footer-right .ei-footer-menu-grid > div:nth-child(2) > .ei-footer-col:nth-child(2) {
  margin-bottom: calc(46px + 1em) !important;
}


/* =========================================================
   Clean reset: white Slate background + blue-nav shadow
   - Removes dotted/background experiments from the Slate content area
   - Keeps the uploaded perfect header/footer structure unchanged
   ========================================================= */

/* Normal white page background */
html,
body {
  background: #ffffff !important;
  background-image: none !important;
}

/* Remove any pseudo-element background layers/bars around the content area */
body:before,
body:after,
#main-content:before,
#main-content:after,
.ei-site-content:before,
.ei-site-content:after,
.ei-content-inner:before,
.ei-content-inner:after,
.ei-slate-content:before,
.ei-slate-content:after,
#slate-root:before,
#slate-root:after {
  content: none !important;
  display: none !important;
  background: none !important;
  background-image: none !important;
}

/* Keep the Slate/main content area plain white */
#main-content,
.ei-site-content,
.ei-content-inner,
.ei-slate-content,
#slate-root {
  background: #ffffff !important;
  background-image: none !important;
}

/* Prevent inner Slate wrappers from reintroducing any custom background image */
.ei-slate-content > *,
#slate-root > * {
  background-image: none !important;
}

/* Visible but moderate shadow under the blue navigation banner */
.ei-header,
.ei-mainbar {
  position: relative !important;
  overflow: visible !important;
}


.ei-mainbar {
  z-index: 3001 !important;
  box-shadow: 0 6px 12px rgba(0,0,0,.16) !important;
}


/* =========================================================
   Deeper blue-nav shadow
   - Keeps the clean white Slate background
   - Makes the shadow under the blue navigation banner spread farther down
   ========================================================= */

.ei-header,
.ei-mainbar {
  position: relative !important;
  overflow: visible !important;
}


.ei-mainbar {
  z-index: 3001 !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.20) !important;
}

/* Add a longer soft fade below the blue nav, similar to the Erikson site */
.ei-mainbar:after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -28px !important;
  height: 28px !important;
  pointer-events: none !important;
  z-index: 0 !important;
  background: linear-gradient(to bottom, rgba(0,0,0,.18) 0%, rgba(0,0,0,.08) 45%, rgba(0,0,0,0) 100%) !important;
}


/* =========================================================
   Erikson-styled Slate main content
   - Header/footer left untouched
   - Plain white Slate background
   - Lighter/shorter blue-nav shadow
   - Erikson-style typography, headings, paragraphs, links,
     tables, forms, buttons, fieldsets, alerts, and cards
   ========================================================= */

/* Keep the page and Slate content area clean white */
html,
body,
#main-content,
.ei-site-content,
.ei-content-inner,
.ei-slate-content,
#slate-root {
  background: #ffffff !important;
  background-image: none !important;
}

/* Remove prior dotted/background pseudo-elements or test layers */
body:before,
body:after,
#main-content:before,
#main-content:after,
.ei-site-content:before,
.ei-site-content:after,
.ei-content-inner:before,
.ei-content-inner:after,
.ei-slate-content:before,
.ei-slate-content:after,
#slate-root:before,
#slate-root:after {
  content: none !important;
  display: none !important;
  background: none !important;
  background-image: none !important;
}

/* Lighter, shorter shadow under the blue navigation banner */
.ei-header,
.ei-mainbar {
  position: relative !important;
  overflow: visible !important;
}


.ei-mainbar {
  z-index: 3001 !important;
  box-shadow: 0 5px 10px rgba(0,0,0,.12) !important;
}

/* Override the previous long shadow fade */
.ei-mainbar:after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -12px !important;
  height: 12px !important;
  pointer-events: none !important;
  z-index: 0 !important;
  background: linear-gradient(to bottom, rgba(0,0,0,.10) 0%, rgba(0,0,0,.04) 45%, rgba(0,0,0,0) 100%) !important;
}

/* Main content page width/spacing */
#main-content.ei-site-content {
  padding: 58px 0 70px !important;
}

.ei-content-inner {
  max-width: 1440px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 115px !important;
}

.ei-slate-content {
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  min-height: 420px !important;
  color: #111111 !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

/* General text */
.ei-slate-content p,
.ei-slate-content li,
.ei-slate-content td,
.ei-slate-content th,
.ei-slate-content label,
.ei-slate-content input,
.ei-slate-content select,
.ei-slate-content textarea,
.ei-slate-content button {
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
}

.ei-slate-content p {
  margin: 0 0 1.35em !important;
  color: #222222 !important;
  font-size: 18px !important;
  line-height: 1.72 !important;
  font-weight: 400 !important;
}

.ei-slate-content strong,
.ei-slate-content b {
  font-weight: 900 !important;
}

.ei-slate-content em,
.ei-slate-content i {
  font-style: italic !important;
}

/* Headings */
.ei-slate-content h1,
.ei-slate-content h2,
.ei-slate-content h3,
.ei-slate-content h4,
.ei-slate-content h5,
.ei-slate-content h6 {
  font-family: "Gotham A", "Gotham B", Roboto, Arial, Helvetica, sans-serif !important;
  color: #000000 !important;
  font-weight: 900 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 0.55em !important;
  text-transform: none !important;
}

.ei-slate-content h1 {
  font-size: 48px !important;
  line-height: 1.08 !important;
  margin-bottom: 28px !important;
}

.ei-slate-content h2 {
  font-size: 38px !important;
  line-height: 1.16 !important;
  margin-top: 44px !important;
  margin-bottom: 20px !important;
}

.ei-slate-content h3 {
  font-size: 28px !important;
  line-height: 1.22 !important;
  margin-top: 34px !important;
  margin-bottom: 16px !important;
}

.ei-slate-content h4 {
  font-size: 22px !important;
  line-height: 1.28 !important;
  margin-top: 28px !important;
  margin-bottom: 12px !important;
}

.ei-slate-content h5,
.ei-slate-content h6 {
  font-size: 18px !important;
  line-height: 1.35 !important;
  margin-top: 24px !important;
  margin-bottom: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: .045em !important;
}

/* Links */
.ei-slate-content a,
.ei-slate-content a:link,
.ei-slate-content a:visited {
  color: #007eaa !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
  transition: color .2s ease, background-color .2s ease, text-decoration-color .2s ease !important;
}

.ei-slate-content a:hover,
.ei-slate-content a:focus {
  color: #000000 !important;
  text-decoration-color: #ffc600 !important;
}

/* Lists */
.ei-slate-content ul,
.ei-slate-content ol {
  margin: 0 0 1.5em 1.35em !important;
  padding: 0 !important;
}

.ei-slate-content li {
  margin: 0 0 .55em !important;
  color: #222222 !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
}

.ei-slate-content ul li::marker {
  color: #0086b6 !important;
}

/* Horizontal rules and blockquotes */
.ei-slate-content hr {
  border: 0 !important;
  border-top: 2px solid #e5e5e5 !important;
  margin: 36px 0 !important;
}

.ei-slate-content blockquote {
  margin: 32px 0 !important;
  padding: 8px 0 8px 28px !important;
  border-left: 6px solid #ffc600 !important;
  color: #000000 !important;
  font-family: "Gotham A", "Gotham B", Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 24px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
}

/* Tables */
.ei-slate-content table {
  width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  margin: 28px 0 36px !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
  color: #111111 !important;
  background: #ffffff !important;
  border: 1px solid #d9d9d9 !important;
}

.ei-slate-content caption {
  caption-side: top !important;
  text-align: left !important;
  color: #000000 !important;
  font-family: "Gotham A", "Gotham B", Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  margin-bottom: 12px !important;
}

.ei-slate-content th,
.ei-slate-content thead td {
  background: #007eaa !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  text-align: left !important;
  padding: 15px 18px !important;
  border: 1px solid #007eaa !important;
}

.ei-slate-content td {
  padding: 15px 18px !important;
  border: 1px solid #d9d9d9 !important;
  vertical-align: top !important;
}

.ei-slate-content tbody tr:nth-child(even) td {
  background: #f7f7f7 !important;
}

.ei-slate-content tbody tr:hover td {
  background: #f1f8fb !important;
}

/* Slate data-table/list-table cleanup */
.ei-slate-content .data,
.ei-slate-content .data table,
.ei-slate-content .table,
.ei-slate-content .table table,
.ei-slate-content .table_container table {
  border-collapse: collapse !important;
}

.ei-slate-content .data th,
.ei-slate-content .table th,
.ei-slate-content .table_container th {
  background: #007eaa !important;
  color: #ffffff !important;
}

/* Forms */
.ei-slate-content form {
  margin: 24px 0 !important;
}

.ei-slate-content fieldset {
  margin: 28px 0 !important;
  padding: 24px !important;
  border: 2px solid #e2e2e2 !important;
  background: #ffffff !important;
}

.ei-slate-content legend {
  padding: 0 8px !important;
  color: #000000 !important;
  font-family: "Gotham A", "Gotham B", Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 22px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

.ei-slate-content label,
.ei-slate-content .form_label,
.ei-slate-content .field_label {
  display: block !important;
  margin: 0 0 8px !important;
  color: #000000 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
}

.ei-slate-content .form_question,
.ei-slate-content .form_response,
.ei-slate-content .form_field,
.ei-slate-content .field {
  margin-bottom: 22px !important;
}

.ei-slate-content input[type="text"],
.ei-slate-content input[type="email"],
.ei-slate-content input[type="tel"],
.ei-slate-content input[type="url"],
.ei-slate-content input[type="search"],
.ei-slate-content input[type="password"],
.ei-slate-content input[type="number"],
.ei-slate-content input[type="date"],
.ei-slate-content input[type="time"],
.ei-slate-content select,
.ei-slate-content textarea {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 48px !important;
  padding: 12px 14px !important;
  color: #111111 !important;
  background: #ffffff !important;
  border: 2px solid #d2d2d2 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.4 !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
}

.ei-slate-content textarea {
  min-height: 132px !important;
  resize: vertical !important;
}

.ei-slate-content input:focus,
.ei-slate-content select:focus,
.ei-slate-content textarea:focus {
  outline: none !important;
  border-color: #0086b6 !important;
  box-shadow: 0 0 0 3px rgba(0,134,182,.16) !important;
}

/* Checkbox/radio controls */
.ei-slate-content input[type="checkbox"],
.ei-slate-content input[type="radio"] {
  width: auto !important;
  min-height: 0 !important;
  margin-right: 8px !important;
  accent-color: #0086b6 !important;
}

.ei-slate-content .checkbox,
.ei-slate-content .radio,
.ei-slate-content .form_checkbox,
.ei-slate-content .form_radio {
  margin-bottom: 10px !important;
}

/* Buttons */
.ei-slate-content input[type="submit"],
.ei-slate-content input[type="button"],
.ei-slate-content button,
.ei-slate-content .button,
.ei-slate-content a.button,
.ei-slate-content .form_button_submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 14px 24px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #000000 !important;
  color: #ffffff !important;
  font-family: "Gotham A", "Gotham B", Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  letter-spacing: .015em !important;
  text-transform: none !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-shadow: 0 3px 0 rgba(0,0,0,.22) !important;
  transition: background-color .2s ease, color .2s ease, transform .15s ease, box-shadow .15s ease !important;
}

.ei-slate-content input[type="submit"]:hover,
.ei-slate-content input[type="button"]:hover,
.ei-slate-content button:hover,
.ei-slate-content .button:hover,
.ei-slate-content a.button:hover,
.ei-slate-content .form_button_submit:hover,
.ei-slate-content input[type="submit"]:focus,
.ei-slate-content input[type="button"]:focus,
.ei-slate-content button:focus,
.ei-slate-content .button:focus,
.ei-slate-content a.button:focus,
.ei-slate-content .form_button_submit:focus {
  background: #ffc600 !important;
  color: #000000 !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 0 rgba(0,0,0,.25) !important;
}

/* Secondary/helper text */
.ei-slate-content small,
.ei-slate-content .help,
.ei-slate-content .hint,
.ei-slate-content .form_help,
.ei-slate-content .description {
  color: #555555 !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

/* Alerts / messages */
.ei-slate-content .error,
.ei-slate-content .errors,
.ei-slate-content .form_error {
  padding: 14px 18px !important;
  border-left: 6px solid #b00020 !important;
  box-shadow: inset 6px 0 0 0 #ffffff !important;
  background: #fff3f4 !important;
  color: #7a0015 !important;
  font-weight: 700 !important;
}

.ei-slate-content .success,
.ei-slate-content .notice,
.ei-slate-content .message {
  padding: 14px 18px !important;
  border-left: 6px solid #0086b6 !important;
  background: #f1f8fb !important;
  color: #111111 !important;
}

/* Card/panel-style content blocks */
.ei-slate-content .card,
.ei-slate-content .panel,
.ei-slate-content .portal-section,
.ei-slate-content .form_container,
.ei-slate-content .content-box {
  background: #ffffff !important;
  border: 1px solid #e1e1e1 !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.06) !important;
}

/* Images and media */
.ei-slate-content img,
.ei-slate-content iframe,
.ei-slate-content video {
  max-width: 100% !important;
}

.ei-slate-content img {
  height: auto !important;
}

/* Responsive refinements */
@media (max-width: 900px) {
  #main-content.ei-site-content {
    padding-top: 38px !important;
    padding-bottom: 52px !important;
  }

  .ei-content-inner {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  .ei-slate-content {
    font-size: 17px !important;
  }

  .ei-slate-content h1 {
    font-size: 36px !important;
  }

  .ei-slate-content h2 {
    font-size: 30px !important;
  }

  .ei-slate-content h3 {
    font-size: 24px !important;
  }

  .ei-slate-content table {
    display: block !important;
    overflow-x: auto !important;
    white-space: nowrap !important;
  }
}


/* =========================================================
   Production-style form match for Slate main content
   Scope: Slate content area only.
   Header/footer are untouched.
   ========================================================= */

/* Keep clean white background */
html,
body,
#main-content,
.ei-site-content,
.ei-content-inner,
.ei-slate-content,
#slate-root {
  background: #ffffff !important;
  background-image: none !important;
}

/* Keep old background experiments off */
body:before,
body:after,
#main-content:before,
#main-content:after,
.ei-site-content:before,
.ei-site-content:after,
.ei-content-inner:before,
.ei-content-inner:after,
.ei-slate-content:before,
.ei-slate-content:after,
#slate-root:before,
#slate-root:after {
  content: none !important;
  display: none !important;
  background: none !important;
  background-image: none !important;
}

/* Lighter, shorter blue-nav shadow */
.ei-mainbar {
  position: relative !important;
  overflow: visible !important;
  z-index: 3001 !important;
  box-shadow: 0 4px 8px rgba(0,0,0,.10) !important;
}

.ei-mainbar:after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -8px !important;
  height: 8px !important;
  pointer-events: none !important;
  background: linear-gradient(to bottom, rgba(0,0,0,.08) 0%, rgba(0,0,0,.025) 55%, rgba(0,0,0,0) 100%) !important;
}

/* Main content spacing similar to Erikson content pages */
#main-content.ei-site-content {
  padding: 58px 0 74px !important;
}

.ei-content-inner {
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding-left: 115px !important;
  padding-right: 115px !important;
}

.ei-slate-content {
  max-width: 1040px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  color: #000000 !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
}

/* Page title/copy above the form */
.ei-slate-content h1 {
  margin: 0 0 18px !important;
  color: #000000 !important;
  font-family: "Gotham A", "Gotham B", Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 52px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -0.035em !important;
}

.ei-slate-content h2 {
  margin: 34px 0 18px !important;
  color: #000000 !important;
  font-family: "Gotham A", "Gotham B", Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 38px !important;
  line-height: 1.14 !important;
  font-weight: 900 !important;
  letter-spacing: -0.025em !important;
}

.ei-slate-content h3 {
  margin: 28px 0 14px !important;
  color: #000000 !important;
  font-family: "Gotham A", "Gotham B", Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 28px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}

.ei-slate-content p {
  max-width: 920px !important;
  margin: 0 0 30px !important;
  color: #111111 !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.7 !important;
  font-weight: 400 !important;
}

/* Form container: match production feel — clean, wide, no Slate gray box */
.ei-slate-content form,
.ei-slate-content .form_container,
.ei-slate-content .form_page,
.ei-slate-content .form-wrapper,
.ei-slate-content .form {
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Slate account/register page often wraps the form in tables/divs */
.ei-slate-content form table,
.ei-slate-content form tbody,
.ei-slate-content form tr,
.ei-slate-content form td,
.ei-slate-content .form_container table,
.ei-slate-content .form_container tbody,
.ei-slate-content .form_container tr,
.ei-slate-content .form_container td {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

/* Field spacing */
.ei-slate-content .form_question,
.ei-slate-content .form_response,
.ei-slate-content .form_field,
.ei-slate-content .field,
.ei-slate-content form > div,
.ei-slate-content form > p {
  margin: 0 0 22px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

/* Labels */
.ei-slate-content label,
.ei-slate-content .form_label,
.ei-slate-content .field_label,
.ei-slate-content .form_question label,
.ei-slate-content form td:first-child {
  display: block !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  color: #000000 !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* Required marker */
.ei-slate-content .required,
.ei-slate-content .form_required,
.ei-slate-content abbr[title="required"],
.ei-slate-content .asterisk {
  color: #0086b6 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

/* Text fields/selects: production-style gray fill, squared edges */
.ei-slate-content input[type="text"],
.ei-slate-content input[type="email"],
.ei-slate-content input[type="tel"],
.ei-slate-content input[type="url"],
.ei-slate-content input[type="search"],
.ei-slate-content input[type="password"],
.ei-slate-content input[type="number"],
.ei-slate-content input[type="date"],
.ei-slate-content input[type="time"],
.ei-slate-content select,
.ei-slate-content textarea {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 13px 15px !important;
  color: #000000 !important;
  background-color: #eeeeee !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  appearance: auto !important;
  -webkit-appearance: auto !important;
  transition: background-color .18s ease, box-shadow .18s ease, outline-color .18s ease !important;
}

.ei-slate-content textarea {
  min-height: 140px !important;
  resize: vertical !important;
}

/* Focus state */
.ei-slate-content input[type="text"]:focus,
.ei-slate-content input[type="email"]:focus,
.ei-slate-content input[type="tel"]:focus,
.ei-slate-content input[type="url"]:focus,
.ei-slate-content input[type="search"]:focus,
.ei-slate-content input[type="password"]:focus,
.ei-slate-content input[type="number"]:focus,
.ei-slate-content input[type="date"]:focus,
.ei-slate-content input[type="time"]:focus,
.ei-slate-content select:focus,
.ei-slate-content textarea:focus {
  background-color: #f4f4f4 !important;
  outline: 2px solid #0086b6 !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}

/* Placeholder text */
.ei-slate-content input::placeholder,
.ei-slate-content textarea::placeholder {
  color: #555555 !important;
  opacity: 1 !important;
}

/* Birthdate / grouped select rows */
.ei-slate-content .form_birthdate,
.ei-slate-content .form_date,
.ei-slate-content .date,
.ei-slate-content .form_responses,
.ei-slate-content .form_response {
  width: 100% !important;
}

.ei-slate-content .form_birthdate select,
.ei-slate-content .form_date select,
.ei-slate-content select[name*="birth"],
.ei-slate-content select[name*="month"],
.ei-slate-content select[name*="day"],
.ei-slate-content select[name*="year"] {
  display: inline-block !important;
  width: auto !important;
  min-width: 130px !important;
  margin-right: 10px !important;
  margin-bottom: 10px !important;
}

/* Checkbox and radio rows */
.ei-slate-content input[type="checkbox"],
.ei-slate-content input[type="radio"] {
  width: auto !important;
  min-height: 0 !important;
  margin: 0 8px 0 0 !important;
  accent-color: #0086b6 !important;
}

.ei-slate-content .checkbox,
.ei-slate-content .radio,
.ei-slate-content .form_checkbox,
.ei-slate-content .form_radio {
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  margin: 0 0 12px !important;
}

.ei-slate-content .checkbox label,
.ei-slate-content .radio label,
.ei-slate-content .form_checkbox label,
.ei-slate-content .form_radio label {
  display: inline !important;
  margin: 0 !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
}

/* Helper text */
.ei-slate-content .help,
.ei-slate-content .hint,
.ei-slate-content .form_help,
.ei-slate-content .description,
.ei-slate-content small {
  display: block !important;
  margin-top: 6px !important;
  color: #555555 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
}

/* Production-style button: black block, yellow hover */
.ei-slate-content input[type="submit"],
.ei-slate-content input[type="button"],
.ei-slate-content button,
.ei-slate-content .button,
.ei-slate-content a.button,
.ei-slate-content .form_button_submit,
.ei-slate-content .action button,
.ei-slate-content .form_actions button,
.ei-slate-content .form_action button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 150px !important;
  min-height: 50px !important;
  margin: 8px 0 0 !important;
  padding: 15px 28px !important;
  color: #ffffff !important;
  background-color: #000000 !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: "Gotham A", "Gotham B", Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  text-align: center !important;
  text-transform: none !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: background-color .18s ease, color .18s ease, transform .18s ease !important;
}

.ei-slate-content input[type="submit"]:hover,
.ei-slate-content input[type="button"]:hover,
.ei-slate-content button:hover,
.ei-slate-content .button:hover,
.ei-slate-content a.button:hover,
.ei-slate-content .form_button_submit:hover,
.ei-slate-content .action button:hover,
.ei-slate-content .form_actions button:hover,
.ei-slate-content .form_action button:hover,
.ei-slate-content input[type="submit"]:focus,
.ei-slate-content input[type="button"]:focus,
.ei-slate-content button:focus,
.ei-slate-content .button:focus,
.ei-slate-content a.button:focus,
.ei-slate-content .form_button_submit:focus,
.ei-slate-content .action button:focus,
.ei-slate-content .form_actions button:focus,
.ei-slate-content .form_action button:focus {
  color: #000000 !important;
  background-color: #ffc600 !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
}

/* Form validation/errors */
.ei-slate-content .error,
.ei-slate-content .errors,
.ei-slate-content .form_error,
.ei-slate-content .form_validation_error {
  margin: 0 0 18px !important;
  padding: 14px 18px !important;
  color: #7a0015 !important;
  background: #fff3f4 !important;
  border: 0 !important;
  border-left: 6px solid #b00020 !important;
  box-shadow: inset 6px 0 0 0 #ffffff !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}

/* Remove Slate default table borders within account/register form */
.ei-slate-content form table,
.ei-slate-content form th,
.ei-slate-content form td {
  border: 0 !important;
}

/* Keep production-style input width on smaller screens */
@media (max-width: 900px) {
  #main-content.ei-site-content {
    padding: 38px 0 54px !important;
  }

  .ei-content-inner {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  .ei-slate-content {
    max-width: 100% !important;
  }

  .ei-slate-content h1 {
    font-size: 38px !important;
  }

  .ei-slate-content form,
  .ei-slate-content .form_container,
  .ei-slate-content .form_page {
    max-width: 100% !important;
  }

  .ei-slate-content .form_birthdate select,
  .ei-slate-content .form_date select,
  .ei-slate-content select[name*="birth"],
  .ei-slate-content select[name*="month"],
  .ei-slate-content select[name*="day"],
  .ei-slate-content select[name*="year"] {
    width: 100% !important;
    min-width: 0 !important;
    margin-right: 0 !important;
  }
}


/* =========================================================
   Production form wrapper attempt v3
   - Purple starts at the table/form-fields area only
   - Text before the table stays outside the purple box
   - Entire table/form-fields area is purple, including cells/inner wrappers
   - Header/footer untouched
   ========================================================= */

/* Dedicated purple shell added around the first form table by JS */
.ei-slate-content .ei-production-table-shell {
  width: 100% !important;
  max-width: 760px !important;
  margin: 26px 0 0 !important;
  padding: 42px 48px 46px !important;
  background: #5f259f !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #ffffff !important;
  box-sizing: border-box !important;
}

/* Make every internal Slate/table wrapper inside the shell purple/transparent so the inside is not white */
.ei-slate-content .ei-production-table-shell table,
.ei-slate-content .ei-production-table-shell tbody,
.ei-slate-content .ei-production-table-shell tr,
.ei-slate-content .ei-production-table-shell th,
.ei-slate-content .ei-production-table-shell td,
.ei-slate-content .ei-production-table-shell .form_container,
.ei-slate-content .ei-production-table-shell .form_page,
.ei-slate-content .ei-production-table-shell .form_pages,
.ei-slate-content .ei-production-table-shell .form_question,
.ei-slate-content .ei-production-table-shell .form_responses,
.ei-slate-content .ei-production-table-shell .form_response,
.ei-slate-content .ei-production-table-shell .form_field,
.ei-slate-content .ei-production-table-shell .field,
.ei-slate-content .ei-production-table-shell .action,
.ei-slate-content .ei-production-table-shell .form_action,
.ei-slate-content .ei-production-table-shell .form_actions {
  background: #5f259f !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #ffffff !important;
}

/* Stacked table layout */
.ei-slate-content .ei-production-table-shell table,
.ei-slate-content .ei-production-table-shell tbody {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

.ei-slate-content .ei-production-table-shell tr {
  display: block !important;
  width: 100% !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
}

.ei-slate-content .ei-production-table-shell th,
.ei-slate-content .ei-production-table-shell td {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  vertical-align: top !important;
}

/* Labels directly above inputs */
.ei-slate-content .ei-production-table-shell label,
.ei-slate-content .ei-production-table-shell .form_label,
.ei-slate-content .ei-production-table-shell .field_label,
.ei-slate-content .ei-production-table-shell th,
.ei-slate-content .ei-production-table-shell td:first-child {
  display: block !important;
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-align: left !important;
}

/* Ensure field cells do not sit beside labels */
.ei-slate-content .ei-production-table-shell td + td,
.ei-slate-content .ei-production-table-shell th + td {
  margin-top: 0 !important;
}

/* Inputs remain white/rounded inside the purple shell */
.ei-slate-content .ei-production-table-shell input[type="text"],
.ei-slate-content .ei-production-table-shell input[type="email"],
.ei-slate-content .ei-production-table-shell input[type="tel"],
.ei-slate-content .ei-production-table-shell input[type="url"],
.ei-slate-content .ei-production-table-shell input[type="search"],
.ei-slate-content .ei-production-table-shell input[type="password"],
.ei-slate-content .ei-production-table-shell input[type="number"],
.ei-slate-content .ei-production-table-shell input[type="date"],
.ei-slate-content .ei-production-table-shell input[type="time"],
.ei-slate-content .ei-production-table-shell select,
.ei-slate-content .ei-production-table-shell textarea {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  color: #000000 !important;
  background: #ffffff !important;
  background-image: none !important;
  border: 2px solid transparent !important;
  border-radius: 10px !important;
  outline: 0 !important;
  box-shadow: none !important;
  font-family: Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  box-sizing: border-box !important;
  transition: border-color .18s ease, box-shadow .18s ease !important;
}

.ei-slate-content .ei-production-table-shell textarea {
  min-height: 135px !important;
  resize: vertical !important;
}

/* Keep the yellow focus state */
.ei-slate-content .ei-production-table-shell input[type="text"]:focus,
.ei-slate-content .ei-production-table-shell input[type="email"]:focus,
.ei-slate-content .ei-production-table-shell input[type="tel"]:focus,
.ei-slate-content .ei-production-table-shell input[type="url"]:focus,
.ei-slate-content .ei-production-table-shell input[type="search"]:focus,
.ei-slate-content .ei-production-table-shell input[type="password"]:focus,
.ei-slate-content .ei-production-table-shell input[type="number"]:focus,
.ei-slate-content .ei-production-table-shell input[type="date"]:focus,
.ei-slate-content .ei-production-table-shell input[type="time"]:focus,
.ei-slate-content .ei-production-table-shell select:focus,
.ei-slate-content .ei-production-table-shell textarea:focus {
  border-color: #ffc600 !important;
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(255,198,0,.45) !important;
}

/* Required markers */
.ei-slate-content .ei-production-table-shell .required,
.ei-slate-content .ei-production-table-shell .form_required,
.ei-slate-content .ei-production-table-shell abbr[title="required"],
.ei-slate-content .ei-production-table-shell .asterisk {
  color: #ffc600 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

/* Submit/action row belongs inside the purple box */
.ei-slate-content .ei-production-table-shell .action,
.ei-slate-content .ei-production-table-shell .form_action,
.ei-slate-content .ei-production-table-shell .form_actions {
  margin: 8px 0 0 !important;
  padding: 0 !important;
}

/* Button: yellow to black animation */
.ei-slate-content .ei-production-table-shell input[type="submit"],
.ei-slate-content .ei-production-table-shell input[type="button"],
.ei-slate-content .ei-production-table-shell button,
.ei-slate-content .ei-production-table-shell .button,
.ei-slate-content .ei-production-table-shell .form_button_submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 150px !important;
  min-height: 50px !important;
  margin: 10px 0 0 !important;
  padding: 15px 30px !important;
  color: #000000 !important;
  background-color: #ffc600 !important;
  background-image: linear-gradient(to right, #000000 0%, #000000 50%, #ffc600 50%, #ffc600 100%) !important;
  background-size: 205% 100% !important;
  background-position: 100% 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: "Gotham A", "Gotham B", Roboto, Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-align: center !important;
  text-transform: none !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: background-position .28s ease, color .22s ease, transform .18s ease !important;
}

.ei-slate-content .ei-production-table-shell input[type="submit"]:hover,
.ei-slate-content .ei-production-table-shell input[type="button"]:hover,
.ei-slate-content .ei-production-table-shell button:hover,
.ei-slate-content .ei-production-table-shell .button:hover,
.ei-slate-content .ei-production-table-shell .form_button_submit:hover,
.ei-slate-content .ei-production-table-shell input[type="submit"]:focus,
.ei-slate-content .ei-production-table-shell input[type="button"]:focus,
.ei-slate-content .ei-production-table-shell button:focus,
.ei-slate-content .ei-production-table-shell .button:focus,
.ei-slate-content .ei-production-table-shell .form_button_submit:focus {
  color: #ffffff !important;
  background-position: 0 0 !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
}

/* Hidden fields/scripts stay hidden */
.ei-slate-content .ei-production-table-shell input[type="hidden"],
.ei-slate-content .ei-production-table-shell script,
.ei-slate-content .ei-production-table-shell style {
  display: none !important;
}

/* Mobile */
@media (max-width: 900px) {
  .ei-slate-content .ei-production-table-shell {
    max-width: 100% !important;
    padding: 32px 24px 36px !important;
  }
}


/* =========================================================
   Form table purple wrapper tweaks v2
   - Purple changed to #5f259f
   - Purple box rounded
   - Fixes white bars over labels/rows
   - Makes all fields consistently rounded
   - Removes hover effects from fields
   - Keeps yellow focus outline
   - Makes 3-select rows sit side by side
   ========================================================= */

:root {
  --ei-form-purple: #5f259f;
}

/* Purple shell color + rounded corners */
.ei-slate-content .ei-production-table-shell {
  background: #5f259f !important;
  background-color: #5f259f !important;
  background-image: none !important;
  border-radius: 16px !important;
  overflow: visible !important;
}

/* Force every inner table/form wrapper to purple so no white bars show through */
.ei-slate-content .ei-production-table-shell,
.ei-slate-content .ei-production-table-shell *,
.ei-slate-content .ei-production-table-shell table,
.ei-slate-content .ei-production-table-shell tbody,
.ei-slate-content .ei-production-table-shell thead,
.ei-slate-content .ei-production-table-shell tfoot,
.ei-slate-content .ei-production-table-shell tr,
.ei-slate-content .ei-production-table-shell th,
.ei-slate-content .ei-production-table-shell td,
.ei-slate-content .ei-production-table-shell div:not(.form_responses),
.ei-slate-content .ei-production-table-shell .form_container,
.ei-slate-content .ei-production-table-shell .form_page,
.ei-slate-content .ei-production-table-shell .form_pages,
.ei-slate-content .ei-production-table-shell .form_question,
.ei-slate-content .ei-production-table-shell .form_label,
.ei-slate-content .ei-production-table-shell .form_responses,
.ei-slate-content .ei-production-table-shell .form_response,
.ei-slate-content .ei-production-table-shell .form_field,
.ei-slate-content .ei-production-table-shell .field,
.ei-slate-content .ei-production-table-shell .action,
.ei-slate-content .ei-production-table-shell .form_action,
.ei-slate-content .ei-production-table-shell .form_actions {
  background-color: #5f259f !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* Prevent any table hover/stripe styling from showing inside the purple form */
.ei-slate-content .ei-production-table-shell tr:hover,
.ei-slate-content .ei-production-table-shell tr:hover th,
.ei-slate-content .ei-production-table-shell tr:hover td,
.ei-slate-content .ei-production-table-shell tbody tr:nth-child(even),
.ei-slate-content .ei-production-table-shell tbody tr:nth-child(even) th,
.ei-slate-content .ei-production-table-shell tbody tr:nth-child(even) td,
.ei-slate-content .ei-production-table-shell tbody tr:nth-child(odd),
.ei-slate-content .ei-production-table-shell tbody tr:nth-child(odd) th,
.ei-slate-content .ei-production-table-shell tbody tr:nth-child(odd) td {
  background-color: #5f259f !important;
  background-image: none !important;
}

/* Labels: no white label backgrounds, keep directly above fields */
.ei-slate-content .ei-production-table-shell label,
.ei-slate-content .ei-production-table-shell .form_label,
.ei-slate-content .ei-production-table-shell .field_label,
.ei-slate-content .ei-production-table-shell th,
.ei-slate-content .ei-production-table-shell td:first-child {
  background-color: #5f259f !important;
  background-image: none !important;
  color: #ffffff !important;
  margin-bottom: 8px !important;
  padding: 0 !important;
  line-height: 1.3 !important;
}

/* Field wrappers should not create bars */
.ei-slate-content .ei-production-table-shell .form_responses,
.ei-slate-content .ei-production-table-shell td:last-child {
  background-color: #5f259f !important;
  background-image: none !important;
}

/* All controls: same rounded style */
.ei-slate-content .ei-production-table-shell input[type="text"],
.ei-slate-content .ei-production-table-shell input[type="email"],
.ei-slate-content .ei-production-table-shell input[type="tel"],
.ei-slate-content .ei-production-table-shell input[type="url"],
.ei-slate-content .ei-production-table-shell input[type="search"],
.ei-slate-content .ei-production-table-shell input[type="password"],
.ei-slate-content .ei-production-table-shell input[type="number"],
.ei-slate-content .ei-production-table-shell input[type="date"],
.ei-slate-content .ei-production-table-shell input[type="time"],
.ei-slate-content .ei-production-table-shell select,
.ei-slate-content .ei-production-table-shell textarea {
  background-color: #ffffff !important;
  background-image: none !important;
  border: 2px solid transparent !important;
  border-radius: 10px !important;
  color: #000000 !important;
  box-shadow: none !important;
}

/* No hover change on form fields */
.ei-slate-content .ei-production-table-shell input[type="text"]:hover,
.ei-slate-content .ei-production-table-shell input[type="email"]:hover,
.ei-slate-content .ei-production-table-shell input[type="tel"]:hover,
.ei-slate-content .ei-production-table-shell input[type="url"]:hover,
.ei-slate-content .ei-production-table-shell input[type="search"]:hover,
.ei-slate-content .ei-production-table-shell input[type="password"]:hover,
.ei-slate-content .ei-production-table-shell input[type="number"]:hover,
.ei-slate-content .ei-production-table-shell input[type="date"]:hover,
.ei-slate-content .ei-production-table-shell input[type="time"]:hover,
.ei-slate-content .ei-production-table-shell select:hover,
.ei-slate-content .ei-production-table-shell textarea:hover {
  background-color: #ffffff !important;
  background-image: none !important;
  border-color: transparent !important;
  color: #000000 !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Keep yellow focus outline */
.ei-slate-content .ei-production-table-shell input[type="text"]:focus,
.ei-slate-content .ei-production-table-shell input[type="email"]:focus,
.ei-slate-content .ei-production-table-shell input[type="tel"]:focus,
.ei-slate-content .ei-production-table-shell input[type="url"]:focus,
.ei-slate-content .ei-production-table-shell input[type="search"]:focus,
.ei-slate-content .ei-production-table-shell input[type="password"]:focus,
.ei-slate-content .ei-production-table-shell input[type="number"]:focus,
.ei-slate-content .ei-production-table-shell input[type="date"]:focus,
.ei-slate-content .ei-production-table-shell input[type="time"]:focus,
.ei-slate-content .ei-production-table-shell select:focus,
.ei-slate-content .ei-production-table-shell textarea:focus {
  background-color: #ffffff !important;
  border-color: #ffc600 !important;
  box-shadow: 0 0 0 3px rgba(255,198,0,.45) !important;
  outline: 0 !important;
}

/* Three dropdown rows: side by side */
.ei-slate-content .ei-production-table-shell tr.ei-three-select-row td:last-child,
.ei-slate-content .ei-production-table-shell tr.ei-three-select-row .form_responses {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  align-items: center !important;
  width: 100% !important;
}

.ei-slate-content .ei-production-table-shell tr.ei-three-select-row select,
.ei-slate-content .ei-production-table-shell .form_question.ei-three-select-row select,
.ei-slate-content .ei-production-table-shell .ei-three-select-row select {
  display: block !important;
  flex: 1 1 0 !important;
  width: 33.333% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
}

/* Also catch birth/date select rows even if the JS class cannot be applied */
.ei-slate-content .ei-production-table-shell .form_birthdate,
.ei-slate-content .ei-production-table-shell .form_date,
.ei-slate-content .ei-production-table-shell .date {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
}

.ei-slate-content .ei-production-table-shell .form_birthdate select,
.ei-slate-content .ei-production-table-shell .form_date select,
.ei-slate-content .ei-production-table-shell .date select {
  flex: 1 1 0 !important;
  width: 33.333% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

/* Mobile: allow the 3 dropdowns to stack only on small screens */
@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-slate-content .ei-production-table-shell tr.ei-three-select-row td:last-child,
  .ei-slate-content .ei-production-table-shell tr.ei-three-select-row .form_responses,
  .ei-slate-content .ei-production-table-shell .form_birthdate,
  .ei-slate-content .ei-production-table-shell .form_date,
  .ei-slate-content .ei-production-table-shell .date {
    flex-direction: column !important;
    gap: 10px !important;
  }

  .ei-slate-content .ei-production-table-shell tr.ei-three-select-row select,
  .ei-slate-content .ei-production-table-shell .form_birthdate select,
  .ei-slate-content .ei-production-table-shell .form_date select,
  .ei-slate-content .ei-production-table-shell .date select {
    width: 100% !important;
  }
}




/* =========================================================
   Clean Montserrat + Birthdate dropdown fix
   - Starts from the cleaner purple-form version
   - Removes the competing persistent dropdown scripts
   - Uses Montserrat as Gotham substitute
   - Keeps dropdowns clickable
   - Keeps Birthdate dropdowns directly under Birthdate
   - Keeps purple-box shadow from the version you liked
   ========================================================= */

500;600;700;800;900&display=swap");

/* Blue navigation shadow */
.ei-header,
.ei-mainbar {
  position: relative !important;
  overflow: visible !important;
}

.ei-header {
  z-index: 3000 !important;
}

.ei-mainbar {
  z-index: 3001 !important;
  box-shadow:
    0 9px 14px rgba(0,0,0,.16),
    0 2px 4px rgba(0,0,0,.10) !important;
}

.ei-mainbar:after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -12px !important;
  height: 12px !important;
  pointer-events: none !important;
  background: linear-gradient(to bottom, rgba(0,0,0,.12) 0%, rgba(0,0,0,.045) 55%, rgba(0,0,0,0) 100%) !important;
}

/* Let shadows show */
#main-content,
#main-content.ei-site-content,
#main-content .ei-content-inner,
#main-content .ei-slate-content,
#slate-root {
  overflow: visible !important;
}

/* Center Slate content/forms */
#main-content.ei-site-content {
  padding-top: 58px !important;
  padding-bottom: 74px !important;
  background: #ffffff !important;
}

#main-content .ei-content-inner {
  max-width: 1440px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 115px !important;
  padding-right: 115px !important;
}

#main-content .ei-slate-content {
  width: 100% !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 0 !important;
  text-align: left !important;
  background: #ffffff !important;
}

#main-content .ei-slate-content form,
#main-content .ei-slate-content .form_container,
#main-content .ei-slate-content .form_page,
#main-content .ei-slate-content .ei-production-table-shell {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Gotham-like substitute for Slate H1 */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h1.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-heading,
#slate-root h1,
#slate-root h1.ei-prod-heading {
  display: block !important;
  max-width: 1040px !important;
  margin: 0 auto 22px auto !important;
  padding: 0 !important;
  color: #000000 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 58px !important;
  line-height: 1.02 !important;
  font-weight: 900 !important;
  letter-spacing: -0.055em !important;
  text-transform: none !important;
  text-align: left !important;
  background: transparent !important;
}

/* Gotham-like substitute for Slate paragraph copy */
#main-content .ei-slate-content p,
#main-content .ei-slate-content p.ei-prod-copy,
#main-content .ei-slate-content .ei-prod-copy,
#slate-root p,
#slate-root p.ei-prod-copy {
  display: block !important;
  max-width: 1040px !important;
  margin: 0 auto 32px auto !important;
  padding: 0 !important;
  color: #000000 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 20px !important;
  line-height: 1.58 !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  text-align: left !important;
  background: transparent !important;
}

#main-content .ei-slate-content h1 *,
#main-content .ei-slate-content p * {
  font-family: inherit !important;
  color: inherit !important;
}

/* Purple form shell */
#main-content .ei-slate-content .ei-production-table-shell,
.ei-slate-content .ei-production-table-shell {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 1040px !important;
  margin: 30px auto 0 auto !important;
  padding: 44px 72px 48px !important;
  background: #5f259f !important;
  background-color: #5f259f !important;
  background-image: none !important;
  border-radius: 6px !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.08),
    0 0 22px rgba(0,0,0,.22),
    0 8px 18px rgba(0,0,0,.16) !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Keep form copy white inside purple box */
#main-content .ei-production-table-shell p,
#main-content .ei-production-table-shell .form_question.form_p .form_label p,
#main-content .ei-production-table-shell .form_question[data-type="p"] .form_label p {
  max-width: none !important;
  margin: 0 0 14px 0 !important;
  color: #ffffff !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}

/* Keep inside purple */
#main-content .ei-production-table-shell table,
#main-content .ei-production-table-shell tbody,
#main-content .ei-production-table-shell thead,
#main-content .ei-production-table-shell tfoot,
#main-content .ei-production-table-shell tr,
#main-content .ei-production-table-shell th,
#main-content .ei-production-table-shell td,
#main-content .ei-production-table-shell div,
#main-content .ei-production-table-shell .form_container,
#main-content .ei-production-table-shell .form_page,
#main-content .ei-production-table-shell .form_pages,
#main-content .ei-production-table-shell .form_question,
#main-content .ei-production-table-shell .form_label,
#main-content .ei-production-table-shell .form_responses,
#main-content .ei-production-table-shell .form_response,
#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  background: #5f259f !important;
  background-color: #5f259f !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* Labels */
#main-content .ei-production-table-shell label,
#main-content .ei-production-table-shell .form_label,
#main-content .ei-production-table-shell .field_label,
#main-content .ei-production-table-shell th,
#main-content .ei-production-table-shell td:first-child {
  display: block !important;
  float: none !important;
  width: 100% !important;
  margin: 0 0 8px 0 !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  text-align: left !important;
}

/* Fields */
#main-content .ei-production-table-shell input[type="text"],
#main-content .ei-production-table-shell input[type="email"],
#main-content .ei-production-table-shell input[type="tel"],
#main-content .ei-production-table-shell input[type="url"],
#main-content .ei-production-table-shell input[type="search"],
#main-content .ei-production-table-shell input[type="password"],
#main-content .ei-production-table-shell input[type="number"],
#main-content .ei-production-table-shell input[type="date"],
#main-content .ei-production-table-shell input[type="time"],
#main-content .ei-production-table-shell select,
#main-content .ei-production-table-shell textarea {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  color: #000000 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  border: 2px solid transparent !important;
  border-radius: 5px !important;
  outline: 0 !important;
  box-shadow: none !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  box-sizing: border-box !important;
}

/* White dropdown menu/options */
#main-content .ei-production-table-shell select,
#main-content .ei-production-table-shell select option,
#main-content .ei-production-table-shell select optgroup {
  color: #000000 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
}

/* No field hover behavior */
#main-content .ei-production-table-shell input[type="text"]:hover,
#main-content .ei-production-table-shell input[type="email"]:hover,
#main-content .ei-production-table-shell input[type="tel"]:hover,
#main-content .ei-production-table-shell input[type="url"]:hover,
#main-content .ei-production-table-shell input[type="search"]:hover,
#main-content .ei-production-table-shell input[type="password"]:hover,
#main-content .ei-production-table-shell input[type="number"]:hover,
#main-content .ei-production-table-shell input[type="date"]:hover,
#main-content .ei-production-table-shell input[type="time"]:hover,
#main-content .ei-production-table-shell select:hover,
#main-content .ei-production-table-shell textarea:hover {
  color: #000000 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Yellow focus state */
#main-content .ei-production-table-shell input[type="text"]:focus,
#main-content .ei-production-table-shell input[type="email"]:focus,
#main-content .ei-production-table-shell input[type="tel"]:focus,
#main-content .ei-production-table-shell input[type="url"]:focus,
#main-content .ei-production-table-shell input[type="search"]:focus,
#main-content .ei-production-table-shell input[type="password"]:focus,
#main-content .ei-production-table-shell input[type="number"]:focus,
#main-content .ei-production-table-shell input[type="date"]:focus,
#main-content .ei-production-table-shell input[type="time"]:focus,
#main-content .ei-production-table-shell select:focus,
#main-content .ei-production-table-shell textarea:focus {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border-color: #ffc600 !important;
  box-shadow: 0 0 0 3px rgba(255,198,0,.45) !important;
  outline: 0 !important;
}

/* Birthdate dropdowns: directly under Birthdate, one row, clickable */
#main-content .ei-production-table-shell .ei-birthdate-row,
#main-content .ei-production-table-shell tr.ei-birthdate-row,
#main-content .ei-production-table-shell .form_question.ei-birthdate-row {
  display: block !important;
  width: 100% !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  background: #5f259f !important;
  background-color: #5f259f !important;
}

#main-content .ei-production-table-shell .ei-birthdate-row th,
#main-content .ei-production-table-shell .ei-birthdate-row td,
#main-content .ei-production-table-shell .ei-birthdate-row .form_label,
#main-content .ei-production-table-shell .ei-birthdate-row .form_responses {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #5f259f !important;
  background-color: #5f259f !important;
}

#main-content .ei-production-table-shell .ei-birthdate-row th,
#main-content .ei-production-table-shell .ei-birthdate-row td:first-child,
#main-content .ei-production-table-shell .ei-birthdate-row .form_label {
  margin: 0 0 8px 0 !important;
}

#main-content .ei-production-table-shell .ei-birthdate-select-grid {
  display: grid !important;
  grid-template-columns: minmax(0,1.35fr) minmax(0,.75fr) minmax(0,1fr) !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-content: stretch !important;
  justify-items: stretch !important;
  align-items: stretch !important;
  background: #5f259f !important;
  background-color: #5f259f !important;
  pointer-events: auto !important;
  position: relative !important;
  z-index: 3 !important;
}

#main-content .ei-production-table-shell .ei-birthdate-select-grid select {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  flex: none !important;
  pointer-events: auto !important;
  position: relative !important;
  z-index: 4 !important;
}

/* Uppercase all Slate-content buttons */
#main-content .ei-slate-content button,
#main-content .ei-slate-content input[type="submit"],
#main-content .ei-slate-content input[type="button"],
#main-content .ei-slate-content .button,
#main-content .ei-slate-content a.button,
#main-content .ei-slate-content .form_button_submit {
  text-transform: uppercase !important;
}

@media (max-width: 900px) {
  #main-content .ei-content-inner {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  #main-content .ei-slate-content h1,
  #slate-root h1 {
    font-size: 42px !important;
  }

  #main-content .ei-slate-content p,
  #slate-root p {
    font-size: 18px !important;
  }

  #main-content .ei-slate-content .ei-production-table-shell {
    padding: 32px 24px 36px !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-production-table-shell .ei-birthdate-select-grid {
    grid-template-columns: 1fr !important;
  }
}



/* =========================================================
   Final font + Birthdate position tune
   - P color changed to #4e4b48
   - H1 changed to normal/non-bold weight
   - Birthdate dropdowns forced into the same actual row under Birthdate
   ========================================================= */

/* H1 should not be bold */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h1.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-heading,
#slate-root h1,
#slate-root h1.ei-prod-heading {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-weight: 400 !important;
  color: #000000 !important;
}

/* Paragraph color requested */
#main-content .ei-slate-content p,
#main-content .ei-slate-content p.ei-prod-copy,
#main-content .ei-slate-content .ei-prod-copy,
#slate-root p,
#slate-root p.ei-prod-copy {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  color: #4e4b48 !important;
}

/* Keep form-copy paragraphs white inside purple box */
#main-content .ei-production-table-shell p,
#main-content .ei-production-table-shell .form_question.form_p .form_label p,
#main-content .ei-production-table-shell .form_question[data-type="p"] .form_label p {
  color: #ffffff !important;
}

/* Birthdate row: remove extra vertical spacing and put controls directly under label */
#main-content .ei-production-table-shell .ei-birthdate-row,
#main-content .ei-production-table-shell tr.ei-birthdate-row,
#main-content .ei-production-table-shell .form_question.ei-birthdate-row,
#main-content .ei-production-table-shell .ei-birthdate-row-fixed {
  display: block !important;
  width: 100% !important;
  margin: 0 0 18px 0 !important;
  padding: 0 !important;
  background: #5f259f !important;
  background-color: #5f259f !important;
}

#main-content .ei-production-table-shell .ei-birthdate-row th,
#main-content .ei-production-table-shell .ei-birthdate-row td,
#main-content .ei-production-table-shell .ei-birthdate-row .form_label,
#main-content .ei-production-table-shell .ei-birthdate-row .form_responses,
#main-content .ei-production-table-shell .ei-birthdate-row-fixed th,
#main-content .ei-production-table-shell .ei-birthdate-row-fixed td,
#main-content .ei-production-table-shell .ei-birthdate-row-fixed .form_label,
#main-content .ei-production-table-shell .ei-birthdate-row-fixed .form_responses {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #5f259f !important;
  background-color: #5f259f !important;
}

#main-content .ei-production-table-shell .ei-birthdate-row th,
#main-content .ei-production-table-shell .ei-birthdate-row td:first-child,
#main-content .ei-production-table-shell .ei-birthdate-row .form_label,
#main-content .ei-production-table-shell .ei-birthdate-row-fixed th,
#main-content .ei-production-table-shell .ei-birthdate-row-fixed td:first-child,
#main-content .ei-production-table-shell .ei-birthdate-row-fixed .form_label {
  margin: 0 0 8px 0 !important;
  padding: 0 !important;
}

#main-content .ei-production-table-shell .ei-birthdate-select-grid,
#main-content .ei-production-table-shell .ei-birthdate-grid-final {
  display: grid !important;
  grid-template-columns: minmax(0,1.35fr) minmax(0,.75fr) minmax(0,1fr) !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-content: stretch !important;
  justify-items: stretch !important;
  align-items: stretch !important;
  background: #5f259f !important;
  background-color: #5f259f !important;
  pointer-events: auto !important;
  position: relative !important;
  z-index: 10 !important;
}

#main-content .ei-production-table-shell .ei-birthdate-select-grid select,
#main-content .ei-production-table-shell .ei-birthdate-grid-final select {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  flex: none !important;
  pointer-events: auto !important;
  position: relative !important;
  z-index: 11 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #000000 !important;
}

/* Rows that used to hold the extra date dropdowns are hidden after the selects move */
#main-content .ei-production-table-shell .ei-hidden-birthdate-source-row {
  display: none !important;
}



/* =========================================================
   Final polish: shadow, H1 size, button position, mobile header/footer
   - Desktop form layout preserved
   - Mobile-only header/footer fixes are scoped under max-width
   ========================================================= */

/* Restore the subtle around-the-box purple form shadow */
#main-content .ei-slate-content .ei-production-table-shell,
.ei-slate-content .ei-production-table-shell {
  position: relative !important;
  overflow: visible !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.08),
    0 0 22px rgba(0,0,0,.22),
    0 8px 18px rgba(0,0,0,.16) !important;
}

/* Slightly spread the blue navigation bar shadow */
.ei-mainbar {
  position: relative !important;
  overflow: visible !important;
  z-index: 3001 !important;
  box-shadow:
    0 11px 22px rgba(0,0,0,.18),
    0 3px 7px rgba(0,0,0,.11) !important;
}

.ei-mainbar:after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -14px !important;
  height: 14px !important;
  pointer-events: none !important;
  background: linear-gradient(to bottom, rgba(0,0,0,.13) 0%, rgba(0,0,0,.055) 55%, rgba(0,0,0,0) 100%) !important;
}

/* H1 a little smaller, still not bold */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h1.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-heading,
#slate-root h1,
#slate-root h1.ei-prod-heading {
  font-size: 54px !important;
  font-weight: 400 !important;
}

/* Move Continue/action button up slightly */
#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  margin-top: -18px !important;
  padding-top: 0 !important;
}

#main-content .ei-production-table-shell .form_button_submit,
#main-content .ei-production-table-shell button,
#main-content .ei-production-table-shell input[type="submit"],
#main-content .ei-production-table-shell input[type="button"] {
  margin-top: 0 !important;
}

/* Mobile-only corrections: do not change desktop/laptop */
@media (max-width: 980px) {
  /* Hide full desktop nav links on mobile; keep Menu button */
  .ei-mainbar .ei-nav,
  .ei-mainbar .ei-menu,
  .ei-mainbar .ei-menu-item,
  .ei-mainbar .ei-menu-link,
  .ei-mainbar .ei-apply {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .ei-mobile-toggle {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    margin-left: auto !important;
  }

  .ei-mainbar,
  .ei-mainbar .ei-container {
    height: 86px !important;
  }

  .ei-mainbar .ei-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  .ei-logo {
    margin-right: 12px !important;
  }

  /* Mobile footer: left align, avoid cutoff, and give right-side footer groups breathing room */
  .ei-footer,
  .ei-footer * {
    box-sizing: border-box !important;
  }

  .ei-footer-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  .ei-footer-left,
  .ei-footer-right {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    text-align: left !important;
    justify-items: start !important;
  }

  .ei-footer-left *,
  .ei-footer-right * {
    text-align: left !important;
  }

  .ei-footer-logo,
  .ei-address,
  .ei-nonprofit,
  .ei-newsletter-copy {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
  }

  .ei-footer-buttons {
    justify-content: flex-start !important;
    align-items: flex-start !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    gap: 10px !important;
  }

  .ei-footer-right {
    padding-top: 42px !important;
  }

  .ei-footer-menu-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 34px !important;
    row-gap: 30px !important;
    width: 100% !important;
  }

  .ei-footer-col {
    margin-bottom: 22px !important;
    min-width: 0 !important;
  }

  .ei-footer-col li {
    margin-bottom: 14px !important;
  }

  .ei-social ul {
    display: flex !important;
    justify-content: flex-start !important;
    gap: 18px !important;
    flex-wrap: wrap !important;
  }

  .ei-footer-bottom-inner {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    text-align: left !important;
  }

  .ei-footer-bottom ul {
    display: block !important;
    margin-top: 12px !important;
  }

  .ei-footer-bottom li {
    margin-bottom: 8px !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-footer-left,
  .ei-footer-right {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .ei-footer-menu-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 24px !important;
    row-gap: 26px !important;
  }

  #main-content .ei-slate-content h1,
  #slate-root h1 {
    font-size: 40px !important;
  }
}

@media (max-width: 430px) {
  .ei-footer-menu-grid {
    grid-template-columns: 1fr !important;
    row-gap: 18px !important;
  }
}



/* =========================================================
   Final requested tune
   - Stronger visible purple-box shadow
   - H1 slightly smaller
   - Blue nav shadow spreads lower
   - Mobile-only footer social/legal spacing fixes
   ========================================================= */

/* Make the purple-box shadow clearly visible */
#main-content .ei-slate-content .ei-production-table-shell,
.ei-slate-content .ei-production-table-shell {
  position: relative !important;
  z-index: 2 !important;
  overflow: visible !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.12),
    0 0 28px rgba(0,0,0,.30),
    0 10px 24px rgba(0,0,0,.20) !important;
  filter:
    drop-shadow(0 0 12px rgba(0,0,0,.22))
    drop-shadow(0 8px 12px rgba(0,0,0,.16)) !important;
}

/* Slightly smaller H1 */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h1.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-heading,
#slate-root h1,
#slate-root h1.ei-prod-heading {
  font-size: 52px !important;
  font-weight: 400 !important;
}

/* Increase downward spread of blue nav shadow */
.ei-mainbar {
  position: relative !important;
  overflow: visible !important;
  z-index: 3001 !important;
  box-shadow:
    0 15px 28px rgba(0,0,0,.20),
    0 4px 9px rgba(0,0,0,.12) !important;
}

.ei-mainbar:after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -20px !important;
  height: 20px !important;
  pointer-events: none !important;
  background: linear-gradient(to bottom, rgba(0,0,0,.15) 0%, rgba(0,0,0,.075) 48%, rgba(0,0,0,0) 100%) !important;
}

/* Mobile-only footer fixes */
@media (max-width: 980px) {
  /* Keep desktop footer unchanged; only reorganize mobile footer right column */
  .ei-footer-right {
    padding-left: 24px !important;
    padding-right: 24px !important;
    text-align: left !important;
  }

  .ei-footer-menu-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 34px !important;
    row-gap: 30px !important;
    align-items: start !important;
    width: 100% !important;
  }

  .ei-footer-col {
    min-width: 0 !important;
    margin-bottom: 18px !important;
  }

  .ei-footer-col ul {
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col li {
    margin: 0 0 13px 0 !important;
  }

  /* Move social icons below link groups and keep them horizontal */
  .ei-social {
    grid-column: 1 / -1 !important;
    display: block !important;
    width: 100% !important;
    margin-top: 6px !important;
    padding-top: 8px !important;
  }

  .ei-social ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-social li {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-social a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    font-size: 20px !important;
  }

  /* Bottom legal/policy links: add spacing and make them cleaner */
  .ei-footer-bottom-inner {
    display: block !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    text-align: left !important;
  }

  .ei-footer-bottom ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 10px 18px !important;
    align-items: center !important;
    margin: 14px 0 0 0 !important;
    padding: 0 !important;
  }

  .ei-footer-bottom li {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-bottom a {
    display: inline-block !important;
    padding: 2px 0 !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content h1,
  #slate-root h1 {
    font-size: 38px !important;
  }


  .ei-footer-menu-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 24px !important;
    row-gap: 24px !important;
  }

}



/* =========================================================
   Mobile footer: closer to erikson.edu
   - Mobile-only footer changes
   - Desktop/laptop header/footer remain unchanged
   ========================================================= */

@media (max-width: 980px) {
  .ei-footer {
    margin-top: 0 !important;
    overflow: hidden !important;
  }

  .ei-footer-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  /* Top mobile footer block: logo, address, utility buttons, newsletter, badge */
  .ei-footer-left {
    width: 100% !important;
    max-width: 100% !important;
    padding: 42px 26px 44px !important;
    text-align: left !important;
    background: var(--ei-blue) !important;
  }

  .ei-footer-left *,
  .ei-footer-right *,
  .ei-footer-bottom-inner * {
    text-align: left !important;
  }

  .ei-footer-logo {
    margin: 0 0 24px 0 !important;
    max-width: 100% !important;
  }

  .ei-footer-logo img {
    max-width: 245px !important;
    width: 100% !important;
    height: auto !important;
  }

  .ei-address {
    max-width: 100% !important;
    margin: 0 0 24px 0 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .ei-footer-buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 0 0 34px 0 !important;
    padding: 0 0 34px 0 !important;
  }

  .ei-footer-buttons li {
    margin: 0 !important;
  }

  .ei-footer-buttons a {
    min-height: 34px !important;
    padding: 0 14px !important;
    font-size: 12px !important;
    line-height: 1 !important;
  }

  .ei-newsletter-copy {
    max-width: 100% !important;
    margin: 0 0 22px 0 !important;
    font-size: 22px !important;
    line-height: 1.34 !important;
  }

  .ei-newsletter-form {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 28px 0 !important;
  }

  .ei-newsletter-form input {
    display: block !important;
    width: 100% !important;
    border-radius: 3px !important;
    margin: 0 0 8px 0 !important;
  }

  .ei-newsletter-form button {
    display: inline-flex !important;
    width: auto !important;
    min-width: 150px !important;
    min-height: 46px !important;
    border-radius: 3px !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .ei-candid {
    margin: 0 0 20px 0 !important;
  }

  .ei-nonprofit {
    max-width: 100% !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  /* Right mobile footer block: link groups, social icons, then legal links */
  .ei-footer-right {
    width: 100% !important;
    max-width: 100% !important;
    padding: 42px 26px 0 !important;
    text-align: left !important;
    background: var(--ei-blue-2) !important;
    border-top: 0 !important;
  }

  .ei-footer-menu-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .ei-footer-menu-grid > div {
    width: 100% !important;
    max-width: 100% !important;
  }

  .ei-footer-col {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 30px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col h3 {
    margin: 0 0 15px 0 !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    letter-spacing: .12em !important;
  }

  .ei-footer-col ul {
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col li {
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col a {
    font-size: 15px !important;
    line-height: 1.35 !important;
  }

  /* Social icons: below all link groups, above Legal Policies, horizontal */
  .ei-social {
    grid-column: 1 / -1 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 4px 0 34px 0 !important;
    padding: 4px 0 0 0 !important;
    order: 99 !important;
  }

  .ei-social ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-social li {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-social a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 30px !important;
    height: 30px !important;
    font-size: 20px !important;
    line-height: 1 !important;
  }

  /* Bottom legal links: spaced like a clean mobile link row */
  .ei-footer-bottom {
    width: calc(100% + 52px) !important;
    margin-left: -26px !important;
    margin-right: -26px !important;
    padding: 22px 26px 24px !important;
    background: #000000 !important;
  }

  .ei-footer-bottom-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 16px !important;
  }

  .ei-footer-bottom ul {
    order: 1 !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 11px 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-bottom li {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-bottom a {
    display: inline-block !important;
    padding: 2px 0 !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
  }

  .ei-footer-bottom span {
    order: 2 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
  }
}

@media (max-width: 430px) {
  .ei-footer-left {
    padding: 38px 22px 42px !important;
  }

  .ei-footer-right {
    padding: 40px 22px 0 !important;
  }

  .ei-footer-bottom {
    width: calc(100% + 44px) !important;
    margin-left: -22px !important;
    margin-right: -22px !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .ei-footer-bottom ul {
    gap: 10px 16px !important;
  }
}



/* =========================================================
   Clean final pass
   Source reset before global-arrow script.
   - No header/footer button text arrows added
   - Arrow only on Slate form submit buttons
   - Mobile footer rebuilt closer to erikson.edu
   - Purple form shadow lighter/wider
   - H1 smaller
   - Slate two-column part rows spread out
   ========================================================= */

/* H1 slightly smaller again */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h1.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-heading,
#slate-root h1,
#slate-root h1.ei-prod-heading {
  font-size: 46px !important;
  font-weight: 400 !important;
}

/* Center all Slate tables and spread Slate part columns */
#main-content .ei-slate-content table {
  margin-left: auto !important;
  margin-right: auto !important;
}

#main-content .ei-slate-content .part_rows,
#main-content .ei-slate-content .part_rows_container,
#main-content .ei-slate-content [class*="part_rows_container"] {
  width: 100% !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

#main-content .ei-slate-content .part_rows {
  display: flex !important;
  justify-content: space-between !important;
  align-items: stretch !important;
  gap: 38px !important;
}

#main-content .ei-slate-content .part_rows_container.col-1,
#main-content .ei-slate-content .part_rows_container.col-2,
#main-content .ei-slate-content .part_rows_container .col-1,
#main-content .ei-slate-content .part_rows_container .col-2,
#main-content .ei-slate-content .part_rows > .col-1,
#main-content .ei-slate-content .part_rows > .col-2 {
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* Purple form shadow: lighter, broader outward spread */
#main-content .ei-slate-content .ei-form-shadow-wrap {
  width: 100% !important;
  max-width: 1040px !important;
  margin: 30px auto 0 auto !important;
  border-radius: 6px !important;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.05),
    0 0 44px rgba(0,0,0,.16),
    0 0 78px rgba(0,0,0,.08) !important;
  overflow: visible !important;
}

#main-content .ei-slate-content .ei-form-shadow-wrap .ei-production-table-shell {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  box-shadow: none !important;
  filter: none !important;
}

/* Fallback before wrapper is inserted */
#main-content .ei-slate-content .ei-production-table-shell,
.ei-slate-content .ei-production-table-shell {
  box-shadow:
    0 0 0 1px rgba(0,0,0,.05),
    0 0 44px rgba(0,0,0,.16),
    0 0 78px rgba(0,0,0,.08) !important;
  filter: none !important;
}

/* Review page: never show the form shadow (kills the load-time flicker). */
body.ei-apply-review #main-content .ei-form-shadow-wrap,
body.ei-apply-review #main-content .ei-slate-content .ei-form-shadow-wrap,
body.ei-apply-review #main-content .ei-production-table-shell,
body.ei-apply-review #main-content .ei-slate-content .ei-production-table-shell {
  box-shadow: none !important;
  filter: none !important;
  border-radius: 0 !important;
}

/* Arrow only on Slate form buttons — not header/footer buttons */
#main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
#main-content .ei-slate-content .ei-production-table-shell button.default:after,
#main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: " >" !important;
}

/* Continue button not clipped */
#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  margin-top: -10px !important;
  padding-top: 6px !important;
  overflow: visible !important;
}

#main-content .ei-production-table-shell .form_button_submit,
#main-content .ei-production-table-shell button,
#main-content .ei-production-table-shell input[type="submit"],
#main-content .ei-production-table-shell input[type="button"] {
  min-height: 48px !important;
  line-height: 1.2 !important;
  overflow: visible !important;
}

/* Header/footer arrows cleanup */
.ei-footer-buttons a:after {
  content: "" !important;
  display: none !important;
}

.ei-newsletter-form button:after {
  content: "" !important;
  display: none !important;
}

/* Apply Now icon/arrow spacing */
.ei-apply {
  gap: 4px !important;
}

.ei-apply i {
  margin-left: 6px !important;
  margin-right: 3px !important;
  transform: translateX(3px) !important;
}

.ei-apply:after {
  content: " >" !important;
  margin-left: 0 !important;
  transform: translateX(-4px) !important;
}

/* Mobile-only footer reconstruction */
@media (max-width: 980px) {
  /* Keep mobile header fix */
  .ei-mainbar .ei-nav,
  .ei-mainbar .ei-menu,
  .ei-mainbar .ei-menu-item,
  .ei-mainbar .ei-menu-link,
  .ei-mainbar .ei-apply {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .ei-mobile-toggle {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  /* Footer link groups tighter like public mobile footer */
  .ei-footer-right {
    padding: 40px 26px 0 !important;
    overflow: visible !important;
  }

  .ei-footer-menu-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .ei-footer-menu-grid > div {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .ei-footer-col {
    display: block !important;
    width: 100% !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col h3 {
    margin: 0 0 8px 0 !important;
  }

  .ei-footer-col ul {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col li {
    display: block !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
  }

  /* Social icons like public mobile footer: visible horizontal row */
  .ei-footer-right .ei-social {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 18px 0 28px 0 !important;
    padding: 8px 0 0 0 !important;
    order: 99 !important;
  }

  .ei-footer-right .ei-social ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-right .ei-social li {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-right .ei-social a {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 31px !important;
    height: 31px !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    font-size: 20px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    overflow: visible !important;
  }

  .ei-footer-right .ei-social a:after {
    content: "" !important;
  }

  /* Force visible text/icon fallback in case Font Awesome brands don't render on mobile */
  .ei-footer-right .ei-social a i {
    display: none !important;
  }

  .ei-footer-right .ei-social a:before {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 18px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
  }

  .ei-footer-right .ei-social a[aria-label="Facebook"]:before { content: "f" !important; }
  .ei-footer-right .ei-social a[aria-label="Instagram"]:before { content: "◎" !important; font-size: 22px !important; }
  .ei-footer-right .ei-social a[aria-label="X"]:before,
  .ei-footer-right .ei-social a[aria-label="Twitter"]:before { content: "X" !important; }
  .ei-footer-right .ei-social a[aria-label="LinkedIn"]:before { content: "in" !important; font-size: 16px !important; }
  .ei-footer-right .ei-social a[aria-label="YouTube"]:before { content: "▶" !important; font-size: 18px !important; }

  /* Bottom legal links: all visible, spaced, full width */
  .ei-footer-bottom {
    display: block !important;
    width: calc(100% + 52px) !important;
    margin-left: -26px !important;
    margin-right: -26px !important;
    padding: 22px 26px 24px !important;
    background: #000000 !important;
    overflow: visible !important;
  }

  .ei-footer-bottom-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .ei-footer-bottom ul {
    order: 1 !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-bottom li {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-bottom a {
    display: inline-block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    white-space: normal !important;
    text-decoration: none !important;
  }

  .ei-footer-bottom a:after {
    content: "" !important;
  }

  .ei-footer-bottom span {
    order: 2 !important;
    display: block !important;
    width: 100% !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    margin: 0 !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content h1,
  #slate-root h1 {
    font-size: 32px !important;
  }

  #main-content .ei-slate-content .part_rows {
    display: block !important;
  }

  #main-content .ei-slate-content .part_rows_container.col-1,
  #main-content .ei-slate-content .part_rows_container.col-2,
  #main-content .ei-slate-content .part_rows_container .col-1,
  #main-content .ei-slate-content .part_rows_container .col-2,
  #main-content .ei-slate-content .part_rows > .col-1,
  #main-content .ei-slate-content .part_rows > .col-2 {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }

  .ei-footer-right {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }


}



/* =========================================================
   Final tune from feedback
   - Remove duplicated > from header/footer
   - Keep > only on Slate form buttons
   - Header nav link +1px; Policy & Research +2px
   - Apply Now icon/arrow spacing
   - Mobile footer rebuilt/forced
   - Portal col-6-6 rows spread full width
   - H1 slightly smaller
   ========================================================= */

/* Top blue nav link size +1 point */
.ei-mainbar .ei-menu-link {
  font-size: 19px !important;
}

/* Policy & Research nudge */
.ei-mainbar .ei-menu-item.ei-policy-research-item,
.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translateX(2px) !important;
}

/* Apply Now spacing: pencil right, arrow left */
.ei-apply {
  gap: 2px !important;
}

.ei-apply i {
  margin-right: 2px !important;
  transform: translateX(5px) !important;
}

.ei-apply:after {
  content: " >" !important;
  margin-left: -4px !important;
  transform: translateX(-5px) !important;
}

/* Remove arrows from footer buttons and newsletter button */
.ei-footer-buttons a:after,
.ei-newsletter-form button:after {
  content: "" !important;
  display: none !important;
}

/* H1 down one more point */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h1.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-heading,
#slate-root h1,
#slate-root h1.ei-prod-heading {
  font-size: 45px !important;
  font-weight: 400 !important;
}

/* Slate form buttons only: give the arrow a clearer space */
#main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
#main-content .ei-slate-content .ei-production-table-shell button.default:after,
#main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: "  >" !important;
}

/* Move Continue button up a little more */
#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  margin-top: -22px !important;
  padding-top: 8px !important;
  overflow: visible !important;
}

/* Portal 6/6 rows: spread across page and center content */
#main-content .ei-slate-content .portal_row.grid_container.col-6-6,
#main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"],
#main-content .ei-slate-content .grid_container.col-6-6,
#main-content .ei-slate-content .grid_container[class*="col-6-6"] {
  width: 100% !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  column-gap: 56px !important;
  row-gap: 28px !important;
  align-items: start !important;
  justify-items: stretch !important;
  box-sizing: border-box !important;
}

#main-content .ei-slate-content .portal_row.grid_container.col-6-6 > *,
#main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"] > *,
#main-content .ei-slate-content .grid_container.col-6-6 > *,
#main-content .ei-slate-content .grid_container[class*="col-6-6"] > * {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  justify-self: stretch !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

#main-content .ei-slate-content .portal_row.grid_container.col-6-6 table,
#main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"] table {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Mobile footer: force a clean public-site-like stacked layout */
@media (max-width: 1100px) {
  .ei-footer-right {
    padding: 40px 26px 0 !important;
    overflow: visible !important;
  }

  .ei-footer-menu-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .ei-footer-menu-grid > div {
    display: contents !important;
  }

  .ei-footer-col {
    display: block !important;
    width: 100% !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col h3 {
    margin: 0 0 7px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col ul {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col li {
    display: block !important;
    margin: 0 0 7px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col a {
    display: inline !important;
    line-height: 1.28 !important;
  }

  /* Social icons: horizontal and visible, placed with the footer groups */
  .ei-footer-right .ei-social {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 16px 0 26px 0 !important;
    padding: 8px 0 0 0 !important;
  }

  .ei-footer-right .ei-social ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-right .ei-social li {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-right .ei-social a {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 31px !important;
    height: 31px !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    font-size: 20px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    overflow: visible !important;
  }

  .ei-footer-right .ei-social a:after {
    content: "" !important;
  }

  /* Use text fallback for mobile icons so all show up even if FA fails */
  .ei-footer-right .ei-social a i {
    display: none !important;
  }

  .ei-footer-right .ei-social a:before {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 18px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
  }

  .ei-footer-right .ei-social a[aria-label="Facebook"]:before { content: "f" !important; }
  .ei-footer-right .ei-social a[aria-label="Instagram"]:before { content: "◎" !important; font-size: 22px !important; }
  .ei-footer-right .ei-social a[aria-label="X"]:before,
  .ei-footer-right .ei-social a[aria-label="Twitter"]:before { content: "X" !important; }
  .ei-footer-right .ei-social a[aria-label="LinkedIn"]:before { content: "in" !important; font-size: 16px !important; }
  .ei-footer-right .ei-social a[aria-label="YouTube"]:before { content: "▶" !important; font-size: 18px !important; }

  /* Legal/footer bottom: force visible and spaced */
  .ei-footer-bottom {
    display: block !important;
    width: calc(100% + 52px) !important;
    margin-left: -26px !important;
    margin-right: -26px !important;
    padding: 22px 26px 24px !important;
    background: #000000 !important;
    overflow: visible !important;
  }

  .ei-footer-bottom-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-bottom ul {
    order: 1 !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-bottom li {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-bottom a {
    display: inline-block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    white-space: normal !important;
    text-decoration: none !important;
  }

  .ei-footer-bottom a:after {
    content: "" !important;
  }

  .ei-footer-bottom span {
    order: 2 !important;
    display: block !important;
    width: 100% !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    margin: 0 !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content h1,
  #slate-root h1 {
    font-size: 31px !important;
  }

  #main-content .ei-slate-content .portal_row.grid_container.col-6-6,
  #main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"],
  #main-content .ei-slate-content .grid_container.col-6-6,
  #main-content .ei-slate-content .grid_container[class*="col-6-6"] {
    display: block !important;
  }

  #main-content .ei-slate-content .portal_row.grid_container.col-6-6 > *,
  #main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"] > *,
  #main-content .ei-slate-content .grid_container.col-6-6 > *,
  #main-content .ei-slate-content .grid_container[class*="col-6-6"] > * {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    margin-bottom: 22px !important;
  }

  .ei-footer-bottom {
    width: calc(100% + 44px) !important;
    margin-left: -22px !important;
    margin-right: -22px !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .ei-footer-bottom ul {
    gap: 10px 16px !important;
  }
}

/* Stack the Master's/Certificate Program table pair (logged-out gr_app) on
   iPad portrait too, not just phones - there isn't enough width for them
   side by side at that size either. Kept separate from the phone-only block
   above so its other rules (h1 size, footer-bottom) stay phone-only. */
@media (max-width: 980px), (orientation: portrait) and (max-width: 1100px) {
  #main-content .ei-slate-content .portal_row.grid_container.col-6-6,
  #main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"],
  #main-content .ei-slate-content .grid_container.col-6-6,
  #main-content .ei-slate-content .grid_container[class*="col-6-6"] {
    display: block !important;
  }

  #main-content .ei-slate-content .portal_row.grid_container.col-6-6 > *,
  #main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"] > *,
  #main-content .ei-slate-content .grid_container.col-6-6 > *,
  #main-content .ei-slate-content .grid_container[class*="col-6-6"] > * {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    margin-bottom: 22px !important;
  }
}



/* =========================================================
   Final requested corrections
   ========================================================= */

/* H1: one point smaller with a little letter spacing */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h1.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-heading,
#slate-root h1,
#slate-root h1.ei-prod-heading {
  font-size: 44px !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
}

/* Undo prior +1px top blue nav font increase */
.ei-mainbar .ei-menu-link {
  font-size: 18px !important;
}

/* Policy & Research: keep the 2px right nudge and move it down to align */
.ei-mainbar .ei-menu-item.ei-policy-research-item {
  transform: none !important;
}

.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(2px, 3px) !important;
}

/* Apply Now: make sure there is a real space before > */
.ei-apply:after {
  content: " >" !important;
  display: inline-block !important;
  margin-left: 4px !important;
  transform: none !important;
}


/* Remove duplicate/added arrows from header subnav and footer utility buttons */
.ei-mega a:after,
.ei-footer-buttons a:after,
.ei-footer-bottom a:after {
  content: "" !important;
  display: none !important;
}

/* Sign Me Up button should have a single > */
.ei-newsletter-form button:after {
  content: " >" !important;
  display: inline-block !important;
  margin-left: 4px !important;
  transform: none !important;
}

/* Slate form buttons: move > over another space */
#main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
#main-content .ei-slate-content .ei-production-table-shell button.default:after,
#main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: "   >" !important;
}

/* Move Continue form button up */
#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  margin-top: -38px !important;
  padding-top: 10px !important;
  overflow: visible !important;
}

/* Try a different approach for Slate portal 6/6 rows:
   do not force grid; use a full-width flex row and center each column. */
#main-content .ei-slate-content .portal_row.grid_container.col-6-6,
#main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"],
#main-content .ei-slate-content .portal_row[class*="row-10690603-403e-4bba-8852-4cbedf4f1cae"],
#main-content .ei-slate-content .grid_container.col-6-6,
#main-content .ei-slate-content .grid_container[class*="col-6-6"] {
  width: 100% !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: 72px !important;
  box-sizing: border-box !important;
}

#main-content .ei-slate-content .portal_row.grid_container.col-6-6 > *,
#main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"] > *,
#main-content .ei-slate-content .portal_row[class*="row-10690603-403e-4bba-8852-4cbedf4f1cae"] > *,
#main-content .ei-slate-content .grid_container.col-6-6 > *,
#main-content .ei-slate-content .grid_container[class*="col-6-6"] > * {
  flex: 0 1 calc(50% - 36px) !important;
  width: calc(50% - 36px) !important;
  max-width: 540px !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: center !important;
  justify-self: center !important;
  box-sizing: border-box !important;
}


/* New mobile footer block is hidden on desktop */
.ei-mobile-footer-extra {
  display: none !important;
}

/* Mobile footer optimization */
@media (max-width: 1100px) {
  /* Hide the old mobile social/footer-bottom that were not rendering consistently */
  .ei-footer-right > .ei-social,
  .ei-footer-right > .ei-footer-bottom,
  .ei-footer-menu-grid + .ei-social {
    display: none !important;
  }

  .ei-footer-right {
    padding: 38px 24px 0 !important;
    overflow: visible !important;
  }

  .ei-footer-menu-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .ei-footer-menu-grid > div {
    display: contents !important;
  }

  .ei-footer-col {
    display: block !important;
    width: 100% !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col h3 {
    margin: 0 0 6px 0 !important;
  }

  .ei-footer-col ul {
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col li {
    margin: 0 0 6px 0 !important;
    padding: 0 !important;
  }

  .ei-mobile-footer-extra {
    display: block !important;
    width: 100% !important;
    margin: 16px 0 0 0 !important;
    padding: 0 !important;
  }

  .ei-mobile-social {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 0 28px 0 !important;
    padding: 8px 0 0 0 !important;
  }

  .ei-mobile-social a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 31px !important;
    height: 31px !important;
    color: #ffffff !important;
    text-decoration: none !important;
    line-height: 1 !important;
  }

  .ei-mobile-social a:after {
    content: "" !important;
    display: none !important;
  }

  .ei-mobile-social span {
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 800 !important;
    font-size: 19px !important;
    line-height: 1 !important;
  }

  .ei-mobile-social a[aria-label="Instagram"] span {
    font-size: 22px !important;
  }

  .ei-mobile-social a[aria-label="LinkedIn"] span {
    font-size: 16px !important;
  }

  .ei-mobile-legal {
    width: calc(100% + 48px) !important;
    margin-left: -24px !important;
    margin-right: -24px !important;
    padding: 22px 24px 24px !important;
    background: #000000 !important;
    box-sizing: border-box !important;
  }

  .ei-mobile-legal ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px 18px !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-mobile-legal li {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-mobile-legal a {
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: normal !important;
  }

  .ei-mobile-legal a:after {
    content: "" !important;
    display: none !important;
  }

  .ei-mobile-legal p {
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: Arial, Helvetica, sans-serif !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {

  #main-content .ei-slate-content .portal_row.grid_container.col-6-6,
  #main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"],
  #main-content .ei-slate-content .portal_row[class*="row-10690603-403e-4bba-8852-4cbedf4f1cae"],
  #main-content .ei-slate-content .grid_container.col-6-6,
  #main-content .ei-slate-content .grid_container[class*="col-6-6"] {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }


  .ei-mobile-legal {
    width: calc(100% + 44px) !important;
    margin-left: -22px !important;
    margin-right: -22px !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .ei-mobile-legal ul {
    gap: 10px 16px !important;
  }
}



/* =========================================================
   Mobile/footer/button final tune
   ========================================================= */

/* Move all blue navigation links right 1px without changing logo */
.ei-mainbar .ei-nav {
  transform: translateX(1px) !important;
}

/* Keep Policy & Research slightly lower and aligned */
.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(2px, 4px) !important;
}

/* Smaller Erikson-style arrows on Apply Now and Sign Me Up */
.ei-apply:after {
  content: " >" !important;
  display: inline-block !important;
  margin-left: 6px !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transform: translateY(-1px) !important;
}

.ei-newsletter-form button:after {
  content: " >" !important;
  display: inline-block !important;
  margin-left: 6px !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transform: translateY(-1px) !important;
}

.ei-apply i {
  transform: translateX(3px) !important;
  margin-right: 7px !important;
}

/* Move Continue form button up another line and prevent clipping */
#main-content .ei-production-table-shell,
#main-content .ei-production-table-shell table,
#main-content .ei-production-table-shell tbody,
#main-content .ei-production-table-shell tr,
#main-content .ei-production-table-shell td,
#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  overflow: visible !important;
}

#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  margin-top: -52px !important;
  padding-top: 20px !important;
  padding-bottom: 2px !important;
}

#main-content .ei-production-table-shell .form_button_submit,
#main-content .ei-production-table-shell button,
#main-content .ei-production-table-shell input[type="submit"],
#main-content .ei-production-table-shell input[type="button"] {
  min-height: 50px !important;
  line-height: 1.15 !important;
  padding-top: 2px !important;
  padding-bottom: 2px !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Mobile-only footer/address/legal/social fixes */
.ei-mobile-footer-legal-final {
  display: none !important;
}

@media (max-width: 1100px) {
  /* Line break after Directions so phone starts on a new line */
  .ei-address a {
    display: inline-block !important;
  }

  .ei-address a:after {
    content: "" !important;
    display: block !important;
    height: 0 !important;
  }

  /* Center the mobile social icons */
  .ei-mobile-social,
  .ei-footer-right .ei-social ul {
    justify-content: center !important;
    text-align: center !important;
  }

  .ei-mobile-social {
    margin-left: auto !important;
    margin-right: auto !important;
  }


  /* Hide old inconsistent bottom/footer legal blocks on mobile; use the final block below */
  .ei-footer-right > .ei-footer-bottom,
  .ei-footer-bottom,
  .ei-mobile-legal {
    display: none !important;
  }

  .ei-mobile-footer-legal-final {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 22px 24px 24px !important;
    background: #000000 !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
  }

  .ei-mobile-footer-legal-final ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px 18px !important;
    width: 100% !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-mobile-footer-legal-final li {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-mobile-footer-legal-final a {
    display: inline-block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: normal !important;
  }

  .ei-mobile-footer-legal-final a:after {
    content: "" !important;
    display: none !important;
  }

  .ei-mobile-footer-legal-final p {
    display: block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-mobile-footer-legal-final {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .ei-mobile-footer-legal-final ul {
    gap: 10px 16px !important;
  }
}



/* =========================================================
   Final requested tune
   ========================================================= */

/* H1 letter spacing and slightly smaller */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h1.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-heading,
#slate-root h1,
#slate-root h1.ei-prod-heading {
  font-size: 43px !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
}

/* H2 matches H1 style, 3 points smaller */
#main-content .ei-slate-content h2,
#main-content .ei-slate-content h2.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-h2,
#slate-root h2,
#slate-root h2.ei-prod-h2 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 40px !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

/* Undo nav font increase and nudge requested links */
.ei-mainbar .ei-menu-link {
  font-size: 18px !important;
}

.ei-mainbar .ei-menu-link.ei-nav-nudge-one {
  transform: translateX(1px) !important;
}

.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(2px, 7px) !important;
}

/* Use Erikson-style chevron icon instead of literal greater-than */
.ei-apply:after {
  content: " ›" !important;
  display: inline-block !important;
  margin-left: 6px !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transform: translateY(-1px) !important;
}

.ei-newsletter-form button:after {
  content: " ›" !important;
  display: inline-block !important;
  margin-left: 6px !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transform: translateY(-1px) !important;
}

/* Footer utility buttons do not get the chevron */
.ei-footer-buttons a:after,
.ei-footer-bottom a:after {
  content: "" !important;
  display: none !important;
}

/* Move Continue form button up another line without clipping the top */
#main-content .ei-production-table-shell,
#main-content .ei-production-table-shell table,
#main-content .ei-production-table-shell tbody,
#main-content .ei-production-table-shell tr,
#main-content .ei-production-table-shell td,
#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  overflow: visible !important;
}

#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  margin-top: -52px !important;
  padding-top: 28px !important;
  padding-bottom: 2px !important;
}

#main-content .ei-production-table-shell .form_button_submit,
#main-content .ei-production-table-shell button,
#main-content .ei-production-table-shell input[type="submit"],
#main-content .ei-production-table-shell input[type="button"] {
  position: relative !important;
  top: -12px !important;
  min-height: 50px !important;
  line-height: 1.15 !important;
  padding-top: 3px !important;
  padding-bottom: 3px !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Form button chevron spacing */
#main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
#main-content .ei-slate-content .ei-production-table-shell button.default:after,
#main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: "  ›" !important;
  display: inline-block !important;
  margin-left: 2px !important;
}

/* Program page text/style adjustments */
#main-content .ei-slate-content .ei-style-match-note {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  /* font-size removed: was fighting the JS single-authority sizing pass, causing a repeating small/correct flash */
  /* line-height removed alongside font-size above */
  font-weight: 400 !important;
  color: #4e4b48 !important;
}

#main-content .ei-slate-content .ei-certificate-programs-align {
  position: relative !important;
  top: 12px !important;
}

#main-content .ei-slate-content .ei-term-offered-nowrap,
#main-content .ei-slate-content th.ei-term-offered-nowrap,
#main-content .ei-slate-content td.ei-term-offered-nowrap {
  white-space: nowrap !important;
}

/* Different approach for the portal 6/6 row:
   break it out wider, then center both columns evenly. */
#main-content .ei-slate-content .portal_row.grid_container.col-6-6,
#main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"],
#main-content .ei-slate-content .portal_row[class*="row-10690603-403e-4bba-8852-4cbedf4f1cae"],
#main-content .ei-slate-content .grid_container.col-6-6,
#main-content .ei-slate-content .grid_container[class*="col-6-6"] {
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(1180px, calc(100vw - 90px)) !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 56px !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

#main-content .ei-slate-content .portal_row.grid_container.col-6-6 > *,
#main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"] > *,
#main-content .ei-slate-content .portal_row[class*="row-10690603-403e-4bba-8852-4cbedf4f1cae"] > *,
#main-content .ei-slate-content .grid_container.col-6-6 > *,
#main-content .ei-slate-content .grid_container[class*="col-6-6"] > * {
  flex: 0 1 calc(50% - 28px) !important;
  width: calc(50% - 28px) !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

#main-content .ei-slate-content .portal_row.grid_container.col-6-6 table,
#main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"] table,
#main-content .ei-slate-content .portal_row[class*="row-10690603-403e-4bba-8852-4cbedf4f1cae"] table {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Mobile legal block injected by JS */
.ei-mobile-legal-dynamic {
  display: none !important;
}

@media (max-width: 1100px) {
  #main-content .ei-slate-content h2,
  #slate-root h2 {
    font-size: 37px !important;
  }

  /* Keep mobile social icons centered */
  .ei-mobile-social,
  .ei-footer-right .ei-social ul {
    justify-content: center !important;
    text-align: center !important;
  }


  /* The dynamic block is appended directly after the social icons */
  .ei-mobile-legal-dynamic {
    display: block !important;
    width: 100% !important;
    margin: 20px 0 0 0 !important;
    padding: 22px 24px 24px !important;
    background: #000000 !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
  }

  .ei-mobile-legal-dynamic ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px 18px !important;
    width: 100% !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }


  .ei-mobile-legal-dynamic a {
    display: inline-block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: normal !important;
  }


  .ei-mobile-legal-dynamic p {
    display: block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content h1,
  #slate-root h1 {
    font-size: 30px !important;
    letter-spacing: .01em !important;
  }


  #main-content .ei-slate-content .portal_row.grid_container.col-6-6,
  #main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"],
  #main-content .ei-slate-content .portal_row[class*="row-10690603-403e-4bba-8852-4cbedf4f1cae"],
  #main-content .ei-slate-content .grid_container.col-6-6,
  #main-content .ei-slate-content .grid_container[class*="col-6-6"] {
    position: static !important;
    left: auto !important;
    transform: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  #main-content .ei-slate-content .portal_row.grid_container.col-6-6 > *,
  #main-content .ei-slate-content .portal_row.grid_container[class*="col-6-6"] > *,
  #main-content .ei-slate-content .portal_row[class*="row-10690603-403e-4bba-8852-4cbedf4f1cae"] > *,
  #main-content .ei-slate-content .grid_container.col-6-6 > *,
  #main-content .ei-slate-content .grid_container[class*="col-6-6"] > * {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 22px !important;
  }

  .ei-mobile-legal-dynamic {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

}



/* =========================================================
   Follow-up tune
   ========================================================= */

/* Lighten the blue navigation header drop shadow */
.ei-mainbar {
  box-shadow:
    0 10px 18px rgba(0,0,0,.14),
    0 3px 6px rgba(0,0,0,.08) !important;
}

.ei-mainbar:after {
  bottom: -14px !important;
  height: 14px !important;
  background: linear-gradient(to bottom, rgba(0,0,0,.10) 0%, rgba(0,0,0,.04) 52%, rgba(0,0,0,0) 100%) !important;
}

/* Keep About and Apply Now unchanged; move only these nav links */
.ei-mainbar .ei-nav {
  transform: none !important;
}

.ei-mainbar .ei-menu-link {
  font-size: 18px !important;
}

.ei-mainbar .ei-menu-link.ei-nav-nudge-one {
  transform: translate(2px, 4px) !important;
}

.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(0px, 8px) !important;
}

/* Smaller Erikson-style chevron/caret, with Apply Now caret moved left */
.ei-apply:after {
  content: "›" !important;
  display: inline-block !important;
  margin-left: 1px !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transform: translate(-3px, -1px) !important;
}

.ei-newsletter-form button:after {
  content: "›" !important;
  display: inline-block !important;
  margin-left: 5px !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transform: translateY(-1px) !important;
}

/* Move Continue button up another line and keep the top visible */
#main-content .ei-production-table-shell,
#main-content .ei-production-table-shell table,
#main-content .ei-production-table-shell tbody,
#main-content .ei-production-table-shell tr,
#main-content .ei-production-table-shell td,
#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  overflow: visible !important;
}

#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  margin-top: -60px !important;
  padding-top: 34px !important;
  padding-bottom: 4px !important;
}

#main-content .ei-production-table-shell .form_button_submit,
#main-content .ei-production-table-shell button,
#main-content .ei-production-table-shell input[type="submit"],
#main-content .ei-production-table-shell input[type="button"] {
  position: relative !important;
  top: -18px !important;
  min-height: 52px !important;
  line-height: 1.15 !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Continue caret moved right and vertically centered */
#main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
#main-content .ei-slate-content .ei-production-table-shell button.default:after,
#main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: "  ›" !important;
  display: inline-block !important;
  margin-left: 7px !important;
  font-size: .95em !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  transform: translateY(-1px) !important;
}

/* H2/H3 hierarchy based on H1 */
#main-content .ei-slate-content h2,
#main-content .ei-slate-content h2.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-h2,
#slate-root h2,
#slate-root h2.ei-prod-h2 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 40px !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

#main-content .ei-slate-content h3,
#main-content .ei-slate-content h3.ei-prod-h3,
#main-content .ei-slate-content .ei-prod-h3,
#slate-root h3,
#slate-root h3.ei-prod-h3 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 37px !important;
  line-height: 1.1 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

/* Match these program-page text items to the "It may not be offered during that term" reference */
#main-content .ei-slate-content .ei-match-not-offered-style {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  /* font-size removed: was fighting the JS single-authority sizing pass, causing a repeating small/correct flash */
  /* line-height removed alongside font-size above */
  font-weight: 400 !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Move Certificate Programs down more */
#main-content .ei-slate-content .ei-certificate-programs-align {
  position: relative !important;
  top: 30px !important;
}


/* Mobile footer legal links: on blue, centered, underlined, under the social icons */
.ei-mobile-legal-dynamic {
  display: none !important;
}

@media (max-width: 1100px) {
  .ei-mobile-social,
  .ei-footer-right .ei-social ul {
    justify-content: center !important;
    text-align: center !important;
  }

  .ei-footer-right .ei-social {
    text-align: center !important;
  }

  .ei-mobile-legal-dynamic {
    display: block !important;
    width: 100% !important;
    margin: 18px 0 0 0 !important;
    padding: 6px 10px 28px !important;
    background: transparent !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  .ei-mobile-legal-dynamic ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px 18px !important;
    width: 100% !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    list-style: none !important;
    text-align: center !important;
  }

  .ei-mobile-legal-dynamic li {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-mobile-legal-dynamic a {
    display: inline-block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    white-space: normal !important;
  }

  .ei-mobile-legal-dynamic a:after {
    content: "" !important;
    display: none !important;
  }

  .ei-mobile-legal-dynamic p {
    display: block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content h2,
  #slate-root h2 {
    font-size: 27px !important;
    letter-spacing: .01em !important;
  }

  #main-content .ei-slate-content h3,
  #slate-root h3 {
    font-size: 25px !important;
    letter-spacing: .01em !important;
  }

  .ei-mobile-legal-dynamic ul {
    gap: 10px 16px !important;
  }
}



/* =========================================================
   Final tune v3
   ========================================================= */

/* Let the blue nav shadow spread down a bit more, but keep it lighter */
.ei-mainbar {
  box-shadow:
    0 13px 22px rgba(0,0,0,.14),
    0 4px 7px rgba(0,0,0,.08) !important;
}

.ei-mainbar:after {
  bottom: -18px !important;
  height: 18px !important;
  background: linear-gradient(to bottom, rgba(0,0,0,.105) 0%, rgba(0,0,0,.045) 54%, rgba(0,0,0,0) 100%) !important;
}

/* About and Apply Now remain in place; nudge only requested nav/dropdown links */
.ei-mainbar .ei-menu-link {
  font-size: 18px !important;
}

.ei-mainbar .ei-menu-link.ei-nav-down-right-2,
.ei-mainbar .ei-mega a.ei-nav-down-right-2 {
  transform: translate(2px, 2px) !important;
}

.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(0px, 2px) !important;
}

/* Apply Now: reduce space between pencil and A; keep small Erikson-style caret */
.ei-apply {
  gap: 0 !important;
}

.ei-apply i {
  margin-right: 2px !important;
  transform: translateX(2px) !important;
}

.ei-apply:after {
  content: "›" !important;
  display: inline-block !important;
  margin-left: 3px !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transform: translate(-2px, -1px) !important;
}

/* Sign Me Up small Erikson-style caret */
.ei-newsletter-form button:after {
  content: "›" !important;
  display: inline-block !important;
  margin-left: 5px !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transform: translateY(-1px) !important;
}

/* Move Continue button up more and prevent the purple box/rows from clipping it */
#main-content .ei-production-table-shell,
#main-content .ei-production-table-shell *,
#main-content .ei-form-shadow-wrap {
  overflow: visible !important;
}

#main-content .ei-production-table-shell .action,
#main-content .ei-production-table-shell .form_action,
#main-content .ei-production-table-shell .form_actions {
  position: relative !important;
  z-index: 30 !important;
  margin-top: -78px !important;
  padding-top: 54px !important;
  padding-bottom: 6px !important;
  transform: translateY(-10px) !important;
  overflow: visible !important;
}

#main-content .ei-production-table-shell .form_button_submit,
#main-content .ei-production-table-shell button,
#main-content .ei-production-table-shell input[type="submit"],
#main-content .ei-production-table-shell input[type="button"] {
  position: relative !important;
  z-index: 40 !important;
  top: -12px !important;
  min-height: 52px !important;
  line-height: 1.15 !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Continue caret right one space and vertically centered */
#main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
#main-content .ei-slate-content .ei-production-table-shell button.default:after,
#main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: "  ›" !important;
  display: inline-block !important;
  margin-left: 9px !important;
  font-size: .95em !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  transform: translateY(-1px) !important;
}

/* H2/H3 hierarchy: force smaller than H1 */
#main-content .ei-slate-content h2,
#main-content .ei-slate-content h2.ei-prod-heading,
#main-content .ei-slate-content .ei-prod-h2,
#slate-root h2,
#slate-root h2.ei-prod-h2 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 38px !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

#main-content .ei-slate-content h3,
#main-content .ei-slate-content h3.ei-prod-h3,
#main-content .ei-slate-content .ei-prod-h3,
#slate-root h3,
#slate-root h3.ei-prod-h3 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 34px !important;
  line-height: 1.1 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

/* Program page: line up Certificate heading with Master's heading, but move certificate table down */
#main-content .ei-slate-content .ei-certificate-programs-align {
  position: relative !important;
  top: 2px !important;
}

#main-content .ei-slate-content .ei-certificate-programs-column table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_table,
#main-content .ei-slate-content .ei-certificate-programs-column .table {
  margin-top: 30px !important;
}


/* Mobile footer: Directions line break and faint divider above social icons */
@media (max-width: 1100px) {
  .ei-address a.ei-directions-mobile-break {
    display: inline !important;
  }

  .ei-address br.ei-directions-break {
    display: block !important;
  }

  .ei-mobile-social,
  .ei-footer-right .ei-social {
    border-top: 1px solid rgba(255,255,255,.28) !important;
    padding-top: 18px !important;
    margin-top: 18px !important;
  }

  .ei-mobile-social,
  .ei-footer-right .ei-social ul {
    justify-content: center !important;
    text-align: center !important;
  }

  .ei-footer-right .ei-social {
    text-align: center !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {

  #main-content .ei-slate-content h3,
  #slate-root h3 {
    font-size: 24px !important;
  }
}



/* =========================================================
   Final tune v4
   ========================================================= */

/* Blue nav: move requested main links right/down to align with About */
.ei-mainbar .ei-menu-link.ei-nav-align-about {
  transform: translate(2px, 5px) !important;
}

/* Keep About untouched; keep Policy & Research included with the same alignment */
.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(2px, 5px) !important;
}

/* H2/H3 final hierarchy: smaller than H1, with same face/style */
#main-content .ei-slate-content h2,
#main-content .ei-slate-content h2.ei-prod-heading,
#main-content .ei-slate-content h2.ei-prod-h2,
#main-content .ei-slate-content .ei-prod-h2,
#slate-root h2,
#slate-root h2.ei-prod-h2 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 35px !important;
  line-height: 1.10 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}


/* Match application/program body-style items to the "It may not be offered..." reference */
#main-content .ei-slate-content .ei-match-not-offered-style,
#main-content .ei-slate-content .ei-match-application-copy {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  /* font-size removed: was fighting the JS single-authority sizing pass, causing a repeating small/correct flash */
  /* line-height removed alongside font-size above */
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Ask Admissions line-break target */
#main-content .ei-slate-content .ei-ask-admissions-break {
  display: inline-block !important;
}

/* Certificate column: move entire column down, not just heading/table */
#main-content .ei-slate-content .ei-certificate-programs-column {
  position: relative !important;
  transform: translateY(18px) !important;
}

#main-content .ei-slate-content .ei-certificate-programs-align {
  position: relative !important;
  top: 0 !important;
}

#main-content .ei-slate-content .ei-certificate-programs-column table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_table,
#main-content .ei-slate-content .ei-certificate-programs-column .table {
  margin-top: 0 !important;
}

/* Keep Term Offered on one line */
#main-content .ei-slate-content .ei-term-offered-nowrap,
#main-content .ei-slate-content th.ei-term-offered-nowrap,
#main-content .ei-slate-content td.ei-term-offered-nowrap {
  white-space: nowrap !important;
}

/* Mobile footer final spacing */
@media (max-width: 1100px) {
  /* Keep the phone directly under Directions, without the leading bar */
  .ei-address br.ei-directions-break {
    display: block !important;
  }

  /* Move divider/social/legal closer to the last footer link */
  .ei-mobile-social,
  .ei-footer-right .ei-social {
    border-top: 1px solid rgba(255,255,255,.24) !important;
    padding-top: 12px !important;
    margin-top: 8px !important;
  }

  .ei-mobile-legal-dynamic {
    margin-top: 6px !important;
    padding-top: 4px !important;
    padding-bottom: 22px !important;
    background: transparent !important;
  }

  .ei-mobile-legal-dynamic ul {
    margin-bottom: 10px !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {


}



/* =========================================================
   Final tune v5
   - Login page fixes
   - Header nav alignment
   - Mega-menu yellow hover/icon style
   - Continue/Login button positioning
   ========================================================= */

/* Top blue nav: move only these links 3px right, keep current vertical alignment */
.ei-mainbar .ei-menu-link.ei-nav-align-about,
.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(3px, 5px) !important;
}

/* Do not touch About or Apply Now */
.ei-mainbar .ei-menu-link.ei-about-link {
  transform: none !important;
}

/* Blue nav dropdown: match Erikson-style short/long yellow bars before heading links */
.ei-mega h3 {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  margin-bottom: 18px !important;
}


.ei-mega h3 a,
.ei-mega h3 .ei-footer-heading-link {
  display: inline-flex !important;
  align-items: center !important;
  color: #000000 !important;
  background: transparent !important;
  border-radius: 3px !important;
  padding: 8px 10px !important;
  margin-left: -10px !important;
  text-decoration: none !important;
  transition: background-color .18s ease, color .18s ease !important;
}

.ei-mega h3:hover a,
.ei-mega h3:focus-within a,
.ei-mega h3 a:hover,
.ei-mega h3 a:focus {
  background: #ffc600 !important;
  color: #000000 !important;
  text-decoration: none !important;
}


/* Keep normal dropdown child links from getting yellow blocks */
.ei-mega li a:hover,
.ei-mega li a:focus {
  background: transparent !important;
  color: #000000 !important;
  text-decoration: underline !important;
}

/* Replace Slate login blue block marker with Erikson-style short/long line icon */
#main-content .ei-slate-content .ei-replace-blue-block {
  position: relative !important;
}

#main-content .ei-slate-content .ei-replace-blue-block:before {
  content: "" !important;
  display: inline-block !important;
  width: 13px !important;
  height: 24px !important;
  margin-right: 9px !important;
  vertical-align: -5px !important;
  background:
    linear-gradient(#ffc600, #ffc600) 0 8px / 4px 16px no-repeat,
    linear-gradient(#ffc600, #ffc600) 8px 0 / 4px 24px no-repeat !important;
}

#main-content .ei-slate-content .ei-hide-blue-block {
  display: none !important;
}

/* Login page: keep password visible and move Login button down */
body.ei-login-page #main-content .ei-production-table-shell {
  overflow: visible !important;
  padding-bottom: 70px !important;
}

body.ei-login-page #main-content .ei-production-table-shell input[type="password"],
body.ei-login-page #main-content .ei-production-table-shell input[name*="password" i] {
  position: relative !important;
  z-index: 20 !important;
  display: block !important;
  margin-bottom: 18px !important;
}

body.ei-login-page #main-content .ei-production-table-shell .action,
body.ei-login-page #main-content .ei-production-table-shell .form_action,
body.ei-login-page #main-content .ei-production-table-shell .form_actions {
  position: relative !important;
  z-index: 30 !important;
  margin-top: 26px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  transform: none !important;
  overflow: visible !important;
}

body.ei-login-page #main-content .ei-production-table-shell .form_button_submit,
body.ei-login-page #main-content .ei-production-table-shell button,
body.ei-login-page #main-content .ei-production-table-shell input[type="submit"],
body.ei-login-page #main-content .ei-production-table-shell input[type="button"] {
  top: 0 !important;
  transform: none !important;
  margin-top: 0 !important;
}

/* Register form Continue button: move up more and force no clipping */
body:not(.ei-login-page) #main-content .ei-production-table-shell,
body:not(.ei-login-page) #main-content .ei-production-table-shell *,
body:not(.ei-login-page) #main-content .ei-form-shadow-wrap {
  overflow: visible !important;
}

body:not(.ei-login-page) #main-content .ei-production-table-shell .action,
body:not(.ei-login-page) #main-content .ei-production-table-shell .form_action,
body:not(.ei-login-page) #main-content .ei-production-table-shell .form_actions {
  position: relative !important;
  z-index: 50 !important;
  margin-top: -92px !important;
  padding-top: 78px !important;
  padding-bottom: 0 !important;
  transform: none !important;
  overflow: visible !important;
}

body:not(.ei-login-page) #main-content .ei-production-table-shell .form_button_submit,
body:not(.ei-login-page) #main-content .ei-production-table-shell button,
body:not(.ei-login-page) #main-content .ei-production-table-shell input[type="submit"],
body:not(.ei-login-page) #main-content .ei-production-table-shell input[type="button"] {
  position: relative !important;
  z-index: 60 !important;
  top: auto !important;
  transform: translateY(-28px) !important;
  min-height: 52px !important;
  line-height: 1.15 !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Continue caret spacing and vertical centering */
body:not(.ei-login-page) #main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
body:not(.ei-login-page) #main-content .ei-slate-content .ei-production-table-shell button.default:after,
body:not(.ei-login-page) #main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: "  ›" !important;
  display: inline-block !important;
  margin-left: 10px !important;
  font-size: .95em !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  transform: translateY(-1px) !important;
}



/* =========================================================
   Final tune v6
   - Login blue-line removal / Forgot Password styling
   - Header nav/submenu tune
   - Program-page text/certificate alignment
   - Mobile footer phone separator cleanup
   ========================================================= */

/* Login page: remove any remaining blue block/line before the new yellow i-icon */
body.ei-login-page #main-content .ei-slate-content .ei-replace-blue-block {
  border-left: 0 !important;
  border-right: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  padding-left: 0 !important;
  background-image: none !important;
}

body.ei-login-page #main-content .ei-slate-content .ei-replace-blue-block > span:first-child,
body.ei-login-page #main-content .ei-slate-content .ei-replace-blue-block > div:first-child,
body.ei-login-page #main-content .ei-slate-content .ei-hide-blue-block {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Forgot password link: white/underlined with Erikson yellow hover */
body.ei-login-page #main-content .ei-production-table-shell a,
body.ei-login-page #main-content .ei-production-table-shell a:link,
body.ei-login-page #main-content .ei-production-table-shell a:visited {
  color: #ffffff !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

body.ei-login-page #main-content .ei-production-table-shell a:hover,
body.ei-login-page #main-content .ei-production-table-shell a:focus {
  color: #ffc600 !important;
  text-decoration: underline !important;
}

/* Header nav: move only Admissions / Academics / Community Services / Policy & Research right 2px more. */
.ei-mainbar .ei-menu-link.ei-nav-align-about,
.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(5px, 5px) !important;
}


/* Mega menu heading links: yellow hover includes icon + label + caret */
.ei-mega h3 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  margin: 0 0 18px -10px !important;
  padding: 8px 12px 8px 10px !important;
  border-radius: 4px !important;
  background: transparent !important;
  transition: background-color .18s ease, color .18s ease !important;
}

.ei-mega h3:before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 13px !important;
  height: 24px !important;
  margin: 0 !important;
  vertical-align: middle !important;
  background:
    linear-gradient(#ffc600, #ffc600) 0 8px / 4px 16px no-repeat,
    linear-gradient(#ffc600, #ffc600) 8px 0 / 4px 24px no-repeat !important;
}

.ei-mega h3:after {
  content: "›" !important;
  display: inline-block !important;
  color: #000000 !important;
  font-weight: 900 !important;
  margin-left: 2px !important;
}

.ei-mega h3 a,
.ei-mega h3 .ei-footer-heading-link {
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #000000 !important;
  background: transparent !important;
  text-decoration: none !important;
}

.ei-mega h3:hover,
.ei-mega h3:focus-within {
  background: #ffc600 !important;
  color: #000000 !important;
}

.ei-mega h3:hover a,
.ei-mega h3:focus-within a,
.ei-mega h3 a:hover,
.ei-mega h3 a:focus {
  background: transparent !important;
  color: #000000 !important;
  text-decoration: none !important;
}

.ei-mega h3:hover:before,
.ei-mega h3:focus-within:before {
  background:
    linear-gradient(#ffffff, #ffffff) 0 8px / 4px 16px no-repeat,
    linear-gradient(#ffffff, #ffffff) 8px 0 / 4px 24px no-repeat !important;
}

/* Do not give lower-level submenu links yellow blocks */
.ei-mega li a:hover,
.ei-mega li a:focus {
  background: transparent !important;
  color: #000000 !important;
  text-decoration: underline !important;
}

/* Program page: move Certificate Programs column lower so its column aligns with Master's column */
#main-content .ei-slate-content .ei-certificate-programs-column {
  position: relative !important;
  transform: translateY(34px) !important;
}

/* Keep heading itself from drifting separately */
#main-content .ei-slate-content .ei-certificate-programs-align {
  position: relative !important;
  top: 0 !important;
}

/* Body copy/program text matching the "It may not be offered..." reference */
#main-content .ei-slate-content .ei-match-not-offered-style,
#main-content .ei-slate-content .ei-match-application-copy,
#main-content .ei-slate-content .ei-copy-match-reference {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  /* font-size removed: was fighting the JS single-authority sizing pass, causing a repeating small/correct flash */
  /* line-height removed alongside font-size above */
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* H2/H3 forced smaller than H1 */
#main-content .ei-slate-content h2,
#main-content .ei-slate-content h2.ei-prod-h2,
#main-content .ei-slate-content .ei-prod-h2,
#slate-root h2,
#slate-root h2.ei-prod-h2 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 35px !important;
  line-height: 1.10 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

#main-content .ei-slate-content h3,
#main-content .ei-slate-content h3.ei-prod-h3,
#main-content .ei-slate-content .ei-prod-h3,
#slate-root h3,
#slate-root h3.ei-prod-h3 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 30px !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

/* Mobile footer: remove separator before phone and keep social/legal closer */
@media (max-width: 1100px) {
  .ei-address br.ei-directions-break {
    display: block !important;
  }

  .ei-mobile-social,
  .ei-footer-right .ei-social {
    border-top: 1px solid rgba(255,255,255,.24) !important;
    padding-top: 12px !important;
    margin-top: 8px !important;
  }

  .ei-mobile-legal-dynamic {
    margin-top: 6px !important;
    padding-top: 4px !important;
    padding-bottom: 22px !important;
    background: transparent !important;
  }
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content h2,
  #slate-root h2 {
    font-size: 26px !important;
  }

  #main-content .ei-slate-content h3,
  #slate-root h3 {
    font-size: 23px !important;
  }

  #main-content .ei-slate-content .ei-certificate-programs-column {
    transform: none !important;
  }
}



/* =========================================================
   Final tune v7
   ========================================================= */

/* Blue nav: move only Admissions / Academics / Community Services / Policy & Research 2px farther right */
.ei-mainbar .ei-menu-link.ei-nav-align-about,
.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(7px, 5px) !important;
}

/* Keep About and Apply Now untouched */
.ei-mainbar .ei-menu-link.ei-about-link {
  transform: none !important;
}

/* Slate form button caret: move one space left for all Slate content form buttons */
#main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
#main-content .ei-slate-content .ei-production-table-shell button.default:after,
#main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after,
#main-content .ei-slate-content .ei-production-table-shell input[type="submit"] + span:after,
#main-content .ei-slate-content .ei-production-table-shell input[type="button"] + span:after {
  content: " ›" !important;
  display: inline-block !important;
  margin-left: 6px !important;
  font-size: .95em !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  transform: translateY(-1px) !important;
}

/* H2/H3 hierarchy: a couple points smaller */
#main-content .ei-slate-content h2,
#main-content .ei-slate-content h2.ei-prod-h2,
#main-content .ei-slate-content .ei-prod-h2,
#slate-root h2,
#slate-root h2.ei-prod-h2 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 33px !important;
  line-height: 1.10 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

#main-content .ei-slate-content h3,
#main-content .ei-slate-content h3.ei-prod-h3,
#main-content .ei-slate-content .ei-prod-h3,
#slate-root h3,
#slate-root h3.ei-prod-h3 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 28px !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

/* Program/application body text: force body copy to the same small body style as the not-offered note */
#main-content .ei-slate-content .ei-copy-match-reference,
#main-content .ei-slate-content .ei-match-not-offered-style,
#main-content .ei-slate-content .ei-match-application-copy,
#main-content .ei-slate-content .portal_row p,
#main-content .ei-slate-content .portal_row li,
#main-content .ei-slate-content .portal_row td,
#main-content .ei-slate-content .portal_row td a,
#main-content .ei-slate-content .portal_row span,
#main-content .ei-slate-content .part_rows_container p,
#main-content .ei-slate-content .part_rows_container li,
#main-content .ei-slate-content .part_rows_container td,
#main-content .ei-slate-content .part_rows_container td a,
#main-content .ei-slate-content .part_rows_container span {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Do not let this body-copy rule override headings */
#main-content .ei-slate-content .portal_row h1,
#main-content .ei-slate-content .portal_row h2,
#main-content .ei-slate-content .portal_row h3,
#main-content .ei-slate-content .part_rows_container h1,
#main-content .ei-slate-content .part_rows_container h2,
#main-content .ei-slate-content .part_rows_container h3 {
  color: #000000 !important;
}

/* Certificate Programs: heading up 1px; content/table below it down 5px */
#main-content .ei-slate-content .ei-certificate-programs-align {
  position: relative !important;
  top: -1px !important;
}

#main-content .ei-slate-content .ei-certificate-programs-column table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_table,
#main-content .ei-slate-content .ei-certificate-programs-column .table {
  margin-top: 5px !important;
}


@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content h2,
  #slate-root h2 {
    font-size: 24px !important;
  }

  #main-content .ei-slate-content h3,
  #slate-root h3 {
    font-size: 21px !important;
  }
}



/* =========================================================
   Final tune v8
   ========================================================= */

/* Apply Now + Sign Me Up carets: slightly larger, Erikson-style */
.ei-apply:after {
  content: "›" !important;
  display: inline-block !important;
  margin-left: 3px !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transform: translate(-2px, -1px) !important;
}

.ei-newsletter-form button:after {
  content: "›" !important;
  display: inline-block !important;
  margin-left: 5px !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transform: translateY(-1px) !important;
}

/* Blue nav: move only Admissions / Academics / Community Services / Policy & Research farther right */
.ei-mainbar .ei-menu-link.ei-nav-align-about,
.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(9px, 5px) !important;
}

/* About: move down only, no right movement */
.ei-mainbar .ei-menu-link.ei-about-link {
  transform: translateY(5px) !important;
}

/* Keep Apply Now untouched by nav-link movement */
.ei-mainbar .ei-apply {
  transform: none !important;
}

/* Slate form button caret: one space left and bold for all Slate form buttons */
#main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
#main-content .ei-slate-content .ei-production-table-shell button.default:after,
#main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: " ›" !important;
  display: inline-block !important;
  margin-left: 4px !important;
  font-size: .98em !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  vertical-align: middle !important;
  transform: translateY(-1px) !important;
}

/* Broad non-form Slate body copy tune to match the "It may not be offered..." style */
#main-content .ei-slate-content p:not(.ei-production-table-shell p),
#main-content .ei-slate-content li:not(.ei-production-table-shell li),
#main-content .ei-slate-content td:not(.ei-production-table-shell td),
#main-content .ei-slate-content td:not(.ei-production-table-shell td) a,
#main-content .ei-slate-content .ei-copy-match-reference,
#main-content .ei-slate-content .ei-match-not-offered-style,
#main-content .ei-slate-content .ei-match-application-copy {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  /* font-size removed: was fighting the JS single-authority sizing pass, causing a repeating small/correct flash */
  /* line-height removed alongside font-size above */
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Specific login/program body-copy class */
#main-content .ei-slate-content .ei-force-body-copy-style {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  /* font-size removed: was fighting the JS single-authority sizing pass, causing a repeating small/correct flash */
  /* line-height removed alongside font-size above */
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Do not let the body-copy rules override headings */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h2,
#main-content .ei-slate-content h3 {
  color: #000000 !important;
}

/* H2 remains where it is; H3 down 2 points */
#main-content .ei-slate-content h3,
#main-content .ei-slate-content h3.ei-prod-h3,
#main-content .ei-slate-content .ei-prod-h3,
#slate-root h3,
#slate-root h3.ei-prod-h3 {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 26px !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

/* Left-align Program Offerings h2 */
#main-content .ei-slate-content h2.ei-program-offerings-heading,
#main-content .ei-slate-content .ei-program-offerings-heading {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

/* Certificate Programs: heading up 2px more; content/table below it down 10px more */
#main-content .ei-slate-content .ei-certificate-programs-align {
  position: relative !important;
  top: -3px !important;
}

#main-content .ei-slate-content .ei-certificate-programs-column table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_table,
#main-content .ei-slate-content .ei-certificate-programs-column .table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_row,
#main-content .ei-slate-content .ei-certificate-programs-column .part_rows_container {
  margin-top: 15px !important;
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content h3,
  #slate-root h3 {
    font-size: 19px !important;
  }
}



/* =========================================================
   Final tune v9
   ========================================================= */

/* Blue nav final nudge:
   Admissions + Community Services +1px from previous.
   Policy & Research +5px from previous.
   Academics remains where it was.
   About and Apply Now are not moved. */
.ei-mainbar .ei-menu-link.ei-nav-plus-one {
  transform: translate(10px, 5px) !important;
}

.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(14px, 5px) !important;
}

.ei-mainbar .ei-menu-link.ei-about-link {
  transform: translateY(5px) !important;
}

.ei-mainbar .ei-apply {
  transform: none !important;
}

/* Slate form button caret: move one more space left and keep bold */
#main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
#main-content .ei-slate-content .ei-production-table-shell button.default:after,
#main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: " ›" !important;
  display: inline-block !important;
  margin-left: 2px !important;
  font-size: .98em !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  vertical-align: middle !important;
  transform: translateY(-1px) !important;
}

/* Slate body copy: match Erikson request-information intro paragraph style using the Slate substitute face */
#main-content .ei-slate-content .ei-erikson-body-copy,
#main-content .ei-slate-content .ei-erikson-body-copy a,
#main-content .ei-slate-content .ei-copy-match-reference,
#main-content .ei-slate-content .ei-match-not-offered-style,
#main-content .ei-slate-content .ei-match-application-copy,
#main-content .ei-slate-content .ei-force-body-copy-style {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  /* font-size removed: was fighting the JS single-authority sizing pass, causing a repeating small/correct flash */
  /* line-height removed alongside font-size above */
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Broader portal body-copy coverage, without changing form fields or headings */
#main-content .ei-slate-content .portal_row p,
#main-content .ei-slate-content .portal_row li,
#main-content .ei-slate-content .portal_row td,
#main-content .ei-slate-content .portal_row td a,
#main-content .ei-slate-content .portal_row span,
#main-content .ei-slate-content .part_rows_container p,
#main-content .ei-slate-content .part_rows_container li,
#main-content .ei-slate-content .part_rows_container td,
#main-content .ei-slate-content .part_rows_container td a,
#main-content .ei-slate-content .part_rows_container span {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Keep headings from inheriting body-copy sizing */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h2,
#main-content .ei-slate-content h3,
#main-content .ei-slate-content h1 *,
#main-content .ei-slate-content h2 *,
#main-content .ei-slate-content h3 * {
  color: #000000 !important;
}

/* Certificate Programs: heading up 1px more, content/table down 3px more */
#main-content .ei-slate-content .ei-certificate-programs-align {
  position: relative !important;
  top: -4px !important;
}

#main-content .ei-slate-content .ei-certificate-programs-column table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_table,
#main-content .ei-slate-content .ei-certificate-programs-column .table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_row,
#main-content .ei-slate-content .ei-certificate-programs-column .part_rows_container {
  margin-top: 18px !important;
}

/* Keep Term Offered one line */
#main-content .ei-slate-content .ei-term-offered-nowrap,
#main-content .ei-slate-content th.ei-term-offered-nowrap,
#main-content .ei-slate-content td.ei-term-offered-nowrap {
  white-space: nowrap !important;
}



/* =========================================================
   Final tune v10
   ========================================================= */

/* Blue nav: move ONLY Policy & Research 5px farther right */
.ei-mainbar .ei-menu-link.ei-policy-research-link {
  transform: translate(19px, 5px) !important;
}

/* Program Offerings h2: bold and left-aligned */
#main-content .ei-slate-content h2.ei-program-offerings-heading,
#main-content .ei-slate-content .ei-program-offerings-heading {
  font-weight: 700 !important;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

/* Certificate Programs h3: centered like Master's Degree Programs */
#main-content .ei-slate-content .ei-certificate-programs-align {
  position: relative !important;
  top: -4px !important;
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Move content under Certificate Programs down another 2px */
#main-content .ei-slate-content .ei-certificate-programs-column table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_table,
#main-content .ei-slate-content .ei-certificate-programs-column .table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_row,
#main-content .ei-slate-content .ei-certificate-programs-column .part_rows_container {
  margin-top: 20px !important;
}

/* Register page Slate form copy/labels: increase by 3 points */
body.ei-register-page #main-content .ei-production-table-shell,
body.ei-register-page #main-content .ei-production-table-shell p,
body.ei-register-page #main-content .ei-production-table-shell div,
body.ei-register-page #main-content .ei-production-table-shell td,
body.ei-register-page #main-content .ei-production-table-shell th,
body.ei-register-page #main-content .ei-production-table-shell label,
body.ei-register-page #main-content .ei-production-table-shell .form_label,
body.ei-register-page #main-content .ei-production-table-shell .form_question,
body.ei-register-page #main-content .ei-production-table-shell .form_responses,
body.ei-register-page #main-content .ei-production-table-shell .form_birthdate,
body.ei-register-page #main-content .ei-production-table-shell .form_label_text,
body.ei-register-page #main-content .ei-register-copy-larger {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
}

/* Keep register page inputs readable without making them oversized */
body.ei-register-page #main-content .ei-production-table-shell input,
body.ei-register-page #main-content .ei-production-table-shell select,
body.ei-register-page #main-content .ei-production-table-shell textarea {
  font-size: 17px !important;
  line-height: 1.25 !important;
}

/* Do not alter button size/weight from prior approved styling */
body.ei-register-page #main-content .ei-production-table-shell button,
body.ei-register-page #main-content .ei-production-table-shell input[type="submit"],
body.ei-register-page #main-content .ei-production-table-shell input[type="button"],
body.ei-register-page #main-content .ei-production-table-shell .form_button_submit {
  font-size: inherit !important;
}

/* Keep headings out of the form-copy increase */
body.ei-register-page #main-content .ei-slate-content h1,
body.ei-register-page #main-content .ei-slate-content h2,
body.ei-register-page #main-content .ei-slate-content h3 {
  color: #000000 !important;
}



/* =========================================================
   Final tune v11
   ========================================================= */

/* Program Offerings h2: less heavy than previous bold */
#main-content .ei-slate-content h2.ei-program-offerings-heading,
#main-content .ei-slate-content .ei-program-offerings-heading {
  font-weight: 600 !important;
}

/* Certificate Programs: move content under heading down 1px more */
#main-content .ei-slate-content .ei-certificate-programs-column table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_table,
#main-content .ei-slate-content .ei-certificate-programs-column .table,
#main-content .ei-slate-content .ei-certificate-programs-column .portal_row,
#main-content .ei-slate-content .ei-certificate-programs-column .part_rows_container {
  margin-top: 21px !important;
}

/* Register page Continue caret: back 1 space left */
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell button.default:after,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: " ›" !important;
  display: inline-block !important;
  margin-left: 1px !important;
  font-size: .98em !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  vertical-align: middle !important;
  transform: translateY(-1px) !important;
}

/* Login page Login caret: forward 1 space right */
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell button.default:after,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: " ›" !important;
  display: inline-block !important;
  margin-left: 5px !important;
  font-size: .98em !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  vertical-align: middle !important;
  transform: translateY(-1px) !important;
}

/* Slate form field names: bold and 1 point smaller */
#main-content .ei-slate-content .ei-production-table-shell label,
#main-content .ei-slate-content .ei-production-table-shell .form_label,
#main-content .ei-slate-content .ei-production-table-shell .form_label_text,
#main-content .ei-slate-content .ei-production-table-shell .form_question,
#main-content .ei-slate-content .ei-production-table-shell .form_birthdate legend,
#main-content .ei-slate-content .ei-production-table-shell th,
#main-content .ei-slate-content .ei-field-label-bold-small {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
}

/* Register intro/body copy: increase by 3 points and apply to similar Slate instructional copy */
body.ei-register-page #main-content .ei-slate-content .ei-register-intro-copy,
body.ei-register-page #main-content .ei-slate-content .ei-register-intro-copy *,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .ei-register-intro-copy {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Keep form fields and labels from inheriting the larger intro-copy size */
body.ei-register-page #main-content .ei-production-table-shell input,
body.ei-register-page #main-content .ei-production-table-shell select,
body.ei-register-page #main-content .ei-production-table-shell textarea {
  font-size: 17px !important;
  line-height: 1.25 !important;
}

body.ei-register-page #main-content .ei-production-table-shell label,
body.ei-register-page #main-content .ei-production-table-shell .form_label,
body.ei-register-page #main-content .ei-production-table-shell .form_label_text,
body.ei-register-page #main-content .ei-production-table-shell .form_question,
body.ei-register-page #main-content .ei-field-label-bold-small {
  font-size: 17px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
}



/* =========================================================
   Final tune v12
   ========================================================= */

/* Register page Continue caret: move forward 1 space to the right */
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell button.form_button_submit:after,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell button.default:after,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_button_submit:after {
  content: " ›" !important;
  display: inline-block !important;
  margin-left: 3px !important;
  font-size: .98em !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  vertical-align: middle !important;
  transform: translateY(-1px) !important;
}

/* Login intro copy: match the register intro copy size/style */
body.ei-login-page #main-content .ei-slate-content .ei-login-intro-copy,
body.ei-login-page #main-content .ei-slate-content .ei-login-intro-copy * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Program Offerings h2: decrease weight again */
#main-content .ei-slate-content h2.ei-program-offerings-heading,
#main-content .ei-slate-content .ei-program-offerings-heading {
  font-weight: 500 !important;
}

/* Portal page body copy: match the register intro copy style */
#main-content .ei-slate-content .ei-register-style-copy,
#main-content .ei-slate-content .ei-register-style-copy *,
#main-content .ei-slate-content .ei-portal-register-copy,
#main-content .ei-slate-content .ei-portal-register-copy * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Preserve link behavior while matching the body font size */
#main-content .ei-slate-content .ei-register-style-copy a,
#main-content .ei-slate-content .ei-portal-register-copy a {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
}

/* Do not let body-copy sizing override headings */
#main-content .ei-slate-content h1,
#main-content .ei-slate-content h2,
#main-content .ei-slate-content h3,
#main-content .ei-slate-content h1 *,
#main-content .ei-slate-content h2 *,
#main-content .ei-slate-content h3 * {
  color: #000000 !important;
}



/* =========================================================
   Final tune v13
   ========================================================= */

/* Decrease the bottom of all purple Slate form boxes a little */
#main-content .ei-slate-content .ei-production-table-shell {
  padding-bottom: 42px !important;
}

#main-content .ei-slate-content .ei-production-table-shell table {
  margin-bottom: 0 !important;
}

#main-content .ei-slate-content .ei-production-table-shell .action,
#main-content .ei-slate-content .ei-production-table-shell .form_action,
#main-content .ei-slate-content .ei-production-table-shell .form_actions {
  padding-bottom: 0 !important;
  margin-bottom: -10px !important;
}

/* Keep login/register special button spacing from being crushed */
body.ei-login-page #main-content .ei-production-table-shell {
  padding-bottom: 58px !important;
}

body.ei-register-page #main-content .ei-production-table-shell {
  padding-bottom: 48px !important;
}

/* Program Offerings: a little more weight, but not heavy-bold */
#main-content .ei-slate-content h2.ei-program-offerings-heading,
#main-content .ei-slate-content .ei-program-offerings-heading {
  font-weight: 550 !important;
}

/* Portal page: match register intro copy style for all Slate body text except H1/H2/H3 */
body.ei-portal-page #main-content .ei-slate-content p,
body.ei-portal-page #main-content .ei-slate-content li,
body.ei-portal-page #main-content .ei-slate-content td,
body.ei-portal-page #main-content .ei-slate-content td a,
body.ei-portal-page #main-content .ei-slate-content th,
body.ei-portal-page #main-content .ei-slate-content th a,
body.ei-portal-page #main-content .ei-slate-content div:not(.ei-header):not(.ei-footer):not(.ei-mainbar):not(.ei-production-table-shell),
body.ei-portal-page #main-content .ei-slate-content span,
body.ei-portal-page #main-content .ei-slate-content a:not(.ei-apply):not(.ei-menu-link),
body.ei-portal-page #main-content .ei-slate-content strong,
body.ei-portal-page #main-content .ei-portal-body-copy,
body.ei-portal-page #main-content .ei-portal-body-copy * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Never let the body-copy rule restyle H1/H2/H3 */
body.ei-portal-page #main-content .ei-slate-content h1,
body.ei-portal-page #main-content .ei-slate-content h2,
body.ei-portal-page #main-content .ei-slate-content h3,
body.ei-portal-page #main-content .ei-slate-content h1 *,
body.ei-portal-page #main-content .ei-slate-content h2 *,
body.ei-portal-page #main-content .ei-slate-content h3 * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  color: #000000 !important;
}

/* Italicize the two program column headings */
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align {
  font-style: italic !important;
}

/* Content table headers: Program and Term Offered should be white */
body.ei-portal-page #main-content .ei-slate-content .ei-program-table-header,
body.ei-portal-page #main-content .ei-slate-content .ei-program-table-header *,
body.ei-portal-page #main-content .ei-slate-content th.ei-program-table-header,
body.ei-portal-page #main-content .ei-slate-content th.ei-program-table-header a {
  color: #ffffff !important;
}

/* Keep Term Offered on one line */
body.ei-portal-page #main-content .ei-slate-content .ei-term-offered-nowrap,
body.ei-portal-page #main-content .ei-slate-content th.ei-term-offered-nowrap,
body.ei-portal-page #main-content .ei-slate-content td.ei-term-offered-nowrap {
  white-space: nowrap !important;
}



/* =========================================================
   Final tune v14
   - Restore portal H1/H2/H3 sizing
   - Fix remaining portal body-copy text only
   - Bold Program / Term Offered headers
   - Left-align Returning/First-time Users blocks
   - Restore blue hyperlink initial state
   ========================================================= */

/* Restore portal heading sizes/styles after broad body-copy changes */
body.ei-portal-page #main-content .ei-slate-content h1,
body.ei-portal-page #main-content .ei-slate-content h1 *,
body.ei-portal-page #main-content .ei-slate-content .ei-prod-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-prod-heading * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 43px !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

body.ei-portal-page #main-content .ei-slate-content h2,
body.ei-portal-page #main-content .ei-slate-content h2 *,
body.ei-portal-page #main-content .ei-slate-content .ei-prod-h2,
body.ei-portal-page #main-content .ei-slate-content .ei-prod-h2 * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 33px !important;
  line-height: 1.10 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

body.ei-portal-page #main-content .ei-slate-content h3,
body.ei-portal-page #main-content .ei-slate-content h3 *,
body.ei-portal-page #main-content .ei-slate-content .ei-prod-h3,
body.ei-portal-page #main-content .ei-slate-content .ei-prod-h3 * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 26px !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
}

/* Keep Program Offerings with a little more weight, but not heavy-bold */
body.ei-portal-page #main-content .ei-slate-content h2.ei-program-offerings-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading {
  font-weight: 550 !important;
}

/* Correct the remaining specific portal body-copy items to match the register intro copy */
body.ei-portal-page #main-content .ei-slate-content .ei-portal-specific-body-copy,
body.ei-portal-page #main-content .ei-slate-content .ei-portal-specific-body-copy *,
body.ei-portal-page #main-content .ei-slate-content .ei-portal-specific-body-copy a {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Restore hyperlink initial state to blue inside Slate content */
body.ei-portal-page #main-content .ei-slate-content a,
body.ei-portal-page #main-content .ei-slate-content a:link,
body.ei-portal-page #main-content .ei-slate-content a:visited {
  color: #005ea8 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

body.ei-portal-page #main-content .ei-slate-content a:hover,
body.ei-portal-page #main-content .ei-slate-content a:focus {
  color: #ffc600 !important;
}

/* Do not turn header/footer/nav/apply links blue from this Slate-content rule */
.ei-header a,
.ei-footer a,
.ei-mainbar a,
.ei-apply {
  color: inherit !important;
}

/* Bold Program and Term Offered table headers and make them white */
body.ei-portal-page #main-content .ei-slate-content .ei-program-table-header,
body.ei-portal-page #main-content .ei-slate-content .ei-program-table-header *,
body.ei-portal-page #main-content .ei-slate-content th.ei-program-table-header,
body.ei-portal-page #main-content .ei-slate-content th.ei-program-table-header a {
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* Left justify Returning Users / First-time Users sections */
body.ei-portal-page #main-content .ei-slate-content .ei-user-block-left,
body.ei-portal-page #main-content .ei-slate-content .ei-user-block-left *,
body.ei-portal-page #main-content .ei-slate-content .ei-returning-firsttime-container,
body.ei-portal-page #main-content .ei-slate-content .ei-returning-firsttime-container * {
  text-align: left !important;
}

/* Keep the italic headings requested earlier */
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align {
  font-style: italic !important;
}

/* Mobile heading restores */
@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  body.ei-portal-page #main-content .ei-slate-content h1,
  body.ei-portal-page #main-content .ei-slate-content h1 * {
    font-size: 30px !important;
  }

  body.ei-portal-page #main-content .ei-slate-content h2,
  body.ei-portal-page #main-content .ei-slate-content h2 * {
    font-size: 24px !important;
  }

  body.ei-portal-page #main-content .ei-slate-content h3,
  body.ei-portal-page #main-content .ei-slate-content h3 * {
    font-size: 19px !important;
  }
}



/* =========================================================
   Final tune v15
   - Restore portal page heading styles for user/program blocks
   ========================================================= */

/* Returning Users / First-time Users: restore to the earlier H2 style and size */
body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading *,
body.ei-portal-page #main-content .ei-slate-content .ei-firsttime-user-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-firsttime-user-heading * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 33px !important;
  line-height: 1.10 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
  font-style: normal !important;
}

/* Keep the returning/first-time user blocks left aligned from the prior approved change */
body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-firsttime-user-heading {
  text-align: left !important;
}

/* Program Offerings: restore earlier H2 size/style, but keep the current lighter weight */
body.ei-portal-page #main-content .ei-slate-content h2.ei-program-offerings-heading,
body.ei-portal-page #main-content .ei-slate-content h2.ei-program-offerings-heading *,
body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 33px !important;
  line-height: 1.10 !important;
  font-weight: 550 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
  font-style: normal !important;
}

/* Re-center Master's Degree Programs and Certificate Programs */
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading *,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align * {
  text-align: center !important;
}

body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align {
  display: block !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-style: italic !important;
}

/* Protect all restored headings from the portal body-copy override */
body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading.ei-portal-specific-body-copy,
body.ei-portal-page #main-content .ei-slate-content .ei-firsttime-user-heading.ei-portal-specific-body-copy,
body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading.ei-portal-specific-body-copy,
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading.ei-portal-specific-body-copy,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align.ei-portal-specific-body-copy {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  color: #000000 !important;
}



/* =========================================================
   Final tune v16
   - Restore portal hyperlinks to blue
   - Restore Master's/Certificate h3 styling from earlier version
   - Match specific user copy to "Don't see your program?" style
   ========================================================= */

/* Restore all Slate portal hyperlinks to the earlier blue initial state */
body.ei-portal-page #main-content .ei-slate-content a,
body.ei-portal-page #main-content .ei-slate-content a:link,
body.ei-portal-page #main-content .ei-slate-content a:visited,
#main-content .ei-slate-content.ei-portal-page a,
#main-content .ei-slate-content a.ei-portal-blue-link {
  color: #005ea8 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

body.ei-portal-page #main-content .ei-slate-content a:hover,
body.ei-portal-page #main-content .ei-slate-content a:focus,
#main-content .ei-slate-content a.ei-portal-blue-link:hover,
#main-content .ei-slate-content a.ei-portal-blue-link:focus {
  color: #ffc600 !important;
  text-decoration: underline !important;
}

/* Do not let the portal hyperlink rule affect global nav/footer buttons */
.ei-header a,
.ei-footer a,
.ei-mainbar a,
.ei-apply {
  color: inherit !important;
}

/* Restore Master's Degree Programs and Certificate Programs to the earlier H3 style */
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading *,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 26px !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
  font-style: normal !important;
  text-align: center !important;
}


/* Specific text should match the "Don't see your program?" line */
body.ei-portal-page #main-content .ei-slate-content .ei-match-dont-see-program,
body.ei-portal-page #main-content .ei-slate-content .ei-match-dont-see-program *,
body.ei-portal-page #main-content .ei-slate-content .ei-match-dont-see-program a {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  font-style: normal !important;
  color: #4e4b48 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-align: left !important;
}

/* Keep links inside that text blue, not gray/black */
body.ei-portal-page #main-content .ei-slate-content .ei-match-dont-see-program a,
body.ei-portal-page #main-content .ei-slate-content .ei-match-dont-see-program a:link,
body.ei-portal-page #main-content .ei-slate-content .ei-match-dont-see-program a:visited {
  color: #005ea8 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

body.ei-portal-page #main-content .ei-slate-content .ei-match-dont-see-program a:hover,
body.ei-portal-page #main-content .ei-slate-content .ei-match-dont-see-program a:focus {
  color: #ffc600 !important;
}



/* =========================================================
   Final tune v17
   - Login intro text to larger H3 style
   - Restore portal user headings to H2 style
   - Restore program group headings to larger centered H3 style
   - Make full hyperlink hover turn yellow, not just underline
   ========================================================= */

/* Login page intro: make it the larger H3 style */
body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 30px !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
  font-style: normal !important;
}

/* Portal: Returning Users / First-time Users / Program Offerings restored to H2 scale */
body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading *,
body.ei-portal-page #main-content .ei-slate-content .ei-firsttime-user-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-firsttime-user-heading * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 35px !important;
  line-height: 1.10 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
  font-style: normal !important;
}

/* Program Offerings stays H2-sized, with the current lighter weight */
body.ei-portal-page #main-content .ei-slate-content h2.ei-program-offerings-heading,
body.ei-portal-page #main-content .ei-slate-content h2.ei-program-offerings-heading *,
body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 35px !important;
  line-height: 1.10 !important;
  font-weight: 550 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
  font-style: normal !important;
}

/* Keep Returning Users / First-time Users left-aligned */
body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-firsttime-user-heading {
  text-align: left !important;
}

/* Portal: Master's Degree Programs / Certificate Programs restored to larger centered H3 scale */
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading *,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 30px !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
  font-style: normal !important;
  text-align: center !important;
}

body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align {
  display: block !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Portal hyperlinks: blue initial state, full text turns yellow on hover */
body.ei-portal-page #main-content .ei-slate-content a,
body.ei-portal-page #main-content .ei-slate-content a:link,
body.ei-portal-page #main-content .ei-slate-content a:visited,
body.ei-portal-page #main-content .ei-slate-content a *,
body.ei-portal-page #main-content .ei-slate-content a:link *,
body.ei-portal-page #main-content .ei-slate-content a:visited * {
  color: #005ea8 !important;
  text-decoration: underline !important;
  text-decoration-color: #005ea8 !important;
  text-underline-offset: 2px !important;
}

body.ei-portal-page #main-content .ei-slate-content a:hover,
body.ei-portal-page #main-content .ei-slate-content a:focus,
body.ei-portal-page #main-content .ei-slate-content a:hover *,
body.ei-portal-page #main-content .ei-slate-content a:focus * {
  color: #ffc600 !important;
  text-decoration: underline !important;
  text-decoration-color: #ffc600 !important;
}

/* Do not let portal link rules affect global header/footer/nav/apply links */
.ei-header a,
.ei-header a *,
.ei-footer a,
.ei-footer a *,
.ei-mainbar a,
.ei-mainbar a *,
.ei-apply,
.ei-apply * {
  color: inherit !important;
}

/* Mobile heading restores */
@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro * {
    font-size: 24px !important;
  }

  body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading,
  body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading *,
  body.ei-portal-page #main-content .ei-slate-content .ei-firsttime-user-heading,
  body.ei-portal-page #main-content .ei-slate-content .ei-firsttime-user-heading *,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading * {
    font-size: 24px !important;
  }

  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading *,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align * {
    font-size: 21px !important;
  }
}



/* =========================================================
   Final tune v18
   - Login intro one-line sizing
   - Italic program group H3 headings
   - Portal hyperlink hover keeps text blue; only underline turns yellow
   ========================================================= */

/* Login page intro: slightly smaller and forced to one line on desktop */
body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 28px !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: .006em !important;
  color: #000000 !important;
  text-transform: none !important;
  font-style: normal !important;
  white-space: nowrap !important;
}

/* If the login content area is a little narrower, step down just enough to avoid wrapping */
@media (max-width: 1180px) {
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro * {
    font-size: 26px !important;
  }
}

@media (max-width: 980px) {
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro * {
    font-size: 24px !important;
  }
}

/* Portal: Master's Degree Programs and Certificate Programs should be italicized and centered */
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading *,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align * {
  font-style: italic !important;
  text-align: center !important;
}

/* Portal hyperlinks: text stays blue; only underline turns yellow on hover */
body.ei-portal-page #main-content .ei-slate-content a,
body.ei-portal-page #main-content .ei-slate-content a:link,
body.ei-portal-page #main-content .ei-slate-content a:visited,
body.ei-portal-page #main-content .ei-slate-content a *,
body.ei-portal-page #main-content .ei-slate-content a:link *,
body.ei-portal-page #main-content .ei-slate-content a:visited * {
  color: #005ea8 !important;
  text-decoration: underline !important;
  text-decoration-color: #005ea8 !important;
  text-underline-offset: 2px !important;
}

body.ei-portal-page #main-content .ei-slate-content a:hover,
body.ei-portal-page #main-content .ei-slate-content a:focus,
body.ei-portal-page #main-content .ei-slate-content a:hover *,
body.ei-portal-page #main-content .ei-slate-content a:focus * {
  color: #005ea8 !important;
  text-decoration: underline !important;
  text-decoration-color: #ffc600 !important;
}


/* On mobile, let the login intro wrap naturally rather than overflow */
@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro * {
    font-size: 23px !important;
    white-space: normal !important;
  }
}



/* =========================================================
   Final tune v19
   - Slightly smaller portal H3 program headings
   - Hyperlink text stays blue; only underline changes yellow
   - Slightly smaller login intro text
   ========================================================= */

/* Login page intro: decrease a little more while keeping one-line behavior */
body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 26px !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: .004em !important;
  color: #000000 !important;
  text-transform: none !important;
  font-style: normal !important;
  white-space: nowrap !important;
}

@media (max-width: 1180px) {
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro * {
    font-size: 24px !important;
  }
}

@media (max-width: 980px) {
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro * {
    font-size: 22px !important;
  }
}

/* Portal: slightly decrease Master's Degree Programs and Certificate Programs, keep italic and centered */
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading *,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align,
body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 28px !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: .012em !important;
  color: #000000 !important;
  text-transform: none !important;
  font-style: italic !important;
  text-align: center !important;
}

/* Portal hyperlinks: force text to stay blue on hover; only underline changes yellow */
body.ei-portal-page #main-content .ei-slate-content a,
body.ei-portal-page #main-content .ei-slate-content a:link,
body.ei-portal-page #main-content .ei-slate-content a:visited,
body.ei-portal-page #main-content .ei-slate-content a *,
body.ei-portal-page #main-content .ei-slate-content a:link *,
body.ei-portal-page #main-content .ei-slate-content a:visited *,
#main-content .ei-slate-content a.ei-portal-blue-link,
#main-content .ei-slate-content a.ei-portal-blue-link *,
#main-content .ei-slate-content .ei-match-dont-see-program a,
#main-content .ei-slate-content .ei-match-dont-see-program a * {
  color: #005ea8 !important;
  text-decoration-line: underline !important;
  text-decoration-color: #005ea8 !important;
  text-underline-offset: 2px !important;
}

body.ei-portal-page #main-content .ei-slate-content a:hover,
body.ei-portal-page #main-content .ei-slate-content a:focus,
body.ei-portal-page #main-content .ei-slate-content a:hover *,
body.ei-portal-page #main-content .ei-slate-content a:focus *,
#main-content .ei-slate-content a.ei-portal-blue-link:hover,
#main-content .ei-slate-content a.ei-portal-blue-link:focus,
#main-content .ei-slate-content a.ei-portal-blue-link:hover *,
#main-content .ei-slate-content a.ei-portal-blue-link:focus *,
#main-content .ei-slate-content .ei-match-dont-see-program a:hover,
#main-content .ei-slate-content .ei-match-dont-see-program a:focus,
#main-content .ei-slate-content .ei-match-dont-see-program a:hover *,
#main-content .ei-slate-content .ei-match-dont-see-program a:focus * {
  color: #005ea8 !important;
  text-decoration-line: underline !important;
  text-decoration-color: #ffc600 !important;
}

/* Extra protection against older hover rules that set the full link text yellow */
body.ei-portal-page #main-content .ei-slate-content a:hover:not(.ei-menu-link):not(.ei-apply),
body.ei-portal-page #main-content .ei-slate-content a:focus:not(.ei-menu-link):not(.ei-apply) {
  color: #005ea8 !important;
}

/* Keep global header/footer/nav unaffected */
.ei-header a,
.ei-header a *,
.ei-footer a,
.ei-footer a *,
.ei-mainbar a,
.ei-mainbar a *,
.ei-apply,
.ei-apply * {
  color: inherit !important;
}

@media (max-width: 640px), screen and (orientation: landscape) and (max-height: 500px) {
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
  body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro * {
    font-size: 21px !important;
    white-space: normal !important;
  }

  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading *,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align * {
    font-size: 20px !important;
  }
}



/* =========================================================
   Final tune v20
   Portal hyperlinks: only the underline changes to yellow on hover
   ========================================================= */

/* Portal links: blue text, footer-style ANIMATED yellow underline
   (a 2px line that grows from zero to full width on hover) */
body.ei-portal-page #main-content .ei-slate-content a:not(.ei-menu-link):not(.ei-apply),
#main-content .ei-slate-content a.ei-portal-blue-link,
#main-content a.ei-portal-blue-link {
  color: #005ea8 !important;
  text-decoration: none !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  padding-bottom: 2px !important;
  transition: background-size .26s ease !important;
}

/* Hover/focus: grow the yellow underline */
body.ei-portal-page #main-content .ei-slate-content a:not(.ei-menu-link):not(.ei-apply):hover,
body.ei-portal-page #main-content .ei-slate-content a:not(.ei-menu-link):not(.ei-apply):focus,
#main-content .ei-slate-content a.ei-portal-blue-link:hover,
#main-content .ei-slate-content a.ei-portal-blue-link:focus,
#main-content a.ei-portal-blue-link:hover,
#main-content a.ei-portal-blue-link:focus {
  color: #005ea8 !important;
  text-decoration: none !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-size: 100% 2px !important;
}

/* If Slate wraps link text in spans/strong tags, keep the actual text blue */
body.ei-portal-page #main-content .ei-slate-content a:not(.ei-menu-link):not(.ei-apply) *,
body.ei-portal-page #main-content .ei-slate-content a:not(.ei-menu-link):not(.ei-apply):hover *,
body.ei-portal-page #main-content .ei-slate-content a:not(.ei-menu-link):not(.ei-apply):focus *,
#main-content .ei-slate-content a.ei-portal-blue-link *,
#main-content .ei-slate-content a.ei-portal-blue-link:hover *,
#main-content .ei-slate-content a.ei-portal-blue-link:focus * {
  color: #005ea8 !important;
  text-decoration: none !important;
}

/* Keep global header/footer/nav/apply links unaffected */
.ei-header a,
.ei-header a *,
.ei-footer a,
.ei-footer a *,
.ei-mainbar a,
.ei-mainbar a *,
.ei-apply,
.ei-apply * {
  background-image: none !important;
  color: inherit !important;
}



/* =========================================================
   Sub-navigation only.
   /portal/gr_app mobile is fully reverted to the approved baseline.
   ========================================================= */

/* ------------------------------
   Shared ii-icon submenu style
   ------------------------------ */
.ei-mega h3.ei-partnerships-style-link,
.ei-mega h3.ei-partnerships-style-link a,
.ei-mega a.ei-partnerships-style-link,
.ei-mega a.ei-subnav-feature-link,
.ei-mega .ei-subnav-feature-link,
.ei-mega-academics h3.ei-academics-main-link,
.ei-mega-academics h3.ei-academics-main-link a,
.ei-mega-academics a.ei-academics-main-link {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  margin: 0 0 10px -10px !important;
  padding: 7px 11px 7px 9px !important;
  border-radius: 4px !important;
  background: transparent !important;
  background-image: none !important;
  color: #000000 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.14 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  transition: background-color .18s ease, color .18s ease !important;
}

/* h3 wrapper owns the icon/caret; nested links stay clean */
.ei-mega h3.ei-partnerships-style-link > a,
.ei-mega h3.ei-partnerships-style-link > a.ei-partnerships-style-link,
.ei-mega h3.ei-partnerships-style-link > a.ei-subnav-feature-link,
.ei-mega-academics h3.ei-academics-main-link > a {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  background: transparent !important;
  background-image: none !important;
  color: #000000 !important;
  font: inherit !important;
  text-decoration: none !important;
}

.ei-mega h3.ei-partnerships-style-link > a:before,
.ei-mega h3.ei-partnerships-style-link > a:after,
.ei-mega h3.ei-partnerships-style-link > a.ei-partnerships-style-link:before,
.ei-mega h3.ei-partnerships-style-link > a.ei-partnerships-style-link:after,
.ei-mega h3.ei-partnerships-style-link > a.ei-subnav-feature-link:before,
.ei-mega h3.ei-partnerships-style-link > a.ei-subnav-feature-link:after,
.ei-mega-academics h3.ei-academics-main-link > a:before,
.ei-mega-academics h3.ei-academics-main-link > a:after {
  content: none !important;
  display: none !important;
}

/* One small short-i / tall-i mark */
.ei-mega h3.ei-partnerships-style-link:before,
.ei-mega a.ei-partnerships-style-link:before,
.ei-mega a.ei-subnav-feature-link:before,
.ei-mega .ei-subnav-feature-link:before,
.ei-mega-academics h3.ei-academics-main-link:before,
.ei-mega-academics a.ei-academics-main-link:before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 11px !important;
  height: 22px !important;
  margin: 0 !important;
  vertical-align: middle !important;
  background:
    radial-gradient(circle, #ffc600 0 1.6px, transparent 1.8px) 0px 5px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 11px / 2.5px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.6px, transparent 1.8px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 8px 6px / 2.5px 16px no-repeat !important;
}

/* One caret only */
.ei-mega h3.ei-partnerships-style-link:after,
.ei-mega a.ei-partnerships-style-link:after,
.ei-mega a.ei-subnav-feature-link:after,
.ei-mega .ei-subnav-feature-link:after,
.ei-mega-academics h3.ei-academics-main-link:after,
.ei-mega-academics a.ei-academics-main-link:after {
  content: "›" !important;
  display: inline-block !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-left: 1px !important;
  line-height: 1 !important;
  background: none !important;
}

.ei-mega h3.ei-partnerships-style-link:hover,
.ei-mega h3.ei-partnerships-style-link:focus-within,
.ei-mega a.ei-partnerships-style-link:hover,
.ei-mega a.ei-partnerships-style-link:focus,
.ei-mega a.ei-subnav-feature-link:hover,
.ei-mega a.ei-subnav-feature-link:focus,
.ei-mega .ei-subnav-feature-link:hover,
.ei-mega .ei-subnav-feature-link:focus,
.ei-mega-academics h3.ei-academics-main-link:hover,
.ei-mega-academics h3.ei-academics-main-link:focus-within,
.ei-mega-academics a.ei-academics-main-link:hover,
.ei-mega-academics a.ei-academics-main-link:focus {
  background: #ffc600 !important;
  background-image: none !important;
  color: #000000 !important;
  text-decoration: none !important;
}

.ei-mega h3.ei-partnerships-style-link:hover:before,
.ei-mega h3.ei-partnerships-style-link:focus-within:before,
.ei-mega a.ei-partnerships-style-link:hover:before,
.ei-mega a.ei-partnerships-style-link:focus:before,
.ei-mega a.ei-subnav-feature-link:hover:before,
.ei-mega a.ei-subnav-feature-link:focus:before,
.ei-mega .ei-subnav-feature-link:hover:before,
.ei-mega .ei-subnav-feature-link:focus:before,
.ei-mega-academics h3.ei-academics-main-link:hover:before,
.ei-mega-academics h3.ei-academics-main-link:focus-within:before,
.ei-mega-academics a.ei-academics-main-link:hover:before,
.ei-mega-academics a.ei-academics-main-link:focus:before {
  background:
    radial-gradient(circle, #ffffff 0 1.6px, transparent 1.8px) 0px 5px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 11px / 2.5px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.6px, transparent 1.8px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 8px 6px / 2.5px 16px no-repeat !important;
}

/* ------------------------------
   Simple line links: Essays/FAN style
   ------------------------------ */
.ei-mega a.ei-subnav-simple-link,
.ei-mega li a.ei-subnav-simple-link,
.ei-mega-academics a.ei-academics-line-link,
.ei-mega-academics a.ei-academics-column-link,
.ei-mega-academics a.ei-academics-masters-link {
  position: relative !important;
  display: inline-block !important;
  margin: 0 0 8px 0 !important;
  padding: 0 12px 2px 0 !important;
  color: #000000 !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.28 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: color .18s ease, background-size .22s ease !important;
}

.ei-mega a.ei-subnav-simple-link:before,
.ei-mega li a.ei-subnav-simple-link:before,
.ei-mega-academics a.ei-academics-line-link:before,
.ei-mega-academics a.ei-academics-column-link:before,
.ei-mega-academics a.ei-academics-masters-link:before {
  content: none !important;
  display: none !important;
}

.ei-mega a.ei-subnav-simple-link:after,
.ei-mega li a.ei-subnav-simple-link:after,
.ei-mega-academics a.ei-academics-line-link:after,
.ei-mega-academics a.ei-academics-column-link:after,
.ei-mega-academics a.ei-academics-masters-link:after {
  content: "›" !important;
  display: inline-block !important;
  position: static !important;
  margin-left: 5px !important;
  color: currentColor !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  background: none !important;
}

.ei-mega a.ei-subnav-simple-link:hover,
.ei-mega a.ei-subnav-simple-link:focus,
.ei-mega li a.ei-subnav-simple-link:hover,
.ei-mega li a.ei-subnav-simple-link:focus,
.ei-mega-academics a.ei-academics-line-link:hover,
.ei-mega-academics a.ei-academics-line-link:focus,
.ei-mega-academics a.ei-academics-column-link:hover,
.ei-mega-academics a.ei-academics-column-link:focus,
.ei-mega-academics a.ei-academics-masters-link:hover,
.ei-mega-academics a.ei-academics-masters-link:focus {
  color: #005ea8 !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 100% 2px !important;
  text-decoration: none !important;
}

/* Links requested as not bold */
.ei-mega-academics a.ei-academics-normal-line-link {
  font-weight: 400 !important;
}

/* ------------------------------
   Academics dropdown layout
   ------------------------------ */
.ei-mega.ei-mega-academics {
  grid-template-columns: minmax(250px, 1.15fr) minmax(175px, .85fr) minmax(250px, 1.15fr) minmax(225px, 1fr) !important;
  column-gap: 42px !important;
  min-width: 1040px !important;
}

.ei-mega-academics .ei-academics-phd-cert-col {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: start !important;
  margin-top: 2.6em !important;
  padding-top: 0 !important;
  transform: none !important;
}

.ei-mega-academics .ei-academics-explore-col {
  grid-column: 4 !important;
  grid-row: 1 !important;
  align-self: start !important;
  margin-top: 2.6em !important;
  padding-top: 0 !important;
  transform: none !important;
}

.ei-mega-academics .ei-academics-extra-col ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ei-mega-academics .ei-academics-extra-col li {
  margin: 0 0 10px 0 !important;
}

/* Academics master's subprogram links:
   yellow bullet, caret after, and same hover as FAN */
.ei-mega-academics li.ei-academics-bullet-row {
  position: relative !important;
  list-style: none !important;
  margin-left: 14px !important;
  margin-bottom: 9px !important;
  padding-left: 0 !important;
}

.ei-mega-academics li.ei-academics-bullet-row::marker {
  content: "" !important;
}

.ei-mega-academics li.ei-academics-bullet-row:before {
  content: "•" !important;
  display: block !important;
  position: absolute !important;
  left: -11px !important;
  top: 0.15em !important;
  color: #ffc600 !important;
  font-size: 10.5px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  background: none !important;
}

.ei-mega-academics li.ei-academics-bullet-row a,
.ei-mega-academics a.ei-academics-bullet-link {
  position: relative !important;
  display: inline-block !important;
  color: #111111 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.28 !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  padding: 0 12px 2px 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  transition: color .18s ease, background-size .22s ease !important;
}

.ei-mega-academics li.ei-academics-bullet-row a:before,
.ei-mega-academics a.ei-academics-bullet-link:before {
  content: none !important;
  display: none !important;
}

.ei-mega-academics li.ei-academics-bullet-row a:after,
.ei-mega-academics a.ei-academics-bullet-link:after {
  content: "›" !important;
  display: inline-block !important;
  position: static !important;
  margin-left: 5px !important;
  color: currentColor !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  background: none !important;
}

.ei-mega-academics li.ei-academics-bullet-row a:hover,
.ei-mega-academics li.ei-academics-bullet-row a:focus,
.ei-mega-academics a.ei-academics-bullet-link:hover,
.ei-mega-academics a.ei-academics-bullet-link:focus {
  color: #005ea8 !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 100% 2px !important;
  text-decoration: none !important;
}



/* =========================================================
   Sub-navigation continuation + login link fix v1
   Built from true baseline + prior subnav work.
   Does not add /portal/gr_app mobile layout changes.
   ========================================================= */

/* Admissions: Essays should not show any yellow bullet/list marker */
.ei-mega-admissions li.ei-no-bullet-row,
.ei-mega-admissions li:has(a.ei-admissions-essays-link) {
  list-style: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}


/* Academics: keep the Explore caret attached to the text */
.ei-mega-academics a.ei-academics-explore-link,
.ei-mega-academics a.ei-academics-column-link.ei-academics-explore-link {
  white-space: nowrap !important;
  padding-right: 0 !important;
}

.ei-mega-academics a.ei-academics-explore-link:after {
  white-space: nowrap !important;
  margin-left: 5px !important;
}

/* Shared main/ii submenu style used by Academics Graduate Programs,
   Community Services, and Policy & Research main items */
.ei-mega-community a.ei-subnav-feature-link,
.ei-mega-community .ei-subnav-feature-link,
.ei-mega-policy a.ei-subnav-feature-link,
.ei-mega-policy .ei-subnav-feature-link,
.ei-mega-academics a.ei-academics-main-link,
.ei-mega-academics h3.ei-academics-main-link,
.ei-mega-academics h3.ei-academics-main-link a {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  margin: 0 0 10px -10px !important;
  padding: 7px 11px 7px 9px !important;
  border-radius: 4px !important;
  background: transparent !important;
  background-image: none !important;
  color: #000000 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.14 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  transition: background-color .18s ease, color .18s ease !important;
}

/* Replace old yellow bars with the short-i / tall-i mark */
.ei-mega-community a.ei-subnav-feature-link:before,
.ei-mega-community .ei-subnav-feature-link:before,
.ei-mega-policy a.ei-subnav-feature-link:before,
.ei-mega-policy .ei-subnav-feature-link:before,
.ei-mega-academics a.ei-academics-main-link:before,
.ei-mega-academics h3.ei-academics-main-link:before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 11px !important;
  height: 22px !important;
  margin: 0 !important;
  vertical-align: middle !important;
  background:
    radial-gradient(circle, #ffc600 0 1.6px, transparent 1.8px) 0px 5px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 11px / 2.5px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.6px, transparent 1.8px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 8px 6px / 2.5px 16px no-repeat !important;
}

.ei-mega-community a.ei-subnav-feature-link:after,
.ei-mega-community .ei-subnav-feature-link:after,
.ei-mega-policy a.ei-subnav-feature-link:after,
.ei-mega-policy .ei-subnav-feature-link:after,
.ei-mega-academics a.ei-academics-main-link:after,
.ei-mega-academics h3.ei-academics-main-link:after {
  content: "›" !important;
  display: inline-block !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-left: 1px !important;
  line-height: 1 !important;
  background: none !important;
}

.ei-mega-community a.ei-subnav-feature-link:hover,
.ei-mega-community a.ei-subnav-feature-link:focus,
.ei-mega-community .ei-subnav-feature-link:hover,
.ei-mega-community .ei-subnav-feature-link:focus,
.ei-mega-policy a.ei-subnav-feature-link:hover,
.ei-mega-policy a.ei-subnav-feature-link:focus,
.ei-mega-policy .ei-subnav-feature-link:hover,
.ei-mega-policy .ei-subnav-feature-link:focus,
.ei-mega-academics a.ei-academics-main-link:hover,
.ei-mega-academics a.ei-academics-main-link:focus,
.ei-mega-academics h3.ei-academics-main-link:hover,
.ei-mega-academics h3.ei-academics-main-link:focus-within {
  background: #ffc600 !important;
  background-image: none !important;
  color: #000000 !important;
  text-decoration: none !important;
}

.ei-mega-community a.ei-subnav-feature-link:hover:before,
.ei-mega-community a.ei-subnav-feature-link:focus:before,
.ei-mega-community .ei-subnav-feature-link:hover:before,
.ei-mega-community .ei-subnav-feature-link:focus:before,
.ei-mega-policy a.ei-subnav-feature-link:hover:before,
.ei-mega-policy a.ei-subnav-feature-link:focus:before,
.ei-mega-policy .ei-subnav-feature-link:hover:before,
.ei-mega-policy .ei-subnav-feature-link:focus:before,
.ei-mega-academics a.ei-academics-main-link:hover:before,
.ei-mega-academics a.ei-academics-main-link:focus:before,
.ei-mega-academics h3.ei-academics-main-link:hover:before,
.ei-mega-academics h3.ei-academics-main-link:focus-within:before {
  background:
    radial-gradient(circle, #ffffff 0 1.6px, transparent 1.8px) 0px 5px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 11px / 2.5px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.6px, transparent 1.8px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 8px 6px / 2.5px 16px no-repeat !important;
}

/* Remove legacy bars from Community/Policy main rows */
.ei-mega-community li:has(a.ei-subnav-feature-link):before,
.ei-mega-community li:has(a.ei-subnav-feature-link)::before,
.ei-mega-policy li:has(a.ei-subnav-feature-link):before,
.ei-mega-policy li:has(a.ei-subnav-feature-link)::before {
  content: none !important;
  display: none !important;
}

/* Policy & Research lower links: same as Admissions Tuition & Fees */
.ei-mega-policy a.ei-policy-simple-link,
.ei-mega-policy li a.ei-policy-simple-link {
  position: relative !important;
  display: inline-block !important;
  margin: 0 0 8px 0 !important;
  padding: 0 12px 2px 0 !important;
  color: #000000 !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.28 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: color .18s ease, background-size .22s ease !important;
}

.ei-mega-policy a.ei-policy-simple-link:before,
.ei-mega-policy li a.ei-policy-simple-link:before,
.ei-mega-policy li.ei-policy-simple-row:before,
.ei-mega-policy li.ei-policy-simple-row::before {
  content: none !important;
  display: none !important;
}

.ei-mega-policy a.ei-policy-simple-link:after,
.ei-mega-policy li a.ei-policy-simple-link:after {
  content: "›" !important;
  display: inline-block !important;
  position: static !important;
  margin-left: 5px !important;
  color: currentColor !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  background: none !important;
}

.ei-mega-policy a.ei-policy-simple-link:hover,
.ei-mega-policy a.ei-policy-simple-link:focus,
.ei-mega-policy li a.ei-policy-simple-link:hover,
.ei-mega-policy li a.ei-policy-simple-link:focus {
  color: #005ea8 !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 100% 2px !important;
  text-decoration: none !important;
}

/* About rebuilt menu: keep layout stable */
.ei-mega-about.ei-about-rebuilt {
  grid-template-columns: repeat(3, minmax(190px, 1fr)) !important;
  column-gap: 42px !important;
}

.ei-mega-about.ei-about-rebuilt ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Forgot Your Password link on login page: white with animated yellow hover line */
body.ei-login-page a.ei-forgot-password-link,
body.ei-login-page a.ei-forgot-password-link:link,
body.ei-login-page a.ei-forgot-password-link:visited {
  color: #ffffff !important;
  text-decoration: none !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  transition: background-size .22s ease, color .18s ease !important;
}

body.ei-login-page a.ei-forgot-password-link:hover,
body.ei-login-page a.ei-forgot-password-link:focus {
  color: #ffffff !important;
  background-size: 100% 2px !important;
  text-decoration: none !important;
}



/* Final subnav/login tune v2 */

/* Admissions: Essays has no bullet */
.ei-mega-admissions li.ei-no-bullet-row,
.ei-mega-admissions li:has(a.ei-admissions-essays-link) {
  list-style: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}
.ei-mega-admissions li.ei-no-bullet-row:before,
.ei-mega-admissions li.ei-no-bullet-row::before,
.ei-mega-admissions li:has(a.ei-admissions-essays-link):before,
.ei-mega-admissions li:has(a.ei-admissions-essays-link)::before {
  content: none !important;
  display: none !important;
}

/* Academics: align ii/caret with Graduate Programs and Professional Development */
.ei-mega-academics h3.ei-academics-main-link,
.ei-mega-academics h3.ei-academics-main-link a,
.ei-mega-academics a.ei-academics-main-link {
  align-items: center !important;
  line-height: 1.2 !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  overflow: visible !important;
}
.ei-mega-academics h3.ei-academics-main-link:before,
.ei-mega-academics a.ei-academics-main-link:before {
  height: 21px !important;
  transform: translateY(0) !important;
  background:
    radial-gradient(circle, #ffc600 0 1.6px, transparent 1.8px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 10px / 2.5px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.6px, transparent 1.8px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 8px 6px / 2.5px 15px no-repeat !important;
}
.ei-mega-academics h3.ei-academics-main-link:hover:before,
.ei-mega-academics h3.ei-academics-main-link:focus-within:before,
.ei-mega-academics a.ei-academics-main-link:hover:before,
.ei-mega-academics a.ei-academics-main-link:focus:before {
  background:
    radial-gradient(circle, #ffffff 0 1.6px, transparent 1.8px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 10px / 2.5px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.6px, transparent 1.8px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 8px 6px / 2.5px 15px no-repeat !important;
}
.ei-mega-academics a.ei-academics-explore-link {
  white-space: nowrap !important;
  padding-right: 0 !important;
}

/* Community/Policy: remove parent yellow bars and duplicate carets */
.ei-mega-community h3:has(a.ei-subnav-feature-link):before,
.ei-mega-community h3:has(a.ei-subnav-feature-link):after,
.ei-mega-community li:has(a.ei-subnav-feature-link):before,
.ei-mega-community li:has(a.ei-subnav-feature-link)::before,
.ei-mega-policy h3:has(a.ei-subnav-feature-link):before,
.ei-mega-policy h3:has(a.ei-subnav-feature-link):after,
.ei-mega-policy li:has(a.ei-subnav-feature-link):before,
.ei-mega-policy li:has(a.ei-subnav-feature-link)::before,
.ei-mega-about h3:has(a.ei-about-feature-link):before,
.ei-mega-about h3:has(a.ei-about-feature-link):after {
  content: none !important;
  display: none !important;
}
.ei-mega-community h3:has(a.ei-subnav-feature-link),
.ei-mega-policy h3:has(a.ei-subnav-feature-link),
.ei-mega-about h3:has(a.ei-about-feature-link) {
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-image: none !important;
}

/* About menu */
.ei-mega-about.ei-about-rebuilt-final {
  grid-template-columns: repeat(3, minmax(190px, 1fr)) !important;
  column-gap: 42px !important;
}
.ei-mega-about.ei-about-rebuilt-final ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.ei-mega-about a.ei-about-feature-link {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  margin: 0 0 10px -10px !important;
  padding: 7px 11px 7px 9px !important;
  border-radius: 4px !important;
  background: transparent !important;
  background-image: none !important;
  color: #000000 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.14 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.ei-mega-about a.ei-about-feature-link:before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 11px !important;
  height: 22px !important;
  background:
    radial-gradient(circle, #ffc600 0 1.6px, transparent 1.8px) 0px 5px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 11px / 2.5px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.6px, transparent 1.8px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 8px 6px / 2.5px 16px no-repeat !important;
}
.ei-mega-about a.ei-about-feature-link:after {
  content: "›" !important;
  display: inline-block !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-left: 1px !important;
  line-height: 1 !important;
}
.ei-mega-about a.ei-about-feature-link:hover:before,
.ei-mega-about a.ei-about-feature-link:focus:before {
  background:
    radial-gradient(circle, #ffffff 0 1.6px, transparent 1.8px) 0px 5px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 11px / 2.5px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.6px, transparent 1.8px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 8px 6px / 2.5px 16px no-repeat !important;
}
.ei-mega-about a.ei-about-simple-link {
  position: relative !important;
  display: inline-block !important;
  margin: 0 0 8px 0 !important;
  padding: 0 12px 2px 0 !important;
  color: #000000 !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.28 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: color .18s ease, background-size .22s ease !important;
}
.ei-mega-about a.ei-about-simple-link:before {
  content: none !important;
  display: none !important;
}
.ei-mega-about a.ei-about-simple-link:after {
  content: "›" !important;
  display: inline-block !important;
  margin-left: 5px !important;
  color: currentColor !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}
.ei-mega-about a.ei-about-simple-link:hover,
.ei-mega-about a.ei-about-simple-link:focus {
  color: #005ea8 !important;
  background-size: 100% 2px !important;
  text-decoration: none !important;
}

/* Forgot Your Password: force white text and yellow hover line */
body.ei-login-page a.ei-forgot-password-link,
body.ei-login-page a.ei-forgot-password-link:link,
body.ei-login-page a.ei-forgot-password-link:visited,
body.ei-login-page a[href*="password"],
body.ei-login-page a[href*="password"]:link,
body.ei-login-page a[href*="password"]:visited {
  color: #ffffff !important;
  text-decoration: none !important;
  text-decoration-color: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  transition: background-size .22s ease, color .18s ease !important;
}
body.ei-login-page a.ei-forgot-password-link:hover,
body.ei-login-page a.ei-forgot-password-link:focus,
body.ei-login-page a[href*="password"]:hover,
body.ei-login-page a[href*="password"]:focus {
  color: #ffffff !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-size: 100% 2px !important;
}
body.ei-login-page a.ei-forgot-password-link:before,
body.ei-login-page a.ei-forgot-password-link:after,
body.ei-login-page a[href*="password"]:before,
body.ei-login-page a[href*="password"]:after {
  content: none !important;
  display: none !important;
}



/* =========================================================
   FINAL DIRECT FIX
   ========================================================= */

/* About placement: ensure child links sit visually under the parent item */
.ei-mega-about.ei-about-rebuilt-final ul,
.ei-mega-about.ei-about-final-placement ul,
.ei-mega-about ul:has(a.ei-about-simple-link) {
  list-style: none !important;
  margin: -5px 0 12px 0 !important;
  padding: 0 !important;
}

.ei-mega-about.ei-about-rebuilt-final li,
.ei-mega-about.ei-about-final-placement li,
.ei-mega-about li:has(a.ei-about-simple-link) {
  list-style: none !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
}

.ei-mega-about.ei-about-rebuilt-final li:before,
.ei-mega-about.ei-about-rebuilt-final li::before,
.ei-mega-about.ei-about-final-placement li:before,
.ei-mega-about.ei-about-final-placement li::before,
.ei-mega-about li:has(a.ei-about-simple-link):before,
.ei-mega-about li:has(a.ei-about-simple-link)::before {
  content: none !important;
  display: none !important;
}

/* Two-i subnavigation links: slightly lighter text */
.ei-mega a.ei-partnerships-style-link,
.ei-mega a.ei-subnav-feature-link,
.ei-mega .ei-subnav-feature-link,
.ei-mega h3.ei-partnerships-style-link,
.ei-mega h3.ei-partnerships-style-link a,
.ei-mega-academics h3.ei-academics-main-link,
.ei-mega-academics h3.ei-academics-main-link a,
.ei-mega-academics a.ei-academics-main-link,
.ei-mega-about a.ei-about-feature-link,
.ei-mega-community a.ei-subnav-feature-link,
.ei-mega-policy a.ei-subnav-feature-link {
  font-weight: 600 !important;
}

/* Two-i marks: slightly heavier */
.ei-mega h3.ei-partnerships-style-link:before,
.ei-mega a.ei-partnerships-style-link:before,
.ei-mega a.ei-subnav-feature-link:before,
.ei-mega .ei-subnav-feature-link:before,
.ei-mega-academics h3.ei-academics-main-link:before,
.ei-mega-academics a.ei-academics-main-link:before,
.ei-mega-about a.ei-about-feature-link:before,
.ei-mega-community a.ei-subnav-feature-link:before,
.ei-mega-policy a.ei-subnav-feature-link:before {
  width: 12px !important;
  height: 21px !important;
  background:
    radial-gradient(circle, #ffc600 0 1.75px, transparent 1.95px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 10px / 3px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.75px, transparent 1.95px) 8px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 9px 6px / 3px 15px no-repeat !important;
}

.ei-mega h3.ei-partnerships-style-link:hover:before,
.ei-mega h3.ei-partnerships-style-link:focus-within:before,
.ei-mega a.ei-partnerships-style-link:hover:before,
.ei-mega a.ei-partnerships-style-link:focus:before,
.ei-mega a.ei-subnav-feature-link:hover:before,
.ei-mega a.ei-subnav-feature-link:focus:before,
.ei-mega .ei-subnav-feature-link:hover:before,
.ei-mega .ei-subnav-feature-link:focus:before,
.ei-mega-academics h3.ei-academics-main-link:hover:before,
.ei-mega-academics h3.ei-academics-main-link:focus-within:before,
.ei-mega-academics a.ei-academics-main-link:hover:before,
.ei-mega-academics a.ei-academics-main-link:focus:before,
.ei-mega-about a.ei-about-feature-link:hover:before,
.ei-mega-about a.ei-about-feature-link:focus:before,
.ei-mega-community a.ei-subnav-feature-link:hover:before,
.ei-mega-community a.ei-subnav-feature-link:focus:before,
.ei-mega-policy a.ei-subnav-feature-link:hover:before,
.ei-mega-policy a.ei-subnav-feature-link:focus:before {
  background:
    radial-gradient(circle, #ffffff 0 1.75px, transparent 1.95px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 10px / 3px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.75px, transparent 1.95px) 8px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 9px 6px / 3px 15px no-repeat !important;
}

/* Forgot Your Password: initial white underline plus yellow hover animation.
   This targets the link before any JS class is added.

   These selectors were missing the "body.ei-login-page" scope every other
   version of this same rule in this file has -- confirmed live that it
   was matching ANY link anywhere on the site whose href happens to
   contain "password" or "reset" (e.g. a Global Sidebar Links admin card
   pointing at a password-reset URL), forcing it white-on-white and
   making it invisible outside the login page it was actually meant for. */
body.ei-login-page a[href*="forgot"],
body.ei-login-page a[href*="password"],
body.ei-login-page a[href*="reset"],
body.ei-login-page a.ei-forgot-password-link,
body.ei-login-page a.ei-forgot-password-link:link,
body.ei-login-page a.ei-forgot-password-link:visited {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration: none !important;
  text-decoration-color: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-color: transparent !important;
  background-image:
    linear-gradient(#ffc600, #ffc600),
    linear-gradient(#ffffff, #ffffff) !important;
  background-repeat: no-repeat, no-repeat !important;
  background-position: 0 calc(100% - 1px), 0 calc(100% - 1px) !important;
  background-size: 0 2px, 100% 2px !important;
  transition: background-size .24s ease, color .18s ease !important;
}

body.ei-login-page a[href*="forgot"]:hover,
body.ei-login-page a[href*="password"]:hover,
body.ei-login-page a[href*="reset"]:hover,
body.ei-login-page a[href*="forgot"]:focus,
body.ei-login-page a[href*="password"]:focus,
body.ei-login-page a[href*="reset"]:focus,
body.ei-login-page a.ei-forgot-password-link:hover,
body.ei-login-page a.ei-forgot-password-link:focus {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration: none !important;
  text-decoration-color: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-color: transparent !important;
  background-image:
    linear-gradient(#ffc600, #ffc600),
    linear-gradient(#ffffff, #ffffff) !important;
  background-repeat: no-repeat, no-repeat !important;
  background-position: 0 calc(100% - 1px), 0 calc(100% - 1px) !important;
  background-size: 100% 2px, 100% 2px !important;
}



/* =========================================================
   Targeted retry only:
   - Academics Graduate Programs / Professional Development alignment
   - Child Development – Core closer under Master's Degree
   - About Plan Your Visit + Philanthropy ii-style
   ========================================================= */

/* ACADEMICS: let the actual link carry the ii icon/caret so everything aligns */
.ei-mega-academics h3.ei-academics-main-link {
  display: block !important;
  margin: 0 0 8px -10px !important;
  padding: 0 !important;
  line-height: 1 !important;
  background: transparent !important;
  background-image: none !important;
  overflow: visible !important;
}

.ei-mega-academics h3.ei-academics-main-link:before,
.ei-mega-academics h3.ei-academics-main-link:after {
  content: none !important;
  display: none !important;
}

.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  width: auto !important;
  min-height: 29px !important;
  margin: 0 !important;
  padding: 7px 11px 7px 9px !important;
  border-radius: 4px !important;
  background: transparent !important;
  background-image: none !important;
  color: #000000 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.14 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  vertical-align: middle !important;
  overflow: visible !important;
}

.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link:before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  align-self: center !important;
  width: 11px !important;
  height: 21px !important;
  margin: 0 !important;
  transform: translateY(-1px) !important;
  background:
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 8px 6px / 2.75px 15px no-repeat !important;
}

.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link:after {
  content: "›" !important;
  display: inline-block !important;
  align-self: center !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-left: 1px !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
  background: none !important;
}

.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link:hover,
.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link:focus {
  background: #ffc600 !important;
  background-image: none !important;
  color: #000000 !important;
  text-decoration: none !important;
}

.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link:hover:before,
.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link:focus:before {
  background:
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 8px 6px / 2.75px 15px no-repeat !important;
}

/* Child Development – Core closer to Master's Degree */
.ei-mega-academics li.ei-academics-masters-row {
  margin-bottom: -2px !important;
  padding-bottom: 0 !important;
}

.ei-mega-academics li.ei-academics-masters-row > a.ei-academics-masters-link,
.ei-mega-academics a.ei-academics-masters-link {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.ei-mega-academics li.ei-academics-first-bullet-row {
  margin-top: -2px !important;
  padding-top: 0 !important;
}

/* ABOUT: Plan Your Visit and Philanthropy should match Edward Neisser Library ii-style */
.ei-mega-about li:has(a.ei-about-promoted-feature),
.ei-mega-about ul:has(a.ei-about-promoted-feature) {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ei-mega-about li:has(a.ei-about-promoted-feature):before,
.ei-mega-about li:has(a.ei-about-promoted-feature)::before {
  content: none !important;
  display: none !important;
}

.ei-mega-about a.ei-about-promoted-feature,
.ei-mega-about a.ei-about-feature-link.ei-about-promoted-feature {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  width: auto !important;
  margin: 0 0 10px -10px !important;
  padding: 7px 11px 7px 9px !important;
  border-radius: 4px !important;
  background: transparent !important;
  background-image: none !important;
  color: #000000 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.14 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  overflow: visible !important;
}

.ei-mega-about a.ei-about-promoted-feature:before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 11px !important;
  height: 21px !important;
  transform: translateY(-1px) !important;
  background:
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 8px 6px / 2.75px 15px no-repeat !important;
}

.ei-mega-about a.ei-about-promoted-feature:after {
  content: "›" !important;
  display: inline-block !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-left: 1px !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
  background: none !important;
}

.ei-mega-about a.ei-about-promoted-feature:hover,
.ei-mega-about a.ei-about-promoted-feature:focus {
  background: #ffc600 !important;
  background-image: none !important;
  color: #000000 !important;
  text-decoration: none !important;
}

.ei-mega-about a.ei-about-promoted-feature:hover:before,
.ei-mega-about a.ei-about-promoted-feature:focus:before {
  background:
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 7px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 8px 6px / 2.75px 15px no-repeat !important;
}



/* =========================================================
   Targeted fix v2
   ========================================================= */

/* Academics: align the ii / text / caret on Graduate Programs and Professional Development */
.ei-mega-academics h3.ei-academics-main-link {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  width: auto !important;
  min-height: 30px !important;
  margin: 0 0 8px -10px !important;
  padding: 7px 11px 7px 9px !important;
  border-radius: 4px !important;
  background: transparent !important;
  background-image: none !important;
  overflow: visible !important;
  vertical-align: middle !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.14 !important;
  font-weight: 600 !important;
  color: #000000 !important;
}

.ei-mega-academics h3.ei-academics-main-link > a,
.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000000 !important;
  font: inherit !important;
  line-height: 1.14 !important;
  text-decoration: none !important;
  background: transparent !important;
  background-image: none !important;
}

.ei-mega-academics h3.ei-academics-main-link > a:before,
.ei-mega-academics h3.ei-academics-main-link > a:after {
  content: none !important;
  display: none !important;
}

.ei-mega-academics h3.ei-academics-main-link:before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 10px !important;
  height: 21px !important;
  margin: 0 !important;
  align-self: center !important;
  transform: translateY(-1px) !important;
  background:
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 6px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 7px 6px / 2.75px 15px no-repeat !important;
}




/* Child Development – Core: move down just a touch from the last build */
.ei-mega-academics li.ei-academics-masters-row {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}


.ei-mega-academics li.ei-academics-first-bullet-row {
  margin-top: 1px !important;
  padding-top: 0 !important;
}

/* About: Plan Your Visit and Philanthropy are same ii-style as Edward Neisser Library / Erikson Store */
.ei-mega-about h3:has(a.ei-about-feature-link) {
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-image: none !important;
}

.ei-mega-about h3:has(a.ei-about-feature-link):before,
.ei-mega-about h3:has(a.ei-about-feature-link):after {
  content: none !important;
  display: none !important;
}

.ei-mega-about a.ei-about-feature-link {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  width: auto !important;
  margin: 0 0 10px -10px !important;
  padding: 7px 11px 7px 9px !important;
  border-radius: 4px !important;
  background: transparent !important;
  background-image: none !important;
  color: #000000 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.14 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  overflow: visible !important;
}

.ei-mega-about a.ei-about-feature-link:before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 10px !important;
  height: 21px !important;
  margin: 0 !important;
  transform: translateY(-1px) !important;
  background:
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 6px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 7px 6px / 2.75px 15px no-repeat !important;
}

.ei-mega-about a.ei-about-feature-link:after {
  content: "›" !important;
  display: inline-block !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-left: 1px !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
  background: none !important;
}

.ei-mega-about a.ei-about-feature-link:hover,
.ei-mega-about a.ei-about-feature-link:focus {
  background: #ffc600 !important;
  background-image: none !important;
  color: #000000 !important;
  text-decoration: none !important;
}

.ei-mega-about a.ei-about-feature-link:hover:before,
.ei-mega-about a.ei-about-feature-link:focus:before {
  background:
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 6px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 7px 6px / 2.75px 15px no-repeat !important;
}

/* About simple links: smooth yellow underline fix for Erik Erikson and 60th Anniversary Gala */
.ei-mega-about a.ei-about-simple-link {
  position: relative !important;
  display: inline-block !important;
  margin: 0 0 8px 0 !important;
  padding: 0 12px 2px 0 !important;
  color: #000000 !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.28 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  text-decoration-color: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  transition: color .18s ease, background-size .22s ease !important;
}

.ei-mega-about a.ei-about-simple-link:hover,
.ei-mega-about a.ei-about-simple-link:focus {
  color: #005ea8 !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 100% 2px !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}



/* =========================================================
   Targeted v3:
   - Fix duplicate ii/carets in Academics main links
   - Move Child Development – Core down slightly
   - Keep About placement only, without changing Plan/Philanthropy format
   - Make Forgot Password underline white
   ========================================================= */

/* Academics: only the h3 gets the ii/caret; child anchor must not create a second set */
.ei-mega-academics h3.ei-academics-main-link {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  width: auto !important;
  min-height: 30px !important;
  margin: 0 0 8px -10px !important;
  padding: 7px 11px 7px 9px !important;
  border-radius: 4px !important;
  background: transparent !important;
  background-image: none !important;
  color: #000000 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.14 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  vertical-align: middle !important;
  overflow: visible !important;
}

.ei-mega-academics h3.ei-academics-main-link > a,
.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link,
.ei-mega-academics h3.ei-academics-main-link a {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000000 !important;
  font: inherit !important;
  line-height: 1.14 !important;
  text-decoration: none !important;
  background: transparent !important;
  background-image: none !important;
}

.ei-mega-academics h3.ei-academics-main-link > a:before,
.ei-mega-academics h3.ei-academics-main-link > a:after,
.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link:before,
.ei-mega-academics h3.ei-academics-main-link > a.ei-academics-main-link:after,
.ei-mega-academics h3.ei-academics-main-link a:before,
.ei-mega-academics h3.ei-academics-main-link a:after {
  content: none !important;
  display: none !important;
}

.ei-mega-academics h3.ei-academics-main-link:before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  align-self: center !important;
  width: 10px !important;
  height: 21px !important;
  margin: 0 !important;
  transform: translateY(-1px) !important;
  background:
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 6px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 7px 6px / 2.75px 15px no-repeat !important;
}

.ei-mega-academics h3.ei-academics-main-link:after {
  content: "›" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  align-self: center !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-left: 1px !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
  background: none !important;
}

.ei-mega-academics h3.ei-academics-main-link:hover,
.ei-mega-academics h3.ei-academics-main-link:focus-within {
  background: #ffc600 !important;
  background-image: none !important;
  color: #000000 !important;
  text-decoration: none !important;
}

.ei-mega-academics h3.ei-academics-main-link:hover:before,
.ei-mega-academics h3.ei-academics-main-link:focus-within:before {
  background:
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 6px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 7px 6px / 2.75px 15px no-repeat !important;
}

/* Child Development – Core: down just a little from current position */
.ei-mega-academics li.ei-academics-masters-row {
  margin-bottom: 1px !important;
  padding-bottom: 0 !important;
}

.ei-mega-academics li.ei-academics-masters-row > a.ei-academics-masters-link,
.ei-mega-academics a.ei-academics-masters-link {
  margin-bottom: 1px !important;
  padding-bottom: 1px !important;
}

.ei-mega-academics li.ei-academics-first-bullet-row {
  margin-top: 3px !important;
  padding-top: 0 !important;
}

/* About: keep Plan Your Visit / Philanthropy as simple links; only enforce placement spacing */
.ei-mega-about ul:has(a[href*="/about/location/"]),
.ei-mega-about ul:has(a[href*="/about/philanthropy/"]:not([href*="60th"])) {
  list-style: none !important;
  margin: -5px 0 12px 0 !important;
  padding: 0 !important;
}

.ei-mega-about li:has(a[href*="/about/location/"]),
.ei-mega-about li:has(a[href*="/about/philanthropy/"]:not([href*="60th"])) {
  list-style: none !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
}

.ei-mega-about li:has(a[href*="/about/location/"]):before,
.ei-mega-about li:has(a[href*="/about/location/"])::before,
.ei-mega-about li:has(a[href*="/about/philanthropy/"]:not([href*="60th"])):before,
.ei-mega-about li:has(a[href*="/about/philanthropy/"]:not([href*="60th"]))::before {
  content: none !important;
  display: none !important;
}

/* Remove any accidental promoted ii formatting from Plan Your Visit / Philanthropy */
.ei-mega-about a[href*="/about/location/"],
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]) {
  display: inline-block !important;
  margin: 0 0 8px 0 !important;
  padding: 0 12px 2px 0 !important;
  border-radius: 0 !important;
  color: #000000 !important;
  background: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 0 2px !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.28 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: color .18s ease, background-size .22s ease !important;
}

.ei-mega-about a[href*="/about/location/"]:before,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):before {
  content: none !important;
  display: none !important;
}

.ei-mega-about a[href*="/about/location/"]:after,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):after {
  content: "›" !important;
  display: inline-block !important;
  position: static !important;
  margin-left: 5px !important;
  color: currentColor !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  background: none !important;
}

.ei-mega-about a[href*="/about/location/"]:hover,
.ei-mega-about a[href*="/about/location/"]:focus,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):hover,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):focus {
  color: #005ea8 !important;
  background-size: 100% 2px !important;
  text-decoration: none !important;
}

/* Login Forgot Your Password: white underline at rest, yellow on hover */
html body.ei-login-page #main-content .ei-production-table-shell a,
html body.ei-login-page #main-content .ei-production-table-shell a:link,
html body.ei-login-page #main-content .ei-production-table-shell a:visited,
html body.ei-login-page a.ei-forgot-password-link,
html body.ei-login-page a.ei-forgot-password-link:link,
html body.ei-login-page a.ei-forgot-password-link:visited {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration: none !important;
  text-decoration-color: #ffffff !important;
  border-bottom: 2px solid #ffffff !important;
  box-shadow: none !important;
  background-color: transparent !important;
  background-image: linear-gradient(#ffc600, #ffc600) !important;
  background-repeat: no-repeat !important;
  background-position: 0 calc(100% + 2px) !important;
  background-size: 0 2px !important;
  transition: background-size .24s ease, border-color .18s ease, color .18s ease !important;
}

html body.ei-login-page #main-content .ei-production-table-shell a:hover,
html body.ei-login-page #main-content .ei-production-table-shell a:focus,
html body.ei-login-page a.ei-forgot-password-link:hover,
html body.ei-login-page a.ei-forgot-password-link:focus {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration: none !important;
  border-bottom-color: #ffffff !important;
  background-size: 100% 2px !important;
}



/* =========================================================
   Targeted CSS-only retry
   No DOM-moving JavaScript. This keeps the blue navigation untouched.
   ========================================================= */

/* Child Development – Core: move down just a little more */
.ei-mega-academics li:has(a[href*="child-development-core"]),
.ei-mega-admissions li:has(a[href*="child-development-core"]),
.ei-mega-academics li.ei-academics-first-bullet-row {
  margin-top: 6px !important;
  padding-top: 0 !important;
}

/* About: make only Plan Your Visit and Philanthropy match the larger ii-style links */
.ei-mega-about a[href*="/about/location/"],
.ei-mega-about a[href*="/about/plan-your-visit/"],
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]) {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  width: auto !important;
  margin: 0 0 10px -10px !important;
  padding: 7px 11px 7px 9px !important;
  border-radius: 4px !important;
  background: transparent !important;
  background-image: none !important;
  color: #000000 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.14 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  overflow: visible !important;
}

/* Remove the simple-link underline behavior from only those two About links */
.ei-mega-about a[href*="/about/location/"]:before,
.ei-mega-about a[href*="/about/plan-your-visit/"]:before,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 10px !important;
  height: 21px !important;
  margin: 0 !important;
  transform: translateY(-1px) !important;
  background:
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 6px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 7px 6px / 2.75px 15px no-repeat !important;
}

.ei-mega-about a[href*="/about/location/"]:after,
.ei-mega-about a[href*="/about/plan-your-visit/"]:after,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):after {
  content: "›" !important;
  display: inline-block !important;
  position: static !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-left: 1px !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
  background: none !important;
}

/* Hover should match Erikson Store / Edward Neisser Library */
.ei-mega-about a[href*="/about/location/"]:hover,
.ei-mega-about a[href*="/about/location/"]:focus,
.ei-mega-about a[href*="/about/plan-your-visit/"]:hover,
.ei-mega-about a[href*="/about/plan-your-visit/"]:focus,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):hover,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):focus {
  background: #ffc600 !important;
  background-image: none !important;
  color: #000000 !important;
  text-decoration: none !important;
}

.ei-mega-about a[href*="/about/location/"]:hover:before,
.ei-mega-about a[href*="/about/location/"]:focus:before,
.ei-mega-about a[href*="/about/plan-your-visit/"]:hover:before,
.ei-mega-about a[href*="/about/plan-your-visit/"]:focus:before,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):hover:before,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):focus:before {
  background:
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 6px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 7px 6px / 2.75px 15px no-repeat !important;
}



/* =========================================================
   Academics spacing-only fix
   Matches the vertical spacing of the Master's Degree subprogram links.
   No other sub-navigation styling is changed.
   ========================================================= */

.ei-mega-academics li:has(a[href*="facilitating-attuned-interactions"]),
.ei-mega-academics li:has(a[href*="early-math-collaborative"]),
.ei-mega-academics li:has(a[href*="town-square"]) {
  margin-bottom: 9px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.ei-mega-academics li:has(a[href*="facilitating-attuned-interactions"]) > a,
.ei-mega-academics li:has(a[href*="early-math-collaborative"]) > a,
.ei-mega-academics li:has(a[href*="town-square"]) > a {
  line-height: 1.28 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}



/* =========================================================
   Targeted sub-navigation adjustment only:
   - Move FAN link up slightly
   - Move short/long ii marks closer together
   ========================================================= */

/* Academics: move Facilitating Attuned Interactions (FAN) up a little */
.ei-mega-academics li:has(a[href*="facilitating-attuned-interactions"]) {
  margin-top: -3px !important;
}

/* Move every short-i / long-i pair closer together without changing link text/layout */
.ei-mega h3.ei-partnerships-style-link:before,
.ei-mega a.ei-partnerships-style-link:before,
.ei-mega a.ei-subnav-feature-link:before,
.ei-mega .ei-subnav-feature-link:before,
.ei-mega-academics h3.ei-academics-main-link:before,
.ei-mega-academics a.ei-academics-main-link:before,
.ei-mega-about a.ei-about-feature-link:before,
.ei-mega-community a.ei-subnav-feature-link:before,
.ei-mega-policy a.ei-subnav-feature-link:before,
.ei-mega-about a[href*="/about/location/"]:before,
.ei-mega-about a[href*="/about/plan-your-visit/"]:before,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):before {
  width: 9px !important;
  background:
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffc600 0 1.65px, transparent 1.85px) 5px 0 / 4px 4px no-repeat,
    linear-gradient(#ffc600, #ffc600) 6px 6px / 2.75px 15px no-repeat !important;
}

/* Keep the same closer ii spacing on hover/focus when the marks turn white */
.ei-mega h3.ei-partnerships-style-link:hover:before,
.ei-mega h3.ei-partnerships-style-link:focus-within:before,
.ei-mega a.ei-partnerships-style-link:hover:before,
.ei-mega a.ei-partnerships-style-link:focus:before,
.ei-mega a.ei-subnav-feature-link:hover:before,
.ei-mega a.ei-subnav-feature-link:focus:before,
.ei-mega .ei-subnav-feature-link:hover:before,
.ei-mega .ei-subnav-feature-link:focus:before,
.ei-mega-academics h3.ei-academics-main-link:hover:before,
.ei-mega-academics h3.ei-academics-main-link:focus-within:before,
.ei-mega-academics a.ei-academics-main-link:hover:before,
.ei-mega-academics a.ei-academics-main-link:focus:before,
.ei-mega-about a.ei-about-feature-link:hover:before,
.ei-mega-about a.ei-about-feature-link:focus:before,
.ei-mega-community a.ei-subnav-feature-link:hover:before,
.ei-mega-community a.ei-subnav-feature-link:focus:before,
.ei-mega-policy a.ei-subnav-feature-link:hover:before,
.ei-mega-policy a.ei-subnav-feature-link:focus:before,
.ei-mega-about a[href*="/about/location/"]:hover:before,
.ei-mega-about a[href*="/about/location/"]:focus:before,
.ei-mega-about a[href*="/about/plan-your-visit/"]:hover:before,
.ei-mega-about a[href*="/about/plan-your-visit/"]:focus:before,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):hover:before,
.ei-mega-about a[href*="/about/philanthropy/"]:not([href*="60th"]):focus:before {
  width: 9px !important;
  background:
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 0px 4px / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 1px 10px / 2.75px 11px no-repeat,
    radial-gradient(circle, #ffffff 0 1.65px, transparent 1.85px) 5px 0 / 4px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 6px 6px / 2.75px 15px no-repeat !important;
}



/* =========================================================
   Academics-only micro adjustment:
   Move Facilitating Attuned Interactions (FAN) up a little more.
   No other sub-navigation changes.
   ========================================================= */

.ei-mega-academics li:has(a[href*="facilitating-attuned-interactions"]) {
  margin-top: -6px !important;
}



/* =========================================================
   Academics-only micro adjustment:
   Move Facilitating Attuned Interactions (FAN) up a little more.
   No other sub-navigation changes.
   ========================================================= */

.ei-mega-academics li:has(a[href*="facilitating-attuned-interactions"]) {
  margin-top: -9px !important;
}



/* =========================================================
   Mobile Slate content step 19 — certificate table no-scroll
   Desktop view and font faces are unchanged.
   ========================================================= */

@media screen and (max-width: 767px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-mobile-inline-break {
    display: block !important;
    height: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;
  }

  .ei-mobile-program-offerings-center {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  .ei-mobile-returning-users-up {
    position: relative !important;
    top: 10px !important;
  }

  .ei-mobile-program-heading-weight {
    font-weight: 750 !important;
  }

  .ei-mobile-certificate-programs-up {
    position: relative !important;
    top: -38px !important;
    margin-bottom: -24px !important;
  }

  .ei-mobile-intro-normal,
  .ei-mobile-intro-normal * {
    font-weight: 400 !important;
  }

  table.ei-mobile-program-table-fit,
  .ei-mobile-program-table-fit table,
  table.ei-mobile-certificate-program-table-fit,
  .ei-mobile-certificate-program-table-fit table {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  table.ei-mobile-program-table-fit col,
  table.ei-mobile-certificate-program-table-fit col,
  .ei-mobile-program-table-fit col,
  .ei-mobile-certificate-program-table-fit col {
    width: auto !important;
  }

  table.ei-mobile-program-table-fit th,
  table.ei-mobile-program-table-fit td,
  table.ei-mobile-program-table-fit th *,
  table.ei-mobile-program-table-fit td *,
  .ei-mobile-program-table-fit th,
  .ei-mobile-program-table-fit td,
  .ei-mobile-program-table-fit th *,
  .ei-mobile-program-table-fit td *,
  table.ei-mobile-certificate-program-table-fit th,
  table.ei-mobile-certificate-program-table-fit td,
  table.ei-mobile-certificate-program-table-fit th *,
  table.ei-mobile-certificate-program-table-fit td *,
  .ei-mobile-certificate-program-table-fit th,
  .ei-mobile-certificate-program-table-fit td,
  .ei-mobile-certificate-program-table-fit th *,
  .ei-mobile-certificate-program-table-fit td * {
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-family: inherit !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    hyphens: auto !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
  }

  table.ei-mobile-program-table-fit th,
  table.ei-mobile-program-table-fit th *,
  .ei-mobile-program-table-fit th,
  .ei-mobile-program-table-fit th *,
  .ei-mobile-table-header-bold {
    font-weight: 700 !important;
  }

  .ei-mobile-term-offered-nowrap,
  .ei-mobile-term-offered-nowrap * {
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    hyphens: none !important;
  }

  .ei-mobile-certificate-table-wrapper,
  .ei-mobile-certificate-table-wrapper * {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .ei-mobile-certificate-table-wrapper {
    overflow-x: visible !important;
    overflow-y: visible !important;
  }

  .ei-mobile-help-text-wrap,
  .ei-mobile-help-text-wrap * {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    box-sizing: border-box !important;
  }
}



/* =========================================================
   Mobile Slate content step 22 — certificate match table width
   Desktop view and font faces are unchanged.
   ========================================================= */

@media screen and (max-width: 767px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-mobile-returning-users-up {
    position: relative !important;
    top: -22px !important;
  }

  .ei-mobile-certificate-programs-up {
    position: relative !important;
    top: -54px !important;
    margin-bottom: -38px !important;
  }

  .ei-mobile-certificate-direct-wrapper {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
  }

  table.ei-mobile-certificate-match-master-width {
    display: table !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
    box-sizing: border-box !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible !important;
  }

  table.ei-mobile-certificate-match-master-width th,
  table.ei-mobile-certificate-match-master-width td,
  table.ei-mobile-certificate-match-master-width th *,
  table.ei-mobile-certificate-match-master-width td * {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
  }
}



/* =========================================================
   Mobile Slate content step 23 — place Don't see your program under table
   Desktop view and font faces are unchanged.
   ========================================================= */

@media screen and (max-width: 767px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-mobile-dont-see-program-under-table {
    clear: both !important;
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 12px !important;
    box-sizing: border-box !important;
  }

  .ei-mobile-certificate-match-master-width,
  .ei-mobile-certificate-direct-wrapper {
    float: none !important;
    clear: none !important;
  }
}



/* =========================================================
   Mobile Slate content step 24 — final spacing/column tweaks
   Desktop view and font faces are unchanged.
   ========================================================= */

@media screen and (max-width: 767px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-mobile-existing-login-up {
    position: relative !important;
    top: 10px !important;
  }

  .ei-mobile-program-offerings-tight {
    margin-top: -8px !important;
    padding-top: 0 !important;
  }

  .ei-mobile-before-program-offerings-line {
    margin-top: 6px !important;
    margin-bottom: 8px !important;
  }

  table.ei-mobile-certificate-match-master-width th:first-child,
  table.ei-mobile-certificate-match-master-width td:first-child,
  table.ei-mobile-certificate-match-master-width col:first-child {
    box-sizing: border-box !important;
  }
}



/* =========================================================
   Mobile Slate content step 25 — final alignment tweaks
   Desktop view and font faces are unchanged.
   ========================================================= */

@media screen and (max-width: 767px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-mobile-returning-users-up {
    position: relative !important;
    top: -32px !important;
  }

  .ei-mobile-existing-login-up {
    position: relative !important;
    top: -32px !important;
    display: block !important;
    margin-top: 2px !important;
  }

  .ei-mobile-program-offerings-tight {
    margin-top: -16px !important;
    padding-top: 0 !important;
  }

  .ei-mobile-before-program-offerings-line {
    margin-top: 2px !important;
    margin-bottom: 3px !important;
  }

  table.ei-mobile-certificate-safari-column-fix {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    box-sizing: border-box !important;
  }

  table.ei-mobile-certificate-safari-column-fix col:first-child,
  table.ei-mobile-certificate-safari-column-fix th:first-child,
  table.ei-mobile-certificate-safari-column-fix td:first-child {
    width: var(--ei-mobile-program-column-width, 62%) !important;
    max-width: var(--ei-mobile-program-column-width, 62%) !important;
    box-sizing: border-box !important;
  }

  table.ei-mobile-certificate-safari-column-fix col:nth-child(2),
  table.ei-mobile-certificate-safari-column-fix th:nth-child(2),
  table.ei-mobile-certificate-safari-column-fix td:nth-child(2) {
    width: calc(100% - var(--ei-mobile-program-column-width, 62%)) !important;
    max-width: calc(100% - var(--ei-mobile-program-column-width, 62%)) !important;
    box-sizing: border-box !important;
  }
}



/* =========================================================
   Mobile Slate content step 50 — top up + form fallback
   - Restores previous form styling by undoing step 49.
   - Rebuilds top access block cleanly and moves it up one more line.
   - Normalises button/control click-ability and visibility only; Slate's own
     click/AJAX handlers stay in charge of validation and submission.
   - No forced submit: the old requestSubmit()/synthetic-submit fallback was
     removed because it fired on every click and bypassed Slate validation.
   - No custom validation and no form.submit().
   - Desktop view and font faces are unchanged.
   ========================================================= */

@media screen and (max-width: 767px), screen and (orientation: landscape) and (max-height: 500px) {
  body.ei-step50-access-ready .ei-step50-hide-original-access {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-step50-access-block {
    display: block !important;
    clear: both !important;
    position: relative !important;
    top: -36px !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 4px !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .ei-step50-access-section {
    display: block !important;
    position: static !important;
    transform: none !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .ei-step50-access-section:last-child {
    margin-bottom: 4px !important;
  }

  .ei-step50-access-heading {
    display: block !important;
    position: static !important;
    transform: none !important;
    margin: 0 0 3px !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .ei-step50-access-copy {
    display: block !important;
    position: static !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    line-height: 1.35 !important;
  }

  .ei-step50-access-copy a {
    display: inline !important;
  }

  .ei-step50-program-offerings-up {
    position: relative !important;
    top: -24px !important;
    margin-top: -24px !important;
    padding-top: 0 !important;
  }
}

/* Restore/keep Erikson button styling for account forms. */
body.ei-account-submit-fallback #main-content .ei-slate-content form button,
body.ei-account-submit-fallback #main-content .ei-slate-content form input[type="submit"],
body.ei-account-submit-fallback #main-content .ei-slate-content form input[type="button"],
body.ei-account-submit-fallback #main-content form button,
body.ei-account-submit-fallback #main-content form input[type="submit"],
body.ei-account-submit-fallback #main-content form input[type="button"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 150px !important;
  min-height: 50px !important;
  padding: 15px 30px !important;
  color: #000000 !important;
  background-color: #ffc600 !important;
  background-image: linear-gradient(to right, #000000 0%, #000000 50%, #ffc600 50%, #ffc600 100%) !important;
  background-size: 205% 100% !important;
  background-position: 100% 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  position: relative !important;
  z-index: 60 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.ei-account-submit-fallback #main-content .ei-slate-content form button:hover,
body.ei-account-submit-fallback #main-content .ei-slate-content form input[type="submit"]:hover,
body.ei-account-submit-fallback #main-content .ei-slate-content form input[type="button"]:hover,
body.ei-account-submit-fallback #main-content form button:hover,
body.ei-account-submit-fallback #main-content form input[type="submit"]:hover,
body.ei-account-submit-fallback #main-content form input[type="button"]:hover {
  color: #ffffff !important;
  background-position: 0 0 !important;
}

/* Reveal Slate-generated validation/errors only. */
body.ei-account-submit-fallback #main-content .error,
body.ei-account-submit-fallback #main-content .errors,
body.ei-account-submit-fallback #main-content .form_error,
body.ei-account-submit-fallback #main-content .form_errors,
body.ei-account-submit-fallback #main-content .form_validation_error,
body.ei-account-submit-fallback #main-content .form_response_error,
body.ei-account-submit-fallback #main-content .validation_error,
body.ei-account-submit-fallback #main-content [role="alert"],
body.ei-account-submit-fallback #main-content [aria-live],
body.ei-account-submit-fallback .ei-slate-content .error,
body.ei-account-submit-fallback .ei-slate-content .errors,
body.ei-account-submit-fallback .ei-slate-content .form_error,
body.ei-account-submit-fallback .ei-slate-content .form_errors,
body.ei-account-submit-fallback .ei-slate-content .form_validation_error,
body.ei-account-submit-fallback .ei-slate-content .form_response_error,
body.ei-account-submit-fallback .ei-slate-content .validation_error,
body.ei-account-submit-fallback .ei-slate-content [role="alert"],
body.ei-account-submit-fallback .ei-slate-content [aria-live] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  clip: auto !important;
  clip-path: none !important;
  margin: 0 0 18px !important;
  padding: 14px 18px !important;
  color: #7a0015 !important;
  background: #fff3f4 !important;
  border-left: 6px solid #b00020 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}

body.ei-account-submit-fallback #main-content .ei-production-table-shell,
body.ei-account-submit-fallback #main-content .ei-form-shadow-wrap,
body.ei-account-submit-fallback #main-content form,
body.ei-account-submit-fallback #main-content .form_container,
body.ei-account-submit-fallback #main-content .form_page {
  overflow: visible !important;
}



/* =========================================================
   Mobile Slate content step 51 — top block up one more line
   - Moves the rebuilt Returning/First-time access block up one more line.
   - Form styling/functionality remains from step 50.
   - Desktop view and font faces are unchanged.
   ========================================================= */

@media screen and (max-width: 767px), screen and (orientation: landscape) and (max-height: 500px) {
  .ei-step50-access-block,
  .ei-step51-access-up {
    position: relative !important;
    top: -36px !important;
  }
}



/* =========================================================
   Quick baseline fix — admissions spacing + mobile Program Offerings center
   - Removes extra space before "or" in Ask Admissions text.
   - Centers Program Offerings on mobile only.
   - Desktop layout is unchanged except the text spacing correction.
   ========================================================= */

@media screen and (max-width: 767px), screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content .ei-mobile-program-offerings-center,
  #main-content .ei-slate-content .ei-mobile-program-offerings-tight,
  #main-content .ei-slate-content .ei-step50-program-offerings-up,
  #main-content .ei-slate-content .ei-step49-program-offerings-up {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}



/* =========================================================
   v7 targeted fixes
   - Desktop: line spans both program columns, centered, moved up slightly,
     with more space below before Program Offerings.
   - Mobile: line is hidden; duplicate mobile lines are suppressed.
   - Mobile: old Don't see your program? instances are hidden; one clean
     instance is inserted above the not-offered help text.
   - Certificate table body text stays normal weight.
   - Forms are unchanged from uploaded working file.
   ========================================================= */

@media screen and (min-width: 768px) {
  #main-content .ei-slate-content .ei-program-offerings-line-v7::before {
    content: "" !important;
    display: block !important;
    height: 0 !important;
    width: min(1180px, calc(200% + 56px)) !important;
    max-width: min(1180px, calc(100vw - 40px)) !important;
    border-top: 1px solid #d6d6d6 !important;
    margin: -12px 0 26px 0 !important;
    padding: 0 !important;
    clear: both !important;
  }
}

@media screen and (max-width: 767px),
       screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content .ei-program-offerings-line-v7::before,
  #main-content .ei-slate-content .ei-program-offerings-line-v6::before,
  #main-content .ei-slate-content .ei-desktop-program-line-v4,
  #main-content .ei-slate-content .ei-desktop-program-line-v5,
  #main-content .ei-slate-content .ei-desktop-full-program-line-v3 {
    display: none !important;
    content: none !important;
    border: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #main-content .ei-slate-content .ei-mobile-extra-line-hidden-v7 {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }
}

/* Certificate table width and no-wrap behavior. */
#main-content .ei-slate-content table.ei-cert-table-v7 {
  box-sizing: border-box !important;
}

#main-content .ei-slate-content table.ei-cert-table-v7 th.ei-cert-term-v7,
#main-content .ei-slate-content table.ei-cert-table-v7 th.ei-cert-term-v7 *,
#main-content .ei-slate-content table.ei-cert-table-v7 td.ei-cert-term-v7,
#main-content .ei-slate-content table.ei-cert-table-v7 td.ei-cert-term-v7 *,
#main-content .ei-slate-content table.ei-cert-table-v7 th:nth-child(2),
#main-content .ei-slate-content table.ei-cert-table-v7 th:nth-child(2) * {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* Header color for both program tables. */
#main-content .ei-slate-content table.ei-cert-table-v7 th.ei-program-header-v7,
#main-content .ei-slate-content table.ei-cert-table-v7 th.ei-program-header-v7 *,
#main-content .ei-slate-content table.ei-cert-table-v7 th.ei-cert-term-v7,
#main-content .ei-slate-content table.ei-cert-table-v7 th.ei-cert-term-v7 * {
  color: #ffffff !important;
}

/* Stop Certificate body text from turning bold. */
#main-content .ei-slate-content table.ei-cert-table-v7 tbody tr:not(:first-child) th,
#main-content .ei-slate-content table.ei-cert-table-v7 tbody tr:not(:first-child) th *,
#main-content .ei-slate-content table.ei-cert-table-v7 tbody tr:not(:first-child) td,
#main-content .ei-slate-content table.ei-cert-table-v7 tbody tr:not(:first-child) td *,
#main-content .ei-slate-content table.ei-cert-table-v7 tbody tr:not(:first-child) .ei-mobile-table-header-bold,
#main-content .ei-slate-content table.ei-cert-table-v7 tbody tr:not(:first-child) .ei-mobile-table-header-bold * {
  font-weight: 400 !important;
}

@media screen and (max-width: 767px),
       screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content table.ei-cert-table-v7 {
    width: 100% !important;
    max-width: 100% !important;
  }

  #main-content .ei-slate-content .ei-dont-see-original-v7 {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #main-content .ei-slate-content .ei-dont-see-added-v7 {
    clear: both !important;
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px 0 6px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
  }

  #main-content .ei-slate-content table.ei-cert-table-v7 tbody tr:not(:first-child) th,
  #main-content .ei-slate-content table.ei-cert-table-v7 tbody tr:not(:first-child) th *,
  #main-content .ei-slate-content table.ei-cert-table-v7 tbody tr:not(:first-child) td,
  #main-content .ei-slate-content table.ei-cert-table-v7 tbody tr:not(:first-child) td * {
    font-weight: 400 !important;
  }
}



/* =========================================================
   v8 finishing tweaks
   - Desktop: more space under the Program Offerings line.
   - Desktop: Certificate Programs heading moves down just a hair.
   - Mobile: Certificate table stretched to match top table width.
   - Mobile: only one Don't see your program? appears, above help text.
   - Forms are unchanged.
   ========================================================= */

@media screen and (min-width: 768px) {
  #main-content .ei-slate-content .ei-program-offerings-line-v7::before {
    margin: -12px 0 26px 0 !important;
  }

  #main-content .ei-slate-content .ei-certificate-programs-align {
    position: relative !important;
    top: 0 !important;
  }
}

@media screen and (max-width: 767px),
       screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content .ei-program-offerings-line-v7::before,
  #main-content .ei-slate-content .ei-program-offerings-line-v6::before {
    display: none !important;
    content: none !important;
    border: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #main-content .ei-slate-content .ei-cert-width-wrapper-v8,
  #main-content .ei-slate-content table.ei-cert-table-v8 {
    overflow-x: visible !important;
    overflow-y: visible !important;
    box-sizing: border-box !important;
  }

  #main-content .ei-slate-content table.ei-cert-table-v8 tbody tr:not(:first-child) th,
  #main-content .ei-slate-content table.ei-cert-table-v8 tbody tr:not(:first-child) th *,
  #main-content .ei-slate-content table.ei-cert-table-v8 tbody tr:not(:first-child) td,
  #main-content .ei-slate-content table.ei-cert-table-v8 tbody tr:not(:first-child) td *,
  #main-content .ei-slate-content table.ei-cert-table-v8 tbody tr:not(:first-child) .ei-mobile-table-header-bold,
  #main-content .ei-slate-content table.ei-cert-table-v8 tbody tr:not(:first-child) .ei-mobile-table-header-bold * {
    font-weight: 400 !important;
  }

  #main-content .ei-slate-content .ei-dont-see-hidden-v8 {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #main-content .ei-slate-content .ei-dont-see-added-v8 {
    clear: both !important;
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px 0 6px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
  }
}



/* =========================================================
   v9 finishing tweaks
   - Desktop: Certificate Programs column moves down just a hair.
   - Mobile: Certificate table width is stable from CSS; no repeated width measuring.
   - Mobile: Certificate table body is never bold.
   - Mobile: all old Don't see your program? nodes are removed; one clean one is added above help text.
   - Forms are unchanged.
   ========================================================= */

@media screen and (min-width: 768px) {
  #main-content .ei-slate-content .ei-certificate-programs-column {
    position: relative !important;
    top: 3px !important;
  }

  #main-content .ei-slate-content .ei-certificate-programs-align,
  #main-content .ei-slate-content h3.pgms-cert {
    position: relative !important;
    top: 3px !important;
  }
}

@media screen and (max-width: 767px),
       screen and (orientation: landscape) and (max-height: 500px) {
  /* Keep the desktop Program Offerings line hidden on mobile. */
  #main-content .ei-slate-content .ei-program-offerings-line-v7::before,
  #main-content .ei-slate-content .ei-program-offerings-line-v6::before,
  #main-content .ei-slate-content .ei-desktop-program-line-v5,
  #main-content .ei-slate-content .ei-desktop-program-line-v4,
  #main-content .ei-slate-content .ei-desktop-full-program-line-v3 {
    display: none !important;
    content: none !important;
    height: 0 !important;
    max-height: 0 !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Make the Certificate table use the same available width as the top table without JS resizing. */
  #main-content .ei-slate-content .ei-certificate-programs-column,
  #main-content .ei-slate-content .ei-certificate-programs-column > *,
  #main-content .ei-slate-content .ei-mobile-certificate-direct-wrapper,
  #main-content .ei-slate-content .ei-mobile-certificate-table-wrapper,
  #main-content .ei-slate-content .ei-cert-width-wrapper-v8,
  #main-content .ei-slate-content table.ei-cert-table-v9,
  #main-content .ei-slate-content table.ei-cert-table-v8,
  #main-content .ei-slate-content table.ei-cert-table-v7,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit,
  #main-content .ei-slate-content table.ei-mobile-certificate-safari-column-fix,
  #main-content .ei-slate-content table.ei-mobile-certificate-match-master-width {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
  }

  #main-content .ei-slate-content table.ei-cert-table-v9,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit,
  #main-content .ei-slate-content table.ei-mobile-certificate-safari-column-fix,
  #main-content .ei-slate-content table.ei-mobile-certificate-match-master-width {
    display: table !important;
    table-layout: fixed !important;
  }

  /* Stop the Certificate table body from ever ending bold, including body cells rendered as TH. */
  #main-content .ei-slate-content .ei-certificate-programs-column table tbody tr:not(:first-child) th,
  #main-content .ei-slate-content .ei-certificate-programs-column table tbody tr:not(:first-child) th *,
  #main-content .ei-slate-content .ei-certificate-programs-column table tbody tr:not(:first-child) td,
  #main-content .ei-slate-content .ei-certificate-programs-column table tbody tr:not(:first-child) td *,
  #main-content .ei-slate-content table.ei-cert-table-v9 tbody tr:not(:first-child) th,
  #main-content .ei-slate-content table.ei-cert-table-v9 tbody tr:not(:first-child) th *,
  #main-content .ei-slate-content table.ei-cert-table-v9 tbody tr:not(:first-child) td,
  #main-content .ei-slate-content table.ei-cert-table-v9 tbody tr:not(:first-child) td *,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tbody tr:not(:first-child) th,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tbody tr:not(:first-child) th *,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tbody tr:not(:first-child) td,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tbody tr:not(:first-child) td *,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tbody tr:not(:first-child) .ei-mobile-table-header-bold,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tbody tr:not(:first-child) .ei-mobile-table-header-bold * {
    font-weight: 400 !important;
  }

  #main-content .ei-slate-content .ei-dont-see-added-v9 {
    clear: both !important;
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px 0 6px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
  }
}



/* =========================================================
   v10 final targeted fixes
   - Desktop: move only the Certificate table down slightly.
   - Mobile: Certificate table gets stable full width with no JS width-measuring.
   - Mobile: Certificate table body never becomes bold; only header row stays bold/white.
   - Mobile landscape footer: Directions and phone number match address text size.
   - Mobile: duplicate Don't see your program? nodes are removed, then one clean version is inserted.
   - Forms are unchanged.
   ========================================================= */

@media screen and (min-width: 768px) {
  #main-content .ei-slate-content .ei-certificate-programs-column table,
  #main-content .ei-slate-content .ei-certificate-programs-column .portal_table,
  #main-content .ei-slate-content .ei-certificate-programs-column .table {
    position: relative !important;
    top: 3px !important;
  }
}

@media screen and (max-width: 767px),
       screen and (orientation: landscape) and (max-height: 500px) {
  /* Mobile should not show the desktop Program Offerings line. */
  #main-content .ei-slate-content .ei-program-offerings-line-v7::before,
  #main-content .ei-slate-content .ei-program-offerings-line-v6::before,
  #main-content .ei-slate-content .ei-desktop-program-line-v5,
  #main-content .ei-slate-content .ei-desktop-program-line-v4,
  #main-content .ei-slate-content .ei-desktop-full-program-line-v3 {
    display: none !important;
    content: none !important;
    height: 0 !important;
    max-height: 0 !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Make the Certificate column/table use the same available width as the top table. */
  #main-content .ei-slate-content .ei-certificate-programs-column,
  #main-content .ei-slate-content .ei-certificate-programs-column > *,
  #main-content .ei-slate-content .ei-certificate-mobile-column-v10,
  #main-content .ei-slate-content .ei-certificate-mobile-column-v10 > *,
  #main-content .ei-slate-content .ei-mobile-certificate-direct-wrapper,
  #main-content .ei-slate-content .ei-mobile-certificate-table-wrapper,
  #main-content .ei-slate-content .ei-cert-width-wrapper-v8,
  #main-content .ei-slate-content table.ei-cert-table-v10,
  #main-content .ei-slate-content table.ei-cert-table-v9,
  #main-content .ei-slate-content table.ei-cert-table-v8,
  #main-content .ei-slate-content table.ei-cert-table-v7,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit,
  #main-content .ei-slate-content table.ei-mobile-certificate-safari-column-fix,
  #main-content .ei-slate-content table.ei-mobile-certificate-match-master-width {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
  }

  #main-content .ei-slate-content table.ei-cert-table-v10,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit,
  #main-content .ei-slate-content table.ei-mobile-certificate-safari-column-fix,
  #main-content .ei-slate-content table.ei-mobile-certificate-match-master-width {
    display: table !important;
    table-layout: fixed !important;
  }

  /* Body rows: normal weight, including Slate body cells rendered as TH. */
  #main-content .ei-slate-content table.ei-cert-table-v10 tr:not(:first-child) th,
  #main-content .ei-slate-content table.ei-cert-table-v10 tr:not(:first-child) th *,
  #main-content .ei-slate-content table.ei-cert-table-v10 tr:not(:first-child) td,
  #main-content .ei-slate-content table.ei-cert-table-v10 tr:not(:first-child) td *,
  #main-content .ei-slate-content table.ei-cert-table-v10 tr:not(:first-child) .ei-mobile-table-header-bold,
  #main-content .ei-slate-content table.ei-cert-table-v10 tr:not(:first-child) .ei-mobile-table-header-bold *,
  #main-content .ei-slate-content .ei-certificate-mobile-column-v10 table tr:not(:first-child) th,
  #main-content .ei-slate-content .ei-certificate-mobile-column-v10 table tr:not(:first-child) th *,
  #main-content .ei-slate-content .ei-certificate-mobile-column-v10 table tr:not(:first-child) td,
  #main-content .ei-slate-content .ei-certificate-mobile-column-v10 table tr:not(:first-child) td * {
    font-weight: 400 !important;
  }

  /* Header row remains white/bold. */
  #main-content .ei-slate-content table.ei-cert-table-v10 tr:first-child th,
  #main-content .ei-slate-content table.ei-cert-table-v10 tr:first-child th *,
  #main-content .ei-slate-content table.ei-cert-table-v10 tr:first-child td,
  #main-content .ei-slate-content table.ei-cert-table-v10 tr:first-child td * {
    color: #ffffff !important;
    font-weight: 700 !important;
  }

  #main-content .ei-slate-content .ei-dont-see-added-v10 {
    clear: both !important;
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px 0 6px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
  }
}

/* Mobile landscape footer: Directions and phone number should match the address text size. */
@media screen and (orientation: landscape) and (max-height: 500px) {
  .ei-footer .ei-address,
  .ei-footer .ei-address *,
  .ei-footer .ei-address a,
  .ei-footer .ei-address a:link,
  .ei-footer .ei-address a:visited,
  .ei-footer .ei-address a:hover,
  .ei-footer .ei-address a:focus {
    font-size: 15.5px !important;
    line-height: 21px !important;
  }
}



/* =========================================================
   v12 safe targeted fixes
   - Based on safe v10, not the v11 mobile changes.
   - Desktop: Certificate table matches first table width; Term Offered no-wrap.
   - Desktop: Certificate body row text is not white.
   - Mobile: fixes the late bolding by patching the existing width-matching routine,
     instead of disabling/replacing the mobile layout.
   - Forms are unchanged.
   ========================================================= */

@media screen and (min-width: 768px) {
  #main-content .ei-slate-content .ei-program-offerings-line-v7::before {
    content: "" !important;
    display: block !important;
    height: 0 !important;
    width: min(1180px, calc(200% + 56px)) !important;
    max-width: min(1180px, calc(100vw - 40px)) !important;
    border-top: 1px solid #d6d6d6 !important;
    margin: -10px 0 18px 0 !important;
    padding: 0 !important;
    clear: both !important;
  }

  #main-content .ei-slate-content .ei-certificate-programs-column table,
  #main-content .ei-slate-content .ei-certificate-programs-column .portal_table,
  #main-content .ei-slate-content .ei-certificate-programs-column .table,
  #main-content .ei-slate-content table.ei-cert-table-v12 {
    box-sizing: border-box !important;
  }
}

/* Certificate Term Offered should stay on one line. */
#main-content .ei-slate-content table.ei-cert-table-v12 .ei-cert-term-v12,
#main-content .ei-slate-content table.ei-cert-table-v12 .ei-cert-term-v12 *,
#main-content .ei-slate-content table.ei-cert-table-v12 th:nth-child(2),
#main-content .ei-slate-content table.ei-cert-table-v12 th:nth-child(2) *,
#main-content .ei-slate-content table.ei-cert-table-v12 td:nth-child(2),
#main-content .ei-slate-content table.ei-cert-table-v12 td:nth-child(2) * {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* Header cells stay white; body cells must never be white or bold. */
#main-content .ei-slate-content table.ei-cert-table-v12 tr:first-child th,
#main-content .ei-slate-content table.ei-cert-table-v12 tr:first-child th *,
#main-content .ei-slate-content table.ei-cert-table-v12 tr:first-child td,
#main-content .ei-slate-content table.ei-cert-table-v12 tr:first-child td * {
  color: #ffffff !important;
  font-weight: 700 !important;
}

#main-content .ei-slate-content table.ei-cert-table-v12 tr:not(:first-child) th,
#main-content .ei-slate-content table.ei-cert-table-v12 tr:not(:first-child) th *,
#main-content .ei-slate-content table.ei-cert-table-v12 tr:not(:first-child) td,
#main-content .ei-slate-content table.ei-cert-table-v12 tr:not(:first-child) td *,
#main-content .ei-slate-content table.ei-cert-table-v12 tr:not(:first-child) .ei-mobile-table-header-bold,
#main-content .ei-slate-content table.ei-cert-table-v12 tr:not(:first-child) .ei-mobile-table-header-bold *,
#main-content .ei-slate-content .ei-certificate-programs-column table tr:not(:first-child) th,
#main-content .ei-slate-content .ei-certificate-programs-column table tr:not(:first-child) th *,
#main-content .ei-slate-content .ei-certificate-programs-column table tr:not(:first-child) td,
#main-content .ei-slate-content .ei-certificate-programs-column table tr:not(:first-child) td * {
  color: #4e4b48 !important;
  font-weight: 400 !important;
}

#main-content .ei-slate-content table.ei-cert-table-v12 tr:not(:first-child) a,
#main-content .ei-slate-content table.ei-cert-table-v12 tr:not(:first-child) a *,
#main-content .ei-slate-content .ei-certificate-programs-column table tr:not(:first-child) a,
#main-content .ei-slate-content .ei-certificate-programs-column table tr:not(:first-child) a * {
  color: #005ea8 !important;
}

@media screen and (max-width: 767px),
       screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content .ei-program-offerings-line-v7::before,
  #main-content .ei-slate-content .ei-program-offerings-line-v6::before,
  #main-content .ei-slate-content .ei-desktop-program-line-v5,
  #main-content .ei-slate-content .ei-desktop-program-line-v4,
  #main-content .ei-slate-content .ei-desktop-full-program-line-v3 {
    display: none !important;
    content: none !important;
    height: 0 !important;
    max-height: 0 !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* Mobile landscape footer sizing retained from prior safe version. */
@media screen and (orientation: landscape) and (max-height: 500px) {
  .ei-footer .ei-address,
  .ei-footer .ei-address *,
  .ei-footer .ei-address a,
  .ei-footer .ei-address a:link,
  .ei-footer .ei-address a:visited,
  .ei-footer .ei-address a:hover,
  .ei-footer .ei-address a:focus {
    font-size: 15.5px !important;
    line-height: 21px !important;
  }
}



/* =========================================================
   v13 final small tweaks
   - Desktop: move only the Certificate Programs table down 1px.
   - Mobile: make Certificate table second-column font size match the first column.
   - Forms are unchanged.
   ========================================================= */

@media screen and (min-width: 768px) {
  #main-content .ei-slate-content .ei-certificate-programs-column table,
  #main-content .ei-slate-content table.ei-cert-table-v13 {
    position: relative !important;
    top: 1px !important;
  }
}

@media screen and (max-width: 767px),
       screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content table.ei-cert-table-v13 th:nth-child(2),
  #main-content .ei-slate-content table.ei-cert-table-v13 th:nth-child(2) *,
  #main-content .ei-slate-content table.ei-cert-table-v13 td:nth-child(2),
  #main-content .ei-slate-content table.ei-cert-table-v13 td:nth-child(2) * {
    font-size: var(--ei-cert-col1-font-size, inherit) !important;
    line-height: var(--ei-cert-col1-line-height, inherit) !important;
  }
}



/* =========================================================
   v14 final small tweaks
   - Desktop: move Certificate Programs table down 1 more pixel.
   - Mobile portrait remains unchanged.
   - Mobile landscape: Certificate table second column matches first column row-by-row.
   - Mobile landscape footer: Directions and phone number match 60654 font size.
   - Forms are unchanged.
   ========================================================= */

@media screen and (min-width: 768px) {
  #main-content .ei-slate-content .ei-certificate-programs-column table,
  #main-content .ei-slate-content table.ei-cert-table-v14 {
    position: relative !important;
    top: 2px !important;
  }
}

@media screen and (orientation: landscape) and (max-width: 980px),
       screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content table.ei-cert-table-v14 th:nth-child(2),
  #main-content .ei-slate-content table.ei-cert-table-v14 th:nth-child(2) *,
  #main-content .ei-slate-content table.ei-cert-table-v14 td:nth-child(2),
  #main-content .ei-slate-content table.ei-cert-table-v14 td:nth-child(2) * {
    font-size: var(--ei-cert-row-col1-font-size, inherit) !important;
    line-height: var(--ei-cert-row-col1-line-height, inherit) !important;
  }

  .ei-footer .ei-address,
  .ei-footer .ei-address *,
  .ei-footer .ei-address a,
  .ei-footer .ei-address a:link,
  .ei-footer .ei-address a:visited,
  .ei-footer .ei-address a:hover,
  .ei-footer .ei-address a:focus {
    font-size: 15.5px !important;
    line-height: 21px !important;
  }
}



/* =========================================================
   v15 final small tweaks
   - Desktop: move Certificate Programs table down 1 more pixel.
   - Mobile portrait remains unchanged.
   - Mobile landscape: Certificate table header sizes match first table header sizes.
   - Mobile landscape: Certificate table second-column content size matches first table second-column content size.
   - Mobile landscape footer: phone number matches Directions size.
   - Forms are unchanged.
   ========================================================= */

@media screen and (min-width: 768px) {
  #main-content .ei-slate-content .ei-certificate-programs-column table,
  #main-content .ei-slate-content table.ei-cert-table-v15 {
    position: relative !important;
    top: 3px !important;
  }
}

@media screen and (orientation: landscape) and (max-width: 980px),
       screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content table.ei-cert-table-v15 tr:first-child th,
  #main-content .ei-slate-content table.ei-cert-table-v15 tr:first-child th *,
  #main-content .ei-slate-content table.ei-cert-table-v15 tr:first-child td,
  #main-content .ei-slate-content table.ei-cert-table-v15 tr:first-child td * {
    font-size: var(--ei-cert-header-font-size-v15, inherit) !important;
    line-height: var(--ei-cert-header-line-height-v15, inherit) !important;
  }

  #main-content .ei-slate-content table.ei-cert-table-v15 tr:not(:first-child) th:nth-child(2),
  #main-content .ei-slate-content table.ei-cert-table-v15 tr:not(:first-child) th:nth-child(2) *,
  #main-content .ei-slate-content table.ei-cert-table-v15 tr:not(:first-child) td:nth-child(2),
  #main-content .ei-slate-content table.ei-cert-table-v15 tr:not(:first-child) td:nth-child(2) * {
    font-size: var(--ei-cert-col2-body-font-size-v15, inherit) !important;
    line-height: var(--ei-cert-col2-body-line-height-v15, inherit) !important;
  }

  .ei-footer .ei-address .ei-footer-phone-v15 {
    font-size: var(--ei-footer-directions-font-size-v15, 15.5px) !important;
    line-height: var(--ei-footer-directions-line-height-v15, 21px) !important;
  }
}



/* =========================================================
   v16 final small tweaks
   - Desktop: move Certificate Programs table down 1 more pixel.
   - Mobile portrait remains unchanged.
   - Mobile landscape: Certificate Program header matches Certificate Term Offered size.
   - Mobile landscape: Certificate first-column body matches first table first-column body.
   - Mobile landscape footer: phone number larger; copyright matches footer link size.
   - Forms are unchanged.
   ========================================================= */

@media screen and (min-width: 768px) {
  #main-content .ei-slate-content .ei-certificate-programs-column table,
  #main-content .ei-slate-content table.ei-cert-table-v16 {
    position: relative !important;
    top: 4px !important;
  }
}

@media screen and (orientation: landscape) and (max-width: 980px),
       screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content table.ei-cert-table-v16 tr:first-child th:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v16 tr:first-child th:first-child *,
  #main-content .ei-slate-content table.ei-cert-table-v16 tr:first-child td:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v16 tr:first-child td:first-child * {
    font-size: var(--ei-cert-term-header-font-size-v16, inherit) !important;
    line-height: var(--ei-cert-term-header-line-height-v16, inherit) !important;
  }

  #main-content .ei-slate-content table.ei-cert-table-v16 tr:not(:first-child) th:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v16 tr:not(:first-child) th:first-child *,
  #main-content .ei-slate-content table.ei-cert-table-v16 tr:not(:first-child) td:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v16 tr:not(:first-child) td:first-child * {
    font-size: var(--ei-cert-col1-body-font-size-v16, inherit) !important;
    line-height: var(--ei-cert-col1-body-line-height-v16, inherit) !important;
  }

  .ei-footer .ei-address .ei-footer-phone-v16,
  .ei-footer .ei-address .ei-footer-phone-v15 {
    font-size: 17px !important;
    line-height: 22px !important;
  }

  .ei-footer-bottom,
  .ei-footer-bottom .ei-copyright,
  .ei-footer-bottom .ei-copyright *,
  .ei-footer-bottom p,
  .ei-footer-bottom p *,
  .ei-footer-bottom small,
  .ei-footer-bottom small * {
    font-size: var(--ei-footer-bottom-link-font-size-v16, 13px) !important;
    line-height: var(--ei-footer-bottom-link-line-height-v16, 18px) !important;
  }
}



/* =========================================================
   v17 final small tweaks
   - Desktop: move Certificate Programs table down 1 more pixel.
   - Mobile portrait remains unchanged.
   - Mobile landscape: Certificate "Program" header matches first table "Program" header.
   - Mobile landscape: Certificate first-column body matches first table first-column body.
   - Mobile landscape footer: phone number 2px larger; copyright matches Accreditation link.
   - Forms are unchanged.
   ========================================================= */

@media screen and (min-width: 768px) {
  #main-content .ei-slate-content .ei-certificate-programs-column table,
  #main-content .ei-slate-content table.ei-cert-table-v17 {
    position: relative !important;
    top: 5px !important;
  }
}

@media screen and (orientation: landscape) and (max-width: 980px),
       screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content table.ei-cert-table-v17 tr:first-child th:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v17 tr:first-child th:first-child *,
  #main-content .ei-slate-content table.ei-cert-table-v17 tr:first-child td:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v17 tr:first-child td:first-child * {
    font-size: var(--ei-top-program-header-font-size-v17, inherit) !important;
    line-height: var(--ei-top-program-header-line-height-v17, inherit) !important;
  }

  #main-content .ei-slate-content table.ei-cert-table-v17 tr:not(:first-child) th:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v17 tr:not(:first-child) th:first-child *,
  #main-content .ei-slate-content table.ei-cert-table-v17 tr:not(:first-child) td:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v17 tr:not(:first-child) td:first-child * {
    font-size: var(--ei-top-col1-body-font-size-v17, inherit) !important;
    line-height: var(--ei-top-col1-body-line-height-v17, inherit) !important;
  }

  .ei-footer .ei-address .ei-footer-phone-v17,
  .ei-footer .ei-address .ei-footer-phone-v16,
  .ei-footer .ei-address .ei-footer-phone-v15 {
    font-size: 19px !important;
    line-height: 24px !important;
  }

  .ei-mobile-footer-legal-final p,
  .ei-mobile-footer-legal-final p *,
  .ei-mobile-legal p,
  .ei-mobile-legal p *,
  .ei-footer-bottom-inner span,
  .ei-footer-bottom-inner span * {
    font-size: var(--ei-accreditation-link-font-size-v17, inherit) !important;
    line-height: var(--ei-accreditation-link-line-height-v17, inherit) !important;
  }
}



/* =========================================================
   v18 mobile-landscape-only tweaks
   Desktop and mobile portrait are intentionally untouched.
   ========================================================= */

@media screen and (orientation: landscape) and (max-width: 980px),
       screen and (orientation: landscape) and (max-height: 500px) {
  #main-content .ei-slate-content table.ei-cert-table-v18 tr:first-child th:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v18 tr:first-child th:first-child *,
  #main-content .ei-slate-content table.ei-cert-table-v18 tr:first-child td:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v18 tr:first-child td:first-child * {
    font-size: var(--ei-landscape-top-program-header-font-size-v18, inherit) !important;
    line-height: var(--ei-landscape-top-program-header-line-height-v18, inherit) !important;
  }

  #main-content .ei-slate-content table.ei-cert-table-v18 tr:not(:first-child) th:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v18 tr:not(:first-child) th:first-child *,
  #main-content .ei-slate-content table.ei-cert-table-v18 tr:not(:first-child) td:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v18 tr:not(:first-child) td:first-child * {
    font-size: var(--ei-landscape-top-col1-body-font-size-v18, inherit) !important;
    line-height: var(--ei-landscape-top-col1-body-line-height-v18, inherit) !important;
  }

  .ei-footer .ei-address .ei-footer-phone-v18,
  .ei-footer .ei-address .ei-footer-phone-v17,
  .ei-footer .ei-address .ei-footer-phone-v16,
  .ei-footer .ei-address .ei-footer-phone-v15 {
    font-size: 17px !important;
    line-height: 22px !important;
  }
}



/* =========================================================
   v19 mobile-landscape-only override
   Desktop and mobile portrait are intentionally untouched.
   ========================================================= */

@media screen and (orientation: landscape) and (max-width: 1180px),
       screen and (orientation: landscape) and (max-height: 500px) {
  /* Certificate table: first header cell "Program" smaller, matching the first table. */
  #main-content .ei-slate-content table.ei-cert-table-v19 tr:first-child th:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v19 tr:first-child th:first-child *,
  #main-content .ei-slate-content table.ei-cert-table-v19 tr:first-child td:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v19 tr:first-child td:first-child *,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tr:first-child th:first-child,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tr:first-child th:first-child *,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tr:first-child td:first-child,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tr:first-child td:first-child * {
    font-size: 13px !important;
    line-height: 1.2 !important;
  }

  /* Certificate table: first-column content smaller, matching the first table content. */
  #main-content .ei-slate-content table.ei-cert-table-v19 tr:not(:first-child) th:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v19 tr:not(:first-child) th:first-child *,
  #main-content .ei-slate-content table.ei-cert-table-v19 tr:not(:first-child) td:first-child,
  #main-content .ei-slate-content table.ei-cert-table-v19 tr:not(:first-child) td:first-child *,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tr:not(:first-child) th:first-child,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tr:not(:first-child) th:first-child *,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tr:not(:first-child) td:first-child,
  #main-content .ei-slate-content table.ei-mobile-certificate-program-table-fit tr:not(:first-child) td:first-child * {
    font-size: 13px !important;
    line-height: 1.2 !important;
  }

  /* Footer phone number: increase by 2px from the last landscape-only version. */
  .ei-footer .ei-address .ei-footer-phone-v19,
  .ei-footer .ei-address .ei-footer-phone-v18,
  .ei-footer .ei-address .ei-footer-phone-v17,
  .ei-footer .ei-address .ei-footer-phone-v16,
  .ei-footer .ei-address .ei-footer-phone-v15 {
    font-size: 19px !important;
    line-height: 24px !important;
  }

  /* Bottom copyright: decrease by 2px. */
  .ei-mobile-footer-legal-final p,
  .ei-mobile-footer-legal-final p *,
  .ei-mobile-legal p,
  .ei-mobile-legal p *,
  .ei-footer-bottom-inner span,
  .ei-footer-bottom-inner span * {
    font-size: 11px !important;
    line-height: 16px !important;
  }
}



/* =========================================================
   v20 mobile-landscape-only forced override
   Desktop and mobile portrait are intentionally untouched.
   ========================================================= */

@media screen and (orientation: landscape) and (max-width: 1200px) {
  #main-content .ei-slate-content table.ei-landscape-cert-table-v20 tr:first-child th:first-child,
  #main-content .ei-slate-content table.ei-landscape-cert-table-v20 tr:first-child th:first-child *,
  #main-content .ei-slate-content table.ei-landscape-cert-table-v20 tr:first-child td:first-child,
  #main-content .ei-slate-content table.ei-landscape-cert-table-v20 tr:first-child td:first-child * {
    font-size: var(--ei-landscape-top-program-header-size-v20, 13px) !important;
    line-height: var(--ei-landscape-top-program-header-line-v20, 1.2) !important;
  }

  #main-content .ei-slate-content table.ei-landscape-cert-table-v20 tr:not(:first-child) th:first-child,
  #main-content .ei-slate-content table.ei-landscape-cert-table-v20 tr:not(:first-child) th:first-child *,
  #main-content .ei-slate-content table.ei-landscape-cert-table-v20 tr:not(:first-child) td:first-child,
  #main-content .ei-slate-content table.ei-landscape-cert-table-v20 tr:not(:first-child) td:first-child * {
    font-size: var(--ei-landscape-top-col1-body-size-v20, 13px) !important;
    line-height: var(--ei-landscape-top-col1-body-line-v20, 1.2) !important;
  }

  .ei-footer .ei-address .ei-footer-phone-v20 {
    font-size: inherit !important;
    line-height: inherit !important;
  }

  .ei-mobile-footer-legal-final p.ei-copyright-v20,
  .ei-mobile-legal p.ei-copyright-v20,
  .ei-footer-bottom-inner span.ei-copyright-v20 {
    font-size: var(--ei-copyright-minus2-v20, 11px) !important;
    line-height: var(--ei-copyright-line-minus2-v20, 16px) !important;
    margin-bottom: 22px !important;
  }

  /* Copyright size, locked directly here so it does not depend on JS timing,
     and with text-size-adjust disabled so iOS Safari stops inflating it in
     landscape (the same inflation the phone number needed protecting from).
     This is the actual reason it kept looking large despite the 11px setting. */
  .ei-mobile-legal p,
  .ei-mobile-footer-legal-final p,
  .ei-footer-bottom-inner span {
    font-size: 11px !important;
    line-height: 15px !important;
    -webkit-text-size-adjust: none !important;
    -moz-text-size-adjust: none !important;
    text-size-adjust: none !important;
  }

  /* Higher-specificity copyright override (2 classes + element) so it beats the
     13px `.ei-mobile-legal p` rule regardless of source order, at a clearly
     smaller size. */
  .ei-mobile-footer-extra .ei-mobile-legal p,
  .ei-footer-bottom .ei-footer-bottom-inner span {
    font-size: 10px !important;
    line-height: 14px !important;
    -webkit-text-size-adjust: none !important;
    text-size-adjust: none !important;
  }

  /* Stop iOS landscape text-inflation on the program tables. Both tables get
     the same specified sizes (the JS copies the master table's sizes onto the
     certificate table), but iOS was inflating the certificate table's first
     column more, making it read larger. Locking adjustment off on BOTH tables
     keeps them rendering at the matched sizes. */
  #main-content .ei-slate-content table,
  #main-content .ei-slate-content table th,
  #main-content .ei-slate-content table td,
  #main-content .ei-slate-content table th *,
  #main-content .ei-slate-content table td * {
    -webkit-text-size-adjust: none !important;
    -moz-text-size-adjust: none !important;
    text-size-adjust: none !important;
  }

  /* Make the "Directions" link and the phone number match the rest of the
     address sentence (they were rendering larger as links). They inherit the
     surrounding sentence size rather than forcing the sentence to a fixed size. */
  .ei-footer .ei-address a,
  .ei-footer .ei-address a * {
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: inherit !important;
  }

  /* Breathing room beneath the legal/copyright row and the page bottom. */
  .ei-footer-bottom-inner,
  .ei-mobile-footer-legal-final,
  .ei-mobile-legal {
    padding-bottom: 18px !important;
  }
}



/* =========================================================
   v21 mobile-landscape-only footer override
   Desktop and mobile portrait are intentionally untouched.
   ========================================================= */

@media screen and (orientation: landscape) and (max-height: 500px),
       screen and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  /* Force Safari/iOS data-detector phone styling too. */
  .ei-footer .ei-address .ei-footer-phone-v21,
  .ei-footer .ei-address .ei-footer-phone-v20,
  .ei-footer .ei-address .ei-footer-phone-v19,
  .ei-footer .ei-address .ei-footer-phone-v18,
  .ei-footer .ei-address .ei-footer-phone-v17,
  .ei-footer .ei-address .ei-footer-phone-v16,
  .ei-footer .ei-address .ei-footer-phone-v15,
  .ei-footer .ei-address a[href^="tel"],
  .ei-footer .ei-address a[x-apple-data-detectors],
  .ei-footer .ei-address *[x-apple-data-detectors] {
    font-size: 19px !important;
    line-height: 24px !important;
    -webkit-text-size-adjust: none !important;
    text-size-adjust: none !important;
  }

  /* Decrease copyright more in mobile landscape only. */
  .ei-mobile-footer-legal-final p,
  .ei-mobile-footer-legal-final p *,
  .ei-mobile-legal p,
  .ei-mobile-legal p *,
  .ei-footer-bottom-inner span,
  .ei-footer-bottom-inner span *,
  .ei-copyright-v21,
  .ei-copyright-v21 * {
    font-size: 9px !important;
    line-height: 12px !important;
  }
}



/* ============================================================
   Dots band — DESKTOP ONLY, inside the header, directly under the blue
   navigation bar (.ei-mainbar). Earlier attempts placed the dots in the
   content area and/or relied on a ~150KB embedded image that Slate truncated
   on deploy; both failed. This is a real element (.ei-dots-band, injected in
   the header markup just below the blue bar) painted with a pure CSS halftone
   pattern, so there is no image to drop and the placement is explicit.
   Hidden on tablet/mobile. Height/dot-size/darkness are easy one-line tweaks.
   ============================================================ */
/* ============================================================
   Dots — DESKTOP ONLY, as the content area's background image (the approach
   that rendered correctly). The downward fade is baked into the image's
   transparency (dots fully visible at the top, fading to nothing toward the
   bottom), so no CSS mask is needed. #main-content keeps its white background
   under the dots; the inner Slate wrappers are made transparent so the
   dots-over-white show through the center as well as the gutters. Round dots,
   medium gray, hidden on tablet/mobile.
   ============================================================ */
@media (min-width: 1025px) {
  #main-content.ei-site-content {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABXgAAAEWCAYAAADcuv8OAABJAklEQVR42u2dPZLjug5GOS4tRYGXosBLcaClKNBSHGgpDrQMhx284E6/6elp2+IPQIA8p6rr1btjy+JHAAQgifr1eDyCIh+Z3x+CTT6Ejz90PM4xhHDvQNvebKkFXbEdG/p+KP2etL5bCOGiOO8DvoqvOtP3Q+E3hobn/8Ogbh+VjttCTPmoPLae8tXasYd1sY8aSDKf++hESwt29FFB41ZqIau25aqHeXLmcB8BYrR692fJOJ8d++7ALr1AcxfbaVHfoWPf+GjMfvEpIF76ywGGRB0+Cn7uKwtmBuTvYsebBOpLkM/nBsP2iL/mHePDiB3im0Z0PTkSxqrhWTyfD4HPgg4zEkAHxYXE+e2J37Mytti7d7loyjit6IC+/cbyIcFWPhJt7Oj3rh3ElA8Dxx4c2Sm+m3+cTx+8UV+a9OejTd4zvmneX2s1dzXX0B7zZrWYeEJsjDDyexKBncXiD6uBhebI3d9XYkXzhbs3fc/heMPWUmO3m4QDX2XNg6bsb6jg4+T/gO/qfz+nvqRZZCuf2xPtwHveXMMHB+HPS7FUzF8H/D2fUysDqchu4BzGAjrXavKyWMhrErOf2lE7WCi0TMa3iwN7jOGWcc6v/rC5vtbpXG08PYY6VJpjivi+8owazV1L8Wo78Jkjj7J/dG5H1AVp+lwSvlNrP2vqBZv53KdNbIK2Az/XJOdCtYmkX01Mm9+49UvhJWsWX+rgzQA0N7zWfCxgMOJcLW8UPxiay1aDs8SiPBgZ8xpebxvSk3/ehBOe2i+2GfDVrPOxkJwPjftqCy91sjgPGhf4NV8SdQ3y+/BK5OWDIRvaQ9yj3B+OfLClXPLVuZ1D/k1IrFE+7cpLQ/ZD6Pw/sB+X/pr6sul352PxZa2D5BhPzg0PymusdScvVwPlNdIsFvD14zpJvVimtG9tgT2hv3Ix4OsW9l3ER8vpxzrYn16zUV1f3ck1h7p3AMayVtQyZ+22FIPHCr5p2b+tn9tPf9aau0dyTur39vO5I08v8MK+99waHFNsnTUdtJOY/cMt+lDMGO8hPL+Dd/wt2lrghCwvuNdCyWCtcVq6QiX1UoYW7tipsVDXahj1dnXz6Jg/Kmh6TyjSatuPdZtagsyj6Fb0Hjr31Y9KGn44GZsF+2nhzpze8poad8HU0FjrLlatwjPFjlKfdGk1F/c8/hqxtieNe1sHNGoS6lt/OXOqvtJ1tQX/TD6HzwZvL805yTfDshD+zfL7f2eSKrWAXuuROhZAnXPQuntqcKavd5uypLfU2udhO54PBzr+xNFH2lryVa21693vvNvChpymXsyagtwdToPCOGs/yp7zqGyM/p5ycPy277q2ldjoeayDk9/tpb4tdR415nUw7p9Zv//r8Xh43ifq6HloXFHWbvCyMNgY54fThPUD23GXrF5C3iNsr66epx671zvsvSertdY8q/vvWbnYxcWYOmMZMo8fe3G1Rs7Y6ho8h+dP4WlqrB1DeLotPs8pMbaPTrRubW9Pbj5pZ6zaeTP7gsueS806yOoam/3bJ8NGVdIBJoVx8iZZf4tUzh2Rr/ZDYe8gbPOz0ChJ7t1Iz97aeuQtulA+Jllr7oZw7MVEU/C5x6T2epraAH+3f2LOG5fxv/fHSpm30ch636NNLAbycnI9G7XeRzj2CLiFdxxY9tna9nwxpPHtW0337M8id8LC/+f/0pB/WtV4UPhOzfdOuYq/p8ZEkTjHmGOshZ2l5wXeYiGUspDHburdSqLdYiMgpehv3S97bzL1ljSWiGcfxjSxutY9uyBj1VeHCv5X+hgfirZUWq9LAGldPFwk6pGcC441X45J8+hnNiPHirlBzGKjd3fsm6WPuUXmUAP+mRzTXmmXk8surLPHSd2i4egClbOhdu5v13okoMSYPexX6HmhsPoSHC2k/dKa7Uj5yqvHctlHrK/i53ow+RiMan30/KQfjWrtZUwpj+579NUc2/54U5S9a9Cl7rU6KNu2xbzGu80dHfvR+GwtfmjXOR7XXq91wdCBprnjz61Vhkrjp4bvrw7K0WUw7Ks9b9fp+UWtRRq8tRKQGr+rkbTz9vr6C6+k1kMDGnq0HfbHa0vf3PMZlPSYQ9knO1rfF28J/zVj8FUZJC/uxYwzpSk7FBqbhf1TS/6+9UK3hX0Ce9o73INNSY1fqz7AZ+vu968xdgtN3tafBG7xQtSAxqbG6rapfAp+qZ1wHTm/mEdD1sDjAEd1HQRsxrIt9cK7Pa4WQ4sUvmpP35j90KQfp/uMU2tDvqnB3GGuoMnZgP+nbvPxcWBsw4E/q/niIKw7/KfXrDAvXtddTzb1YWgOjtgJe6frxMccjT8atM+cGgzKaSr1eW/rSyqt7Sf9k7ZFb245FTRgKwYyCTtqDJfw+iVG+5d/nwNYW/Ct7B3EAvgn+OU0eveCtsccy8V6TV/tcY9s60U6BbCvpF1zO4IP57ZdIldZA42iHHv+qt/6Yg6GDv25d5sq8YTg0QtLJbkHPy/+ktLXos96eVfRM3vJsaWp81gyZc6/1B2/Xhkr/a7mPtZLyYP9ejwepbri5zeLT0k0fyvmtzWxPM7bN2c8B5/cG7UjjSthZ4XzOFcY/9mRvh7t61zRnr3EqbuyTdVaa+4Kc9qzr96Vx3Y3qOm907mP1WMP6S8ra13j3vMp6p86jCHu4vQZjU3lVV5/92zEfkL478a52aBvXkO5uzFr6d2Lf9aogVR+p+QWDYuSoXhtFvawOH7+jS/+jQQSSul7V/YdYo89fUv66cTUVWES8Lcz/ioez2o1dz2tz57O89W5jhk5HH5o35+ZI3/5862wj/fMTXiuWlqX7sHOU29Wc/arc/thPZDTQ03bk6KjnRsxOhbIvKSBJKOMr91DeuO8pTtecpq8Z4HPwt+anQt9TiMWLx0mGxZiwlLY9/DVOK1WZ/ZCLlYvf7OWw+HrefFSMre5H/wD3bh3x2//YWxMC+mnnMcg8zJc/DP9mOdGfbOluktV26GCQHeMzoSeJbTOvQrY85xOIe4lfPeIfz8bsMtnSCQFObbUmw3eK+jg7dFPD+dbMvZ7Ge/X2LkUOn+pNdQTa/jT5L0L2AlNnDYL0ZhYiZ/pxmdPW4DdFeuO3n02xnfx2fbyuZLzeQ2vLw7vQb5xbi13nQzYUc4802eT81N1bQcHBjiHuEYY6ATMUo/Y9xpQYhq80gmzJtdOfMhSYnyP/IwHn6TwKGNnHuPv5ui8ZwEb52IMWImfNZu82GpbdnVnTlVznlp6nzudO42Guvb7iV6N69Jhnr5UtqFUWyLuxmtlXt9TZZGePR709d+sNXc3o8bmNdHotVEzHdTmLqTtuYI93p3YZO9FwR3NspM8rUdQU/14JqkzmS8csRtPjzffjPsq8U33eLPjvJfiWN6u8GdbupzxFTd6nzuzTXhvD1//9hf/1rpvSOv7nUuivkXHWPIO3r2ToD8bNXytN2JrXwUkoZPTlkew2k0C7w375OTMX6Xvjo65ojwHnoixGgdzLsZY9dUR82oyr0hlK+BvPeWK5w7tinpAd960tmpgTsvnczXrdvCl8cWYFmejftdMbBucGg+UXYRZePWZjSRxve3l6cEfrSQaVgutxXFSJ9mQOzv2ldpsofyFg7Oiz9IUgdpxMPZOFW8vh9Ve72dHc1/bnlr3Le/2zVz2qZlkHXQW9CnsVT5W3dH6R9ZQaCvLU4Pi9GwssbeDr8pFqPUkRruhYEWLcyN+dzPoj97jG1f+ZbTxpGsPa+pcUbM7vkqRrsBkUJt3Oese/DxGWvocedKCGk+Da6S/xrAyX//XoWW0a6/U2Hh0aysvW2C1UA9Z2MvWUowqFiuGBsUhsfj3PJffyf1M0thskDxy3PMbm7k794nWbZstVNryU3S151/aj6JSRLQx55rxZQ9pT8wtCud8VvAZrRh+rmhPPW7NwPpYh2tkU+H8Zv5T41PLtN7gHZXX2FkpVnGX6bG5z23w3yPiRg8vay0yxqFRg7OUtN/C+33opBfEOUArhZ/0mI8uhBaD4tiwHR3Re8Jt3RW1XopYqXhocR+uI2t2ifFwMaaP9bR0bBkpPFXid6rGbJfWn9/+lIstHcyntQsz+E/7+eO5oL2QV+VT6u7tsYI9Nb3t09C4QDUXsnukYZOwp7GE142tcwO2pF38e7VBqy/0OSfEhJT5WAzYjgZ7xbm+Na5tD3HwHZcEf7U0Fkv2VGw/MSfFZ86cETvsaryFuBslUtZ85vHnnGY26rNH6pA786zqu/cvOeIl0vd4msb+Olujuctaq6NvrMY97AueNcZfj8ejZYG8XjE6d+DIuePW2k5A8641axp7syEPAVuy4OtJ31pjvXdsu6XH7ylZ/rwj6ytzyNsLDl+1Nc5atq11J0rr+YXFWuA7n08HXH7/r/dtpWrb1N2A/aacwxqOP7bfs9/mjt/Cdkln/DT7fM6Gxn2uqDN5XZnz8Nioj/aZoRFDe3WOHq8YWbxSVPOuuVIap+jaw34voBuTXtnxHNgn29IcfWURjmk9bdUgUUjHFM2xbB3E7iN7qZ0b93uvezBzd5FOIZqr8+VbTi3FkW1mcu1ladD/tezq+vsPn5X1Xc07Ap/lDT2wJ/qaxD7oEnG/Vf9pIf6cD4733Mg472/izfz5f1Lv4O2h+6294HvQ2cLVKavNhRK/yx289ubV0wsjLF89vr9aiIyN9exQX21S96nVir1nfLXp3Ehyjj3fMVbz7iKLfpezn7bH2KIZK5egs++/Rt5cM571XhdY0NjC7/ZaG3gcc4111tId0hqxn4tfmZx+ixhzhcur6NLjlHphCpTXo0bDgGAlq0GKv8a80ObeiW+UPqdn2k1v/r2WLc246SEukXOQmjvcG/IHi/EAfX+21ZQ7knp5FNcTY0ca5/hyyndnQ/56zvx+DEtj9tRDc67GXtjUfKyDtWou6e/xQm8HDEaC0XfDkrxrjqBLwP48nsZ2DdhbW4WQ1fm09DKj1AQj5UU2PFL3PAH7LEQvQe5x4LNBP/Xgry2sqTUff5We16/55/KkoOHxUdu5zh1fdh8v90j702jkTRX8ClvWte8czSXzLWzIxzpY42nuVtcAjzHLhIa/Ho+H9SDe2ouTUhKci9B5nZ2M0+rm96X3e+nlUayaW5ncG9Gwhv1Y3EKlpUclcy9ssqb6GW9LLyci/vqJ1V5eeNfKekg+VU/ju+IxPcXrnv1Wui6zvDZ97vvcuv1YqaU1X+x5dzo2z3me+XrrVOE3l0jj8PB4tCRjouHdIz53M2CoF8MO+kqPZ38WA9pqxKbPlY51N2I3rVJD35THqT0mEyXXSOtr6t348TxwNqpvrr+20Nzl8caf49GzP9CNba1oXjI3bylnbi2exvYfUu3opxp1d2RbK/bjzmdr6cu6+zqGuKi3BkdGw63jcvqOlfVlXv0u8Dlzfle0GwtbfBB7ZLhknoOVebwo627Rhkks7RW4pW0pxV/PzIGZdbfU/MTuEx3z6PMVV3dtT73mUGfluestj8y5uLZX0Kz0U7gl/ZX6R1bvsxGfAaf11smJMJYNeWrA8GKOcXY4Lk821dOiqfViDKk5XpgrU34ZexfFOfi/c7fFNbWHON97vvLV/5754bkBH+0hlku94PQ7t4jvaTR4a8eUe8Njs5gLt/QytHNBTbjjviy3EP8UrvbcsybbqEtGwfPGl53XW1oN3qlho7s2Yngxx7KYaIBPnT035SbmWDQm3zNt6rsenh6nsxbzeyigicc21gKaun7sr8Z7HCg8249l+P9zXfbK2r5r5tLszdNWclvGEjaAb5bLb9bMvOeGrNRbz9DaomERENtKkBkr//4kZMzv9NV+xL63haD1lwy9O8frb9u+YA5Vbce7n5Y8991AvJdKENhyJF3rNdjb/qZGYokN9bVW1HxJrwVb2wuO+dy5LX1lwzVfkrMlVY6dLQn15p1aTzU+xsTF85cewkK9rl5XeK+renrxY2mWEMIs/SMaDd7Wr+Jtoe6dfEtlJ0+ZYxYKvQA6C/nsJhygSjVNaGrI2k9Pd2lcBMdLTNTJRST2Nft8O3XN/fCwI9DMM87O/Fl7bVwi64LYRpjGnVu3EHeBvUQ8mwMN3tL1VwlN78591UNuUisubgbm5hr+u3li//1HDIAcW7p+s+/ZiG9+MmmMcXA8ibHJh2SSV6vJsRhJno8mGizwug0AyTtsJpK27AC/CPlJS3fTLEHhSmekHjUv6EmuNVbWVK/FVsrdSrykqD/mYGv/9pgL9Wdln7KwBj5jFxjr0ZxqNGrbGi8VAl3d7gWPwxzXj43exn1O9InWdR2V5uisrPFW2Jamb/9uJQZdQ9xNbNFjHDBu17AHaB/J25Iw11qPT/IIVnmdSyxG5/Bfw2507svWYtwc2r3rciwwV4vz9UD7McmSiTIx2AdW707y6q9nY+fTyphyc4ejWsyBO/ascmvcX1uuM86Gz81zjWnlPJZGbXeOjE+joD1JXiSIafAm+cwQ+eWae25pBhYWoH7wMNfzQRtOfRShpaLEcsKlrWvqXm3M43t97gWP1apd352NteZjkjk2Jb1dDpDTWPErK+zG4ofWGFPt0NtaIL3ue2EUigdnNBaPjRafyNJ4uqEXW7oYGF/N9wX1sG1M1hiHyAN4vVtP+oqRZCDpvdliOUg/Oy/Jl+6cK/uG94DpMYnL1fV84FyYN/24dO7Mplu6q0TKpmLvSMBvyWt6Zwo/3wEqqbFG46R2I2wvbO+WYvnZaExgTexLY0nGBu2pdg7ZW751PvgZ7SfQetg2JnuMpw4C/72mwNAk9ze2cT3wGRK4fmzF0nHOT/4gXUutRFHDXxeFNfVecb6s+/7lgF1tRv2WOMIc1GAxoLFUTKu5RdHcWF5uZR0CtGe+dY5Vcj0kv5HT5lzJlqzGomuJg5waE0XiHGtu60BAkdUhZcuRu8J3PCdYvSVur+7kGdG2ixh4tNm2B/sN9V3JBu+G5vpu3K6+/83kE8Q25rcLTRamUDSGx+bnZ+y0m3rvma18/8O39fOrWJ/d8U8zdVDud3qgeoPXesOhxhUjrhb5YVe2J65Yt1ngvbKjm8DvYUdx3L4k4pOCrb36uxi35RBeby1T2vZ6eFEq/goaPr0iZbW8vJaPX5xo5iHGxhxj78Bn7g35bM7xvuaPr7RKafZq3J0/BfiMledEu7EcC61uNfNKt5wnR3u4Ma3YuZwaE8aC6OdGnba1QHapYOP4Sj/c8cuq2n/+fW0iLqHMnRdQhpuiPT077sI62mwc6GVOzoEGr7TGe7D3hMHOtFa5kedizDbxWZnjfM8fj37nZkjDa0P+WeLYn43F/eDn8L/8Y7AdYCVODgzEUlCZFMaNA9ha8O+VbEiSBbshvjU4b7GNWxq99W3uXtmOuMMFrMS6c2HbhnIaXwyPqZW8xsLacVXWCP+V1edcwbZGQ3nlBRN6qsurp+2k41bJrT56iSFXhXn5juuLqEOhAdxeBJJd0EGD8m9ew89v633ldLcC49Eep/UFP/UK6Roxf59zt1e0ISlGo7ZzE/CRWr6y45PqdrNnfN9LIrx38Lua9sQaShFpbW7erYXe9Jb2sUuixkt4fofeHHHetWPIFsptd3Pp3K6mcPxu+Nga7/u5z+QZYutVbK0nUfe9yytr583kV3Vq2/3AZy6Vdba4DkwV7Oki6KMXwdgTQvivwetZoHdOYoFLQ8ZnTdOb0/F4aihZ8tlbxlyW9pWLoxjkcSG8FLadVnyyRsy/OR4ncRZ9vc4PyDI3NI7efPkmfOxLgm5Hzimn8Ug8fK/zxbBdefanOcQ3nm6YbbIGKTHoJuBr4JiSDd5FMWHCAOHIop9jJyxOthe/lPmlqSHvj5717fnCy145DlwK2xM+ekyjJaTf/YfGoF18wmtfJF7aqEeu4c8dZzPSuKj/b0LHtOxbR8e8GI0VlvW9Ffh+zAWhS4HfZR3QyV9UdC7Z4B07SfCsBRRLxneraNQEJn9+VMMXaRrZjkcXZRsi4fiP2fBYY+caP42fd/QFr7EQ0teGLfCCPglWJV2ncGxvylo3Q0C9noHUU4Y8gapXm6Rs6Zjiu8xng/FwcCgQhihrfCn6xj5iPwf25plC3qNat2/JpKfHvm6Fj3VJtHGaGnbiUcr+2C0l495ifs1iZQl/X1C+GNHRu8+2sr4ABVLLvhnz+c87SUNFf34276l3t2JHP8/rEc0uTm3aU01iPS7WurmmBzsKofyLe3Nq3FfzzcW9OPZQZq97NZsdKjgjt4/bXShi9U39vYX5jG7wvkroruHvq/gXBVuxluyuBeydx+rKJ15LeP90B/iJ+RaYHfqBV/8FsBSvsNE4tO4kTakNxmCv8fj13KzehKJ192Wphgbo12Ma71N4Z0u9XtS7Cvn8pbAt1IpRXm8YmAv4kOpc/Ho8Hh5ejGPtsd0W9tTJHVPrd49ZsiOJOb1VGlcvLwW8GbGdo+flrVi2qq8XLWKSrB7W1Bt2BODG13pa73tamy+Vte6lLrlUtOtLw7o+493dkiV//9UNKtrz2Vue3vs6IL01hBV7ctHDLHkH75o42Jszg7buZLGPn18UnPjdsSiCZXS2pu1VWCvsKN2Obo5inIe7Aqbw390vGndPfc7XGP5+GYaX9avVx8SIRwA/+wVP8rU31pYe/W497zmqM1urlMsHVyWdZ8d5M/iMjbcGxnRJ+GzN9069pWSDd1MQFdJ1Xd4E/xpJxiepj9h7ZlXSWeIN9an+POGW6gvRraDNwGvbvh6weUldd6fzthnxKQogALv+dmlsPC3VRkvhZgH5hzw1mrzM62ttjr40z5K2r+xIMq/CluzEkRLfvzj1WbOcGg2SFh3g3d9V+BzmYHfvwh4bfxZecsEC2W4cuoX8vdrgPWNk/L451PaCz6IZgIC/XcL7fRwvwd+LIHtcB0uyoLNKPnZTtG3WxGN14UVAW/L553HmVigv71HjW+G5qBVDLMWmYucyNCiOJeFjjH/6/XfpxJl/OjYJgP5CsYZyFxdqz5+1O8Fr3dVzxSfN+yna2swden1xHUBvcWAJzxuTOS+0yY0f3l7yKpGv8nIvmz56c+LbrcTDVy/XtqTrq5eGW3u64Xbw37Bb3bg/Rsz9rQP/zx7jqWFxvBr/LXC1rWcb0r5SvwWuzrdmk5MDeyS58aUt+14e+x5xEMB+7L69KShz7urKiQGX4Ku56zEX9rbWWcoTYtY41sN8m1rD308xWH2i4aroUzkvmL4Jfh58xjqrMSr7Ke9Tw+LUNILein/w7zM0NWzPdc23HluLRbX3bL01rK1m3LK+p+Ylwh6JgQD2i8eb0vdi8yKveRRN2Db8InV9fPWn5c/Uyv3kjxdFG/eYo7ce92vV1TVYc89vaFicWhvD13jTKcFGxkZbexTgnT1dImzYol1afazvkhkbiAH/LnxTQzbmKc7PocwLdXLH+/kykouS7wJA3wVpSpy+vDgHYoudGq/UnNze5C0b0yaiba5vldyqDmR8tkZz12OO3oKfXyLsofVtY5K3xvn1eDxabzpo7qd3E5rcVhLkmlpfjIz94khjbzbkISbFaBBbEPSk763SOHkjcL4OF8HfIwkHAMmY3UqeUaLhKJ1zbOH1exVuBuZVusHQel0gNf6LEVv2vGWkBb0vhsb96lw+bzrwpPHFqD1J1Qje64OoMaY2eHt5lMjKIswCUbe5UGr8F0cae7ShVppkF/Q1mZBjv3l6vCvWSybNNHoBoOWbLkqON2VMGg0Nrby5Rs5Vc9stLzatPbetxosebahGw95KjXBz5iPk7wIMwf9j2bEGc8O4kvWzsF3BrcD3LxXGj03Z5F2RchH2qV4Yw9+P9lsdO36appXENjm5+6alNJQBACRySMu5ccqYJiPjrrUF1q1RO2rBnq3ozDuKoBS7oM/cmMf2+PV4PKwFc69FmeW7u67fkjGvdwh6fByLK2M6Y9R4HMv64mctBh09nz2kvzm85JjfPbLq5Q7em1P7ldA6x7YAwC+S8drafqo13jfyva6wsC7G6JBTa2rWItx9qTvGW4Oa8nSf3nhr1bg3Z7/judb+iSX8dyOTmXMfDDrgFMo0I1sKJqXP6ebQkW4Cx0u9k/e7Q7cQnCj85GxGa3Hxqu8Y6t1Z/73ga9mmvcT9krF+DAAAZbkaWi9qvdi55stOjzYGJF5sZ6UWKcWMOxfPKS8Njgnq8e5CVK01gD7C+/9eTctThd+cIo3xRmCKNrrW9LV6fvNv5/3+B7qJj+Zd0pZt0buvpsaiXJtajfjtoqh5T2sq+QMAENv8xcvcpzlL5+a3CvMo/UTr3oFNxx43x156qwF7rHlvynpsjfhgj+tutR7bqYIoVwzOpFPW3pv44kwvjxpsDY6zxhYYxCJ7+l4SC5VL8Hvnbm7icGvYhvBZANYi8M2GBGhQuVa5RHzuYnws0F6Ne8OOXNRc6jnJSVkYkjb0hXpY2tv6onyMm0F/I/6UZf5tE3PBxF37/LX1xo4BAPzFzpuBY9M00tFc6i7b3Pm7hj9Nj1vI3yrsZtRnLm/+NGzj61/Nusu6/1t7+aNXfakNyuuhqung0FDYH6SuvhJ7+VwqOoQ1e+ppr6ScsVp7eR3Y8cudNcJlDMRPAQAgNsdrfX2aDa2Pr85jDD7f8eKtps/RuFSNaXVut5D+pLhEDEt5GaX2CwEtMTv0R5P11smpAVAIymrx7pi1HrGH9nSOvQJu6c7LG/YjqgNx3k7MRzcAgD/sSEAO71jn2OMtCWso79CRz1NSNM6xpQ2fj2IN8Vt99Bzze1hXF40f0biDt4fg3uMbKlt802ir9uRtwVjCf3cCYCfEIQAAAGvMFX9b4w61mk92kPPJ5niXBFvwakte0Nb4kvC7zGFfcW0Mug3XEvp87x/smWv1TUjXHKYfcoB/tPv1eDysB61n5E6al3G+MvqbAWeTfsReo2FlNeiWGPsW4vfevTnWzIP9HDmnNaS/XKOlLVR6eUzTSjy84KsA0ADESt0x3hrQ1cv6dFPUVvNmk15zACs39NwayZd6qUtq+8vNiK6SFymkNI6t8aPHOBw8gEUnHwWcYg48dpXqkLyUQUZbzQ31bwmfZT5l9L3+/qsdk2q/mO8abL0cEAAAAMrmq+STcnVXqrYSLydmjuXrjIsT/7sRD7JqoxZivnZ8iuld3ITn70iDdwzxWzrcQvjT4JXa0Nva48LvzmfJMDapx6O9BLjv5/m5qfgWIFfXJcRf0NC6SkWjV1bfJUHfUrFoN+C/U7DV4NV+ySQAANiCG0Fer2Wae4Ki959c6frFPmfDuTDznV8beNb4Fvk5K/0YS7FqDfEvb7NYE6XGqh62jcka4xDSNvTOeXzYi0gpgYU9MP/gxT48JOpzhC3XukpP0mZLX+27v3srqmpctWZtaT/WA4C9OP0qJ2ttbF8bCLnrGnfo6dZcJesu8g15ps7Gy41E/tbQkvG+VPy/FbTHZrcE+vV4PCSbAJ73iM0xQo3iP+W27aDkfOYMXWiMnrY00dDW4oUf9iiSXXTZI9vfuvKuSFwb9VWKA4C+WEL+C016zIu9x8treN48u6C56bHeOrJp7El2TDfsp8p4b4Iaaj4p7zoGDgWEbuExgNLj1NiLiruR7NpV6pYm3heHo3vKYCe6HLm6ujJ3SbpqvuxkD+WbFZbWFZ6AAYCSzMQUcq4nn7GW83AB0qdtMW+6tVBMP6b2HrE910ZQmRMB5TBXJQO/4Bz/INV0SLmDLmVLk8Wgplcnfmcd7QIh94mLZ39Wm7vWY2GsfjnxfW7QnrEjAPDi+5dGx+U9Xi4JudE1sFewxTz+Yui4twN135HP9IyELpOyPVn1+wu25D7eiZ3LqTFhrASUlGKexu5zZuc2NRr0k172fpL2qdVRXOyR8XchNyrYweXAH5CwAoCvuLIRm0wX/WPm91n32mZXsouYG3qoEdK5KvpXr75JTHLOUOg4z26Zb+2Ry9QtKXCUMsHmVvh42glgLy8iyx3nDf9xY0cWY/xP5zMRl10VY2NhGwUAcsiUfO5ifEyt7zNpLTevWYtQ76UxK9rVaChHn0Ldp7Juwse+JPjZrTG/7GVrs1HBVpuKxUOQ33NP6vjPAvYS+tmfdlMwemuBbFFe7Evb0zXUe4nR10BpzUeWFzFjyUjUStpNjB31tEe2dox/Z0N75OdnR1qvQe7ueys6zAX9dQ4AAP8W7u9izOxoPD3Gy2vh3GOJGH+NWqSFnM56vVey5ntnTz3UCBbHePkWQ8YG8sXSdYFFHa4V7Emqd/BM46XkGAcFgeZgcw/SFliVja+F4j9mXBLaWmjIXw3N55L4ecsLcW/xzkKMXzK/6yWx20If26vMIX9rjTkAALQfH0qswd70kMilY3IBzVqkdx9dlPQtncfWvqHnyN2708GcskV71ZybRdBuS9YFxKVGOFUwXu8GaO2OWQktrF9ZnBPGPQc7gWsJkKvDUtlPWATt6Lt05pOzk2OWSL5n/BMAQDTmeYuXiyHNY7VbA+uTpM6ptZ6ETY3GfW4JxxuDS6RGV8w2SbclpF/QmAv4GTRSbw2KAi2NTPa1AydYHTreUtiJlgDWE/Qlco5LxSEWwedx46qs71LYJnuc29nJ+S34JgDAy/g3RqzDxMsyecCRNWp2ZkeL0fP6Su09Zr3mlYvCeMZOtdXWuYTvsg74jIcvGRwKhCHKGl+OvkvFuevFLlpIIJfCx5oVfYX485w9+N9CpbeY763oBACA9+vwJ59b3ey//7QbYs/WqS3Yb855WaO81QWlzmlT0K+nGlKq7uqRmjrPB86D+YtfV0tctFDT/dfj8SgZ2GZho5+VnMproblUGtfSiH6adhSb3JbUuKaPLIZ8chE8/lJJX8/+MxvR11Pic3T/NBI8AACwuP5bWftbrlFix5S7B74nfWvm65o10dLAuDz46tLBGFPHPxv10aPntggev+gYhwoTPwffDUHLV5xnpYU/1xgXp0GrJKOCxnNBH2yR+YXWM/KoxCJ0zl+PtsAjWQAAYLu4pybwo7HUS7x7nGMPW0mUrjM1Xgg8N+KbOTp7G3tqnT0HG32LlPOYa4xxqORonot/D0FaQ9+lUDDoNaEbFTSupe+suPCVHKsXW5wLaKU1bo/+nWtLyw+F0q5kE6/u6KV4BgCAWsU9NUF9nWM0ngM3g5TgVYNXQuNZuf76CY0GL/iOSZbi/Zzw2aXgMYszOBK0VSfYg9xLzWZjzkxCp68x+taLbYsTW1q+JWXWL2JdnfnrVXHda3FfQwAAaD9fJWe1VxeUzGWZ1zoaj8I2ybyWj4NedF4KfX926rdmOTUaKK0Z//LCCcY3/24NrsiVYVNcJBZFP2Ghr2c3JWxpchCLRkPnkhK7F8wYAACANbKSJjHHK5HXUxvU0/jaoF5rQT9YAr2N2jHpquQj1mNTsXM5NSiOFeFTC3/riY1EEOwxmbPwJuPW/NZaEjNXtJvcRi0FlqxGCxoDAABFPvWmg3xszvjejJuI23ZNjWtsC7Zn+NLyQw4+hfc35FEzyY13dGDnrta4U0UnazkBWIw5jockg6tn/hcJkjhZTWZlf1qYPrQBAABgje1e4znEbe1ATRCfu8fothnReVKuC+dEW18EPw8+Y77VGJXdWy2xB+9qVJy5sLHMyga6dLY4lnrLaKnjlLYfC4w/BI25kN2SyMnaUoy+Je12YW7RFwAAwEBBjsY2clpLmki+y6ZXjfEhcnSrMWkO/z2xOzbsY2uu1kPD4nye31LoODWMnsCSpvlk3E6fnY/0FgPXF7+d6ivYp3wsmjP9obU4VPPtvD3oCwAA0HptVzKnfddwsNqELHVTTM3ca/z277Mhe4K6L+pbCtkeObqenx/ROqcBOnfgO/Og6GReA0vtcXpZfC0t9s8+a33RHw34ylFtN4N2af0K/hxpuyQUz22PLV0AAAAo9kvnaBK1yBhsvjHeeo25OLAb8vjy9Y+mb3qzKUizq7mnMQ4hvok1OxVnSRS0RiCxuPguRuZyyfzurGA73v2nx0Xs+/YVP21nYV3fRdjverGLGX0BAABe5kze6jorORfrvU69F5NvW7CnXvLrJeE7Fuohj347fYvV++//v1bwyRp1Ww+16Y8M3760NCzcfMBALd6VCGUDS0qALrXwk9DZW/gm5q2q384ZvkQyDgAAoM9o4BxK5gGxuUju76bUIuSNvnTuZX7njM8vzrR7dtOdtZpkeRO3P/+dvlejDAYcSqL4by3oWkgEagevpbKeueMnkbO1b9qS8FnmsLy+1rRljgEAAPrJKyXzR+u1nef8sbTOJWsU5rWeTovg+ba2pcnnjU7Ya1m9q+t5qvS7029RlgPCLY4n2BJH71YkgSi7EM0ETnPzvlT4Lr5VXlv8CgAAQB9LTY45pG2plZKfl84BySltMRs5hrUxwXv2ynOYE0uWYOOpDA8c6WEutXsGvx6Ph4fi33qA0phAqSRkNjTOWfl3c99quwjY6mLMjjz4y1zhd63Fo3dvcPaQYEjHutzftRjnAQAAWqx9ZqHzmg2Od66ksbW8YzE0zthzsfy4+9KB7VjwmVo6l/rdNbxuVPdeBy1exjQ4crolsFeIhMaLA4eSIrch5k2z2dB5LMpjWhq35TX4feHIT8eZle3Jgm+wtgEAAPSVm6OVbW2WBjQsWXd9rTtAXud39lXy965vfk9ifF5YMr+rGidOToT5hC0GZI2vZiIwKwQuaCupnJ36GrGn/PHmDBuykpzT4AUAgJ7yOHid88xoUP3485s/6XP+/jcZ8dcdtxXXea7gM9S3Mpqo6npyJAyG15jxdZJQWEmYLSaJqclR7PeWTmyndx+KsYs5UJwCAABYxNr63GK+x0Vluzn18sLmjr7HSNKvyJ/l9ampca0bKjej/uhuHRmcOs5iLLjsoe7m1IuitnOot4cqtL0QLtgJFIjz2AkAAIBO/rYgg0uNU5spy8FzBvl6fknQO8eemFc7OkvG3elFfJCM+VsnPi7uR4PSQFpHev/LVVnfd8ZX0rlZLOSDZ6rGP724axYeN/HHrk0+sxH8EgAAAKgL2q0LloTPMpc6tcoS4pu8Mb/LO5Dy/GwR9Evivl2/rMbJsSH0VGjvjToiC7+8NnOCX33+jW/+HWzpUMOfRkyAghYAAFi/WAubrAtycl3qBb06Ykm0hfmJTWxf/o3mbp7/PNN5D3r7OVOzdNQ7GLwPwJixLw0ZyHLAgXPGTHA4rpGWxkvi55nLOH66M9qyf9Q8l8WgFhQrAAAAZddGckl5nVM0LpHzLMyv+ZxZc36O1EGt3jU8N2JLJeuhucC5lv6NxeB8HB7jcPDLrQVlT+O0rv0c6Qgs8PIJnXYQI3Err/OSOJclF9wQeEvuM03Gwv4NAADgPVdNySlZA+XzvNRmWcl8klpBVl8POh9p7H4y/f6rXQd99yMLTEbOI1fr3Ca+Rl3tsncwHPzy0shCLD3O0kHFk9bzD0G5hPNqnrcXfcfw996nORovBX2LxK28zikLUqk4tIfX+3/3Ssk91/EZAABoiflg3sP6VyZ3WIQ0XpBZlGtn49Wsg6Rgq4r0eF86/ufY09y6z/x6PB5LxmTWXhykz6PmFc/Zkb5WDVxyjO/OyUNz7GsjvjWb0UxQZ6VzmBXHfjT2WdDXq31R3AIAAOitzbPAMcmfy41zQd8mx1ujDlqwnyxS+xiLwDElxj4b98+s3x8yhfVQoOYIVOvxAAp/HXZBexod+MmECbhagJcg+5Zc4k9arEZfAAAA+/nWYnQtnh1qCWC5DpoDT9vlsBrVaqlgS+585tT4ArBUPM4c0rd5AB1N1kgbWBryk8XZcT3a5mLoHOeCn+u56GlNXwAAAM+k5uex32H9lq8TpDRm7tqpNRflecd22rWnpdUxDsInWfplNB4nba64oEEZzZdC9sg815nnpaHx5NiRhP1twead4K9e5EABAQAAQMFvITefG9PUc72XqsXcucat1oHk9e3HpcXQPBerp0/Cgq8NGUHuMecXf6AbZOdKttTLgk7i0o8Gm0Hdl/D6wuLnZ66YKQAAQNd5VsxxStds1IA2NbmG+LfXW8v7p0b8s8Sx5xC/xd3csZ8Ql+poYKrBGyoVyjWEX7B3985WO2hZsCEPdlwyWZoN2yNxqIy+KfYyEtMBAADcUbp5FZMLlMr9ZqbRpMZLSH/6mJzSvl0d+fNU44K/ulrcxoaQ9qKp2EFoNoCvCmOywt6hE85f5jmWFVsyazfXJ+d4zZzDr98rWRCs+Ga1GF/aT6+h3tMmAAAAEMcokGfF5AK5eY/lnMNK/qpZ75Ws+47YkYbGG3bUfI0rUX+tRvWrYU9b0NtqtugYB6eOQjH+R4drpxqvEQu/tbHQUHq+6B39fKx+u6Jv9Pjof+lYtArZDz4JAADQT95ooQ752jCg8WWz3rsWttG1Uv1ecux7SGsUswWaXo1b0paog/6N1y4b6ENhI14xPgjl7rqsaQ8sTraT9JSG3OddvKNBe2slCb8q+vRVwB6ZXwAAgH7z0pTcMrzIL1ObZKCXf1+N2JK1GmwM6TfWWPTVVmvcEvUX9Y9sbauq8eBMoNWIw66NGl6OzteD/0YA+bNo9nwV/1rJF7eM38d25ePRasAumWcAAABIyS8t5dMp+Yy1u0vBRg1mtdFLjZvvt8ypfExU1XhwJBDGp7MYp+xTywJhY9E4epdA7eRN8zGod3bucYsPD/Eodp7XijYEAAAAvnNgdKDmsmZTWk83H82px5D/PhJuhLBb48bWX8xjnLZuephDJYEwPluGl6q19iP2LTFFjt/7ozSSiVSOLa1GfbGVmPRq3i3bKOsOAAAAtJBHW6oNyK/q1p4aebJGHbQ24psSNclqxNbGxnzeTQ9zMCDST0LxdlEdw8vRu9Yj9iRy9rVlTn3a0opNAAAAADRVE8TWBtyooFcvaW2zyHsroFZ88tTni/WxUmPbQrkLMOFkpIBfv/1ZZnNieGvBz0kuEr0mELuCNlchf7U41z3ZUcqd9teCn/Ne4AAAAAB44mrsONq9glbnbVXQl7yZGld67FfBz1uOG6V6mEVvIB3wx+rO7+2uuR7fNOo9kdPUlnn8o8PVqQ2xZxsAAABAWzVBTG1QOo8lp5TVutaNO2slvcB/bLLS/2nOnk4NGtpq0PBfXal49+/QJptyIqfhKyy4bRUDxCQAAACgxvOdz9XWm/pATqPtzXev+GrTPtpLrbkSA45zwonFxjklGL71Rm9Pjx/sjdmudJPXyoburRciq7Iv0eQFAAAA6KMuKJ3L0tyN02qN/KyHdwNZOub1zR/o14dsG1OYVrdoqP14tNYm+CDHJmhDu7Egl+sv2KpOLNJu7gIAAACAz3qyZC4bez7UBu9rvha00+xZrAq+xDZ1deIS28YUHOOpUXEkzmtVNnoaNe2yGfWXtSH/by0W1dT52qCeAAAA0GdORX7xH1OCPq/qBS8vTO+95vPor6nHSb0zlzt6y8SM1uzJxRiHhsX5PL+rotA1NsHvnaugnUrcCb5WDJpHr46909WqTY6NxqJa8QcAAACgB3qst0ZHer3LcfdAM9W6b12Vba3UHrH0YnRq7aNa9/DkcdYYh8bF6cUILCysls8n53ELzUfsR2N+Q3JeN8FZjfkbe60DAACA99oO2qs/x8R6D1uy67c5TfvSe8SujfjP2pAtxc7z2ssYh9/OMzYsTmrwXjMdiKBSd6EvqWWJxZ85BGyB4g4AAABs5QHkZW3VfFZqZ+zqvSZeGpCvbMpaTXI9+G9rY/Z0bdQHo8c4hL+vjHh8LLuUOARjvURKe6EvsehrPGIPNm2K+es38QQAAIB2axPWfb/5eal6T3tLPvJmWZ2u+EzU51vZCnDF3/5jMCDMM2PZQtqbJ1s0gNSm5BRe353tSYfJgJ6eH7FvJREvpbXWFh/gx56YXwAAAH+5wLt6hzXfX92rXe+VzCl3prBZu1xfzLnUVoursM/wtHjZOFVdy8GgKJ9MjhZhr/vTempcjQIa5bx87ZneBMh2ffUa7L7EYep0PrVfpAkAAAC2OPo0Kuv931hsRNZ8YXmJnHIzpmtvW5rVGutW8bd5mZwtvav3hX49Hg8vRrg6nuhSAVr6XNbK41yVf3ft0JbWBsdY49ESbKedsZPQAAAAAHldu+NdFc5j7cyOeqyF3t3oo13jav6epX6XJ9tSH9PJkdPxQp3XTKHMfkW1DHR15KheWRs8D5pz8GkHsbawYT8AAABA3g4ZOeVqfK6wo3KMilrXuPGO91SV11q933RyIkw1gZyQsveUJY3XN2MDktbcY0g88gV2k/L1wGfYIw0AAADIw9vnmqjRs5zySL6J/aCNR32pccvroarp4NBQ2CPkX0bF39Ley2dUsE1L9iSlr0WfWRPjQ+w+uNdObAdIPgEAAKCtXMZSw+V68Jxr9gq855RjeH+D01rRjsivZfVeG/CXVnDZwzwhNoaXcEwesYfSi+ARO/h8pH5DMnVfwk8BAAAA/Od3qQ3Yq8Bn4V/dJiGNS9RQ1APl69vUz9dgE9bLEqOQj4ujcQfvtRMH7nE/12tjjtyqPa2F/Df2zlkL9mDdL6/4BAAAAAAo1Aaad9deyW3Nabwn2hJzWMbnNOtqCXra3s7tNqG/Ho+H1YDlLdjUGKeVt6tKLhI9v7GxRiJ3bUA36/ZzFdb32ol/AAAAAPRETo5Xc+uEGi+M6qnek5rftSP/8GRDtf3FUq3pcduY2PM58r6t/x9zEHbwq0PHT72a0uNdvN9to7VFwouupfS+Jn6eebWlL/tsAQAAALRZG2jdfck7dOzVBqU1rjUnrxpW2Ml77TzGoZrxKbamvjqMD/8f4xDi9tPx7HRHxzn+/qyV2+Y96U1AthFEpRu7JG26CVxqwsYWKgAAAADt1QWfNesklMexh67t2sBrTXaN/EzNm1ysshkZY81a89qofxQZ45DxY17EOXJL80+MCUZgae9UaEvj9ZttTpUDpOeA6TGB027yMpcAAAAAdtmF8rVR6HypFfoltR9jyWawXRu1Zokb06zvf5w1xiHzh60beo3GSs1N8AkcdmxLMnDsRu2DxE0mBuXoG7vNB/MHAAAA0C81HgGXrves5bdX4WO39J6i6++aejdiSz2wJnxWo9YsNa+jYe2zxzgUOAGrDYGxsNCaTV6aLP6dbgz273Zn8fOnb2rMXZ+cG7EGAAAAALRyY+/bPVq/+6/FWmgKPFVtndWJLVmORUXGeDIodigYCGoKvoYyjRiQ02SNnP9rQz5ydXbcXhczyfMm1gAAAACAhTx+N3bc67e/T8Yn/x1s2WYpe6JeajcuWfLfYr3LE0YgzpFGyhpouNSYF017IgGwP89eYtDEtAIAAABAQ2xGjhvbuE35fA9cKx9zK1AHWu3NrE6PDc8ptvvASdjZWjOQ3G0Xnv2BbrDZleacBT3tuz/9gcACAAAAAADQYL2XcrzcGgbsaZH6RDU9mn5t1fXce76DdyW4dnf1Zi10jJr7JlmwT2s+cqSRm9Ps1d7igwYsAAAAAEC9vF2zuWutxmr5ab/UWvBd09bbzXerk2O24lOSGhcd46A0CK5oQWmn0Gj0Ybc2g7aFTdHXTpMqAAAAAADpPFvzheWln9isXadsBcbe6svkaszNFJ7fALRW9JPaulhmD05v2ip5B++1ccf8xNpE93L15qdz3CI+a2lMNI7zdYi9m3ftzD8AAAAAALySUr+lfEd7r1gLdcSRJyPHwFZ5pXQeM+dCui6ltv0XiYsbKjr/ejwek5IQk5LYk9MJz2UyNLbJgV6hsh1tBc7v88rSZmxs2n66KY59c6IvAAAAAEBLNdAkVFNpj7OmxpPw3GnUQXuIe6eOJx/alH/Tek1Zu66evMWDQXFytqDTXOmV2reRTwf/jTksp/H45L8TqN/HkCnjuwAAAAAAUCeP91CTTMZqh6mhMY3BboN3KvT9LdE3pkq+1HLMcdXDHBwJhBG+5vNKlra+U+Lne5/PmIUpReNNOFBZSqRSko2YRTDl2OzDCwAAAABAPd+SxhPzqFLnpuq8GdPB+t3W0rW9+nwMlQSKcYDN4AS3ZoDajwKwOBxv8E6Zc8MCTKIJAAAAACBVS4JtjSeB422V9bNG7z7zbPxj+Psp882xz8bO81YjHgwVHW17YRA0XcrOhdX9irgC+JzvwdCTxluFha8nW8JnAAAAAID81Tav6hOJJu+mXH9pjatXPNS30k9zW7On7c3Yq8/XYFColh201vgt71fUa5P33d27o7DGLL4kNwAAAAAA0nksNyfozJkm3Kj1txaM26f9bI587hCnBoO2tc3MpwPGf/RzrQawHoPi3qgeLPToCwAAAADknOSudTXmZhP/TA2fFy+EExjjCZ8RE35qzInBdxDXeIRga1Q7EloAAAAAoPYlF5bQuLW7CDejx57e/IF+zT01aqfVODUqzFb5mJNjQ691XgRV375CAievCxoDAAAAgHYuuyl8p/c6wKPGXur3ow3clEZvbz2MWk9zt3Zjmtg5nRoUpva5TYadp4eAU+oK3NaRbXJ13n4sQmMAAAAAqJnPvmsq0thFY8naJfaYqX0B7uj9mbERm2q6hzk0KszXc9Rs9pUOBGxenq735NBeJ4e+gn3G6TShLwAAAAA0kNdaqpE2NDY5hqmSHqX2iKUW+8Mo7OObgk0138McGhamhEAWxklgKROwp4Q5Lf0GWeu+s0Vo3Nt+T6XPcWpgLAAAAAAAFmo+K7UelNe4RnP367Goy3zW055r6+QxDpFOt3ViBFui87PA2j+P2CBd88qjBZ/pOYHc0BcAAAAAwE3NZ6UhR67/rxZen2SkyWvbrsbw/O7irZExvvKfv8b46/F4YBp1FyEvAW5SNmDpc9C+Erg50dirHUlflGFRBwAAAADwUS9syr9nsW6w2p+QfJKxRq1pTWcJfXvoUzTBUPn3W3lMuYdHO2o/wlJ7f2PvW31Ani1NzCUAAAAAgIuaL6bWY6sGXTandrk14jvUtbI6V9V1wPi6NUA0TV+MWt/SRFrDmlfJtbf4AAAAAAAA+Tw9J2/Xfjm717qrJ/uxModS46bXJmNfVXUdnDgexlde48noQqQZrFObdZuQllw99mFHNHkBAAAAANqq93hik/F6q+EnZR8hPsV/R1XbkzMDpPkla3yQHtQ3B4Fxa/A8tko2js8AAAAAALRZ10l9vtf6rwUmY3M3KY5tY9592M3JoUPQWJHRZqrs2BvzTfLUUDIFAAAAAAA+a+SvN/DsL/7NS91l+Xit1LY9+gmxw5i2A8aC8f1wnK0z3XrYK8nqnKaMd6vkG737CgAAAABAb72CPfzb5K2pxZY4hrHhmrK1On5z7jPEpUqcnAozGXTmXoxva1C/0Lg9edg64t1VcG9XygEAAAAAAI7W85PAZz/ZC9RR1GE6GtVs7k6V5n8z6I8ejvkPAz7oPlBIGd+7ZtvUqDNbmvOaFzJaCe6Tgk7YMAAAAAAAaNYrKS9x0nh6kjo+bV7RGbLx3OClsVI/cE0FjgFyGm+JfhXzGeYQAAAAAABApvY6cozYJu+R36fOy9PjSKNXc/uPUhpMlXWVZhT2d9HxSjd4p84cXnvv1Kmy8aWOmcVC3q609qnlQgsAAAAAAIBO/VWyJtuMjb3FunJrcDzWnuaeCh57NKr7oTEOEQGmFcOcOnNAzYCFtj41ngr4FHMLAAAAAAAgX395rMmknxStvcVhS7a5KWi9CdtTC08dR49xCHGbebcsTolxlg4q3rSWegHbZPicv5+b9GMWVveopckLAAAAAAAAJepNS/WllfOwdHdpTp9mU7Ynb73M5DGeEr/o7crIpDjOraDDgF17emYf45t/b2Gx1ToeAAAAAAC0zeb8+JZqpqmxscbW1K33UHaDvrsJfl7CnqyTdY6nDsSpYQS5hktz12YykWJPvTU9afICAAAAAAD0zVTpWKV7Kb31ZlKfZP/825/8982IPU0t+8ypYXEsCL0lOgbYC6pT5ndbu5qK7fS54AMAAAAAUAsA9gM/sYfyfa0enjwuck4n4RPZvAtU4HjPrmb89O+gZ0tbBVvi7lYAAAAAAADZWs8q3CCnc8wS/RX6M+COk+Nz3xwGzq9XM2jq1guyNZq7PcHdwQAAAAAAUDO3JlenFszZboAatG17mirou0mP8dSgE/cSrFj45b8/NWpDEzYDAAAAAACN5u3k/22S836kZ09Uf/8M/tcPY2sDGpSMZFI0vKkzB5w6dO6UcVsaz8Ti4d5XmD8AAAAAAHt5O3k6PGMPz5u8krV/aXvV7rG1yhieb6Pqsq+otUUDQRYkbOrIVbbUK3Hcrd2mzRDPAAAAAAB81HrS3/Faj4B9jr5oPfWF7FsnGrYU08THOBQWf6soTM+Ln6WrN5b2MgEo7S/YGgAAAACAXu7+qsascUcmxPcCSv/G1qAGKeMq1QuixpXTVlXfQVmgXKffjDgsDhAfxCYCCDhJFFn0AAAAAADs5e8AlpkKfX+L9I0JvxKLO1OBY6hxqiQSxmd3wYs9VorBs/0BCZIVHaS2+AAAAAAAAPiO5B3H1C31KNnjGBXmHVs5rpObHuZQUaSjToDhlde0hM41rk61tgBsjdsi5wsAAAAAAPCHPcQ38Bib7dqt9A1sz17+dVSX8ck8UPfm2d140L6r6TwYEMnjxFo/v0l4TCP+DQAAAAAAAKBSs5eu6SVouXmtTc4NYTX2pp4c2GcJ+/6q6/jlv5ugZIOXqwG2Fox3jpYzX2PhQLB1PketJBXEAQAAAAAAgL5qy56ZGH/U57T2F9ZgL+S7xcY4NGhgVq8aTZUC8lbJgWOPyaIEAAAAAAAAPVCqsUMd3S6W+yRTxvdq3GHche/8ejwepZqhu6FxSTZ4d+Fz2Y3bzGhEV882ZGm8Y8NzCAAAAAAAYJ3UmmxvbDwex9tL30BizHtlfZvryZwaNrraBjAmTpTlPWtGp8fGpuXHSXMXAAAAAAAgrZbaBT9P3SpDj/sNj8rH2juwp2LncmrU0fbKxxwNOQ2wOEmfD81dAAAAAACA/LrqWfP21b9R74IGI/Zke4wnBDJr9DR5WZhqJBPS3wEAAAAAAIBjtZbXmms3eiywxYg9lTuvU+OOpv34+VjJ2MHHwuTFZ14lEZ6TDAAAAAAAAPBTS1N32mDEnuyPcejAyfbge9Py0dB5QF+LE4spAAAAAAAA5NaUrb18HsoR0/NK7e/10MPcfz0ej1hn250bjtQ4W3+736hkyK3YDwsUAAAAAAAAwPGaem9sPLnsRvS1Ns6j57Q37i9/jfGzwfvqIC03pkqOs/UGr1Wntq4BjV0AAAAAAACA9rDSI5HsU3CznxOGyuLWvnrjxYhSt2kYcSJRmxnRFgAAAAAAAAAKc6SnkNp8HSN+A47rXVXPwago3oxudHo+OLV8wAUAAAAAAACA9sh551MuY6Fj0Ncop3XVHtvJiRGOgZd8Sep09HuSRkpQAQAAAAAAAIDeedcfKdkfo9dWXp8qPcyTA2EwPD1t0BcAAAAAAAAA4Bgt3KxGL0hGF1VdTw4NBsOT1aTGniLcvQsAAAAAAAAAHtkVjzU6Hpsn3PUwT86EAeYLAAAAAAAAAMASe4Hv12zu0gdyrsUJsU04sjct9ka0AwAAAAAAAAAowZEm7bPv9ayZJUYnx/yHwak4GLzOvO0HzmlsxIkBAAAAAAAAAHI50i/ZnY2H3p5xBsfnPgaahKNTR6e5CwAAAAAAAAAtQ+8DfT4R72EOX35IQvzRoKBSRiZ1RWN35pQjjgsAAAAAAAAA4IpXTcjSPa/d6PjdMkQOYDQ8ESUnyvM4a4NmAAAAAAAAAABtUarJW7pv1EsP7+U4fz0eD0wUAAAAAAAAAAAAwCEnJAAAAAAAAAAAAADwCQ1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKfQ4AUAAAAAAAAAAABwCg1eAAAAAAAAAAAAAKf8D3QQsB7Gm5c5AAAAAElFTkSuQmCC") !important;
    background-position: top center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
  }
  #main-content.ei-site-content > .ei-content-inner,
  #main-content.ei-site-content .ei-content-inner,
  #main-content.ei-site-content .ei-slate-content,
  #main-content.ei-site-content #content,
  #main-content.ei-site-content #content_body,
  #main-content.ei-site-content #slate-root,
  #main-content.ei-site-content #form_page,
  #main-content.ei-site-content .content,
  #main-content.ei-site-content #slate-root .content,
  #main-content.ei-site-content .form_container,
  #main-content.ei-site-content .form_page,
  #main-content.ei-site-content .c_site-content,
  #main-content.ei-site-content #slate-root form,
  #main-content.ei-site-content #slate-root table:not(.ei-production-table-shell),
  #main-content.ei-site-content .step,
  #main-content.ei-site-content .step_content {
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
  }
}
/* Nudge all Slate content down by about one line for breathing room under the
   header/dots. */
#main-content.ei-site-content .ei-slate-content {
  padding-top: 28px !important;
}

/* Center the page heading on the Login / Register pages (the element marked by
   the auth-intro script). Only those pages get this class, so other pages are
   unaffected. */
#main-content.ei-site-content .ei-auth-heading,
#main-content.ei-site-content .ei-auth-heading * {
  text-align: center !important;
}

/* Login intro line: match the register intro size (20px — the Slate default the
   register intro inherits). The JS may tag the login intro with either
   .ei-login-intro-copy or .ei-login-h3-intro, so cover both. */
body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro,
body.ei-login-page #main-content .ei-slate-content .ei-login-h3-intro *,
body.ei-login-page #main-content .ei-slate-content .ei-login-intro-copy,
body.ei-login-page #main-content .ei-slate-content .ei-login-intro-copy * {
  font-size: 20px !important;
  line-height: 1.45 !important;
}

/* Login / Register: clear any Slate wrapper background that sits behind the
   heading/intro so the dotted background shows through. The purple form box
   (.ei-production-table-shell) and form inputs keep their own styling. */
body.ei-login-page #main-content .ei-slate-content div,
body.ei-login-page #main-content .ei-slate-content p,
body.ei-login-page #main-content .ei-slate-content section,
body.ei-login-page #main-content .ei-slate-content header,
body.ei-login-page #main-content .ei-slate-content form,
body.ei-login-page #main-content .ei-slate-content table:not(.ei-production-table-shell),
body.ei-register-page #main-content .ei-slate-content div,
body.ei-register-page #main-content .ei-slate-content p,
body.ei-register-page #main-content .ei-slate-content section,
body.ei-register-page #main-content .ei-slate-content header,
body.ei-register-page #main-content .ei-slate-content form,
body.ei-register-page #main-content .ei-slate-content table:not(.ei-production-table-shell) {
  background-color: transparent !important;
  background-image: none !important;
}

/* Restore the purple form box: the auth-page transparenting above includes an
   id (#main-content) and so outranks the original purple rules — re-assert the
   purple here with higher specificity on the form box and its contents. */
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell table,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell tbody,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell tr,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell th,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell td,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .form_container,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .form_page,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .form_pages,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .form_question,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .form_responses,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .form_response,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .form_field,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .field,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .action,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .form_action,
body.ei-login-page #main-content .ei-slate-content .ei-production-table-shell .form_actions,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell table,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell tbody,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell tr,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell th,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell td,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_container,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_page,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_pages,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_question,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_responses,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_response,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_field,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .field,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .action,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_action,
body.ei-register-page #main-content .ei-slate-content .ei-production-table-shell .form_actions {
  background-color: #5f259f !important;
  background-image: none !important;
}

/* (gr_app dots blocker removed per request - let the canonical dotted
   background show on this page like every other page.) */

/* A little more weight on the Login / Register page headings. */
body.ei-login-page #main-content .ei-slate-content .ei-auth-heading,
body.ei-login-page #main-content .ei-slate-content .ei-auth-heading *,
body.ei-login-page #main-content .ei-slate-content h1,
body.ei-register-page #main-content .ei-slate-content .ei-auth-heading,
body.ei-register-page #main-content .ei-slate-content .ei-auth-heading *,
body.ei-register-page #main-content .ei-slate-content h1 {
  font-weight: 500 !important;
}

/* gr_app portal page: move the content block up a little (desktop + mobile),
   keeping clearance below the header drop shadow, and move the divider line up. */
body.ei-portal-page #main-content.ei-site-content {
  padding-top: 40px !important;
}
body.ei-portal-page #main-content.ei-site-content .ei-slate-content {
  padding-top: 14px !important;
}
body.ei-portal-page #main-content .ei-slate-content hr {
  margin-top: 18px !important;
  margin-bottom: 28px !important;
}

@media (max-width: 980px) {
  /* gr_app portal: lift content a little more on mobile. */
  body.ei-portal-page #main-content.ei-site-content { padding-top: 20px !important; }
  body.ei-portal-page #main-content.ei-site-content .ei-slate-content { padding-top: 6px !important; }
}

/* Widened from 980px to 1200px to match the other two footer-stacking
   breakpoints (see style.css's .ei-footer-grid media queries) -- this was
   the third, separately-patched footer block still left gated at 980px,
   which is why iPad Air landscape (1180px) still showed a plain white gap
   above the footer logo instead of this rule's uniform blue top edge. */
@media (max-width: 1200px) {
  /* Footer: stack into one uniform blue column so the top edge is a single
     straight line (removes the darker block on the right). */
  .ei-footer { background: var(--ei-blue) !important; }
  .ei-footer-grid { display: block !important; }
  .ei-footer-left,
  .ei-footer-right {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    background: var(--ei-blue) !important;
    float: none !important;
  }
  /* Footer logo: centered and moved up. (Header logo stays left.) */
  .ei-footer-left { padding-top: 0 !important; }
  .ei-footer-logo {
    text-align: center !important;
    margin-top: -6px !important;
  }
  /* Header: small left gutter so the logo sits near (not jammed against) the edge. */
  .ei-mainbar .ei-container {
    padding-left: 14px !important;
  }
}

@media (orientation: landscape) and (max-width: 1024px), screen and (orientation: landscape) and (max-height: 500px) {
  /* Landscape: gr_app program tables larger, matched, and full width. Targets
     ALL portal tables so it catches the program tables regardless of wrapper. */
  body.ei-portal-page #main-content .ei-slate-content table,
  body.ei-portal-page #main-content .ei-slate-content table td,
  body.ei-portal-page #main-content .ei-slate-content table th,
  body.ei-portal-page #main-content .ei-slate-content table td *,
  body.ei-portal-page #main-content .ei-slate-content table th * {
    font-size: 18px !important;
    line-height: 1.3 !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table td:first-child,
  body.ei-portal-page #main-content .ei-slate-content table th:first-child {
    width: 66% !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table td:nth-child(2),
  body.ei-portal-page #main-content .ei-slate-content table th:nth-child(2) {
    width: 34% !important;
  }
  /* Drop any empty trailing column that makes the first table look uneven. */
  body.ei-portal-page #main-content .ei-slate-content table td:nth-child(n+3),
  body.ei-portal-page #main-content .ei-slate-content table th:nth-child(n+3) {
    display: none !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .part_rows,
  body.ei-portal-page #main-content .ei-slate-content .part_rows .col-1,
  body.ei-portal-page #main-content .ei-slate-content .part_rows .col-2,
  body.ei-portal-page #main-content .ei-slate-content .part_rows_container .col-1,
  body.ei-portal-page #main-content .ei-slate-content .part_rows_container .col-2 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Login / Register: heading centered, intro line left-justified. */
body.ei-login-page #main-content .ei-slate-content h1,
body.ei-login-page #main-content .ei-slate-content h2,
body.ei-login-page #main-content .ei-slate-content h3,
body.ei-login-page #main-content .ei-slate-content .ei-auth-heading,
body.ei-register-page #main-content .ei-slate-content h1,
body.ei-register-page #main-content .ei-slate-content h2,
body.ei-register-page #main-content .ei-slate-content h3,
body.ei-register-page #main-content .ei-slate-content .ei-auth-heading {
  text-align: center !important;
}
body.ei-login-page #main-content .ei-slate-content .ei-replace-blue-block,
body.ei-register-page #main-content .ei-slate-content .ei-replace-blue-block {
  text-align: left !important;
}




/* =========================================================
   Baseline restore + content-up v4
   Source: perfect links.xslt
   - Header and footer are restored to the latest baseline.
   - Keeps only the earlier mobile-menu switch so nav never wraps.
   - Desktop Slate content is moved up about one line.
   ========================================================= */

/* Keep blue nav links from wrapping; switch to mobile header before wrap happens. */
@media screen and (min-width: 981px) and (max-width: 1320px) {
  .ei-topbar {
    height: auto !important;
    min-height: 48px !important;
  }

  .ei-topbar .ei-container {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
  }

  .ei-top-links {
    gap: 14px !important;
    flex-wrap: wrap !important;
  }

  .ei-mainbar,
  .ei-mainbar .ei-container {
    height: 86px !important;
  }

  .ei-mainbar .ei-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  .ei-logo {
    width: 210px !important;
    min-width: 210px !important;
    height: 86px !important;
    margin-right: auto !important;
  }

  .ei-logo img {
    width: 210px !important;
    max-width: 210px !important;
    height: auto !important;
  }

  .ei-nav {
    display: none !important;
  }

  .ei-mobile-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: auto !important;
    padding: 10px 13px !important;
    background: transparent !important;
    color: #fff !important;
    border: 2px solid #fff !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
  }

  .ei-mobile-panel {
    display: none !important;
    background: #fff !important;
    color: #000 !important;
    border-bottom: 4px solid var(--ei-yellow) !important;
  }

  .ei-mobile-panel.is-active {
    display: block !important;
  }

  .ei-mobile-panel ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-mobile-panel a {
    display: block !important;
    padding: 13px var(--ei-page-gutter) !important;
    color: #000 !important;
    font-weight: 900 !important;
  }

  .ei-mobile-panel li {
    border-bottom: 1px solid #ddd !important;
  }

  .ei-mobile-panel ul ul {
    padding-left: 18px !important;
    background: #f6f6f6 !important;
  }

  .ei-mobile-panel ul ul a {
    font-weight: 700 !important;
    font-size: 14px !important;
  }
}

/* Hard guarantee: any visible blue-nav text stays on one line. */
.ei-mainbar .ei-menu-link,
.ei-mainbar .ei-menu-link *,
.ei-mainbar .ei-apply,
.ei-mainbar .ei-apply *,
.ei-mainbar .ei-apply-button,
.ei-mainbar .ei-apply-button * {
  white-space: nowrap !important;
}

/* Desktop only: move Slate content up about one line. */
@media screen and (min-width: 981px) {
  #main-content.ei-site-content > .ei-content-inner > .ei-slate-content {
    position: relative !important;
    top: -18px !important;
    margin-bottom: -18px !important;
  }
}

/* Keep the fixed Forgot Your Password underline behavior without touching header/footer. */
html body.ei-login-page a.ei-forgot-password-link,
html body.ei-login-page a.ei-forgot-password-link:link,
html body.ei-login-page a.ei-forgot-password-link:visited,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link:link,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link:visited {
  position: relative !important;
  display: inline-block !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  padding-bottom: 3px !important;
  overflow: visible !important;
}

html body.ei-login-page a.ei-forgot-password-link::before,
html body.ei-login-page a.ei-forgot-password-link::after {
  pointer-events: none !important;
}

html body.ei-login-page a.ei-forgot-password-link::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 2px !important;
  background: #ffffff !important;
  display: block !important;
}

html body.ei-login-page a.ei-forgot-password-link::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 0 !important;
  height: 2px !important;
  background: #ffc600 !important;
  display: block !important;
  transition: width .26s ease !important;
}

html body.ei-login-page a.ei-forgot-password-link:hover,
html body.ei-login-page a.ei-forgot-password-link:focus {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

html body.ei-login-page a.ei-forgot-password-link:hover::after,
html body.ei-login-page a.ei-forgot-password-link:focus::after {
  width: 100% !important;
}



/* =========================================================
   v5 targeted fixes
   - When desktop header switches to mobile design, footer also switches
     to mobile-style layout with social links at the bottom.
   - Forgot Your Password hover underline forced to Erikson yellow.
   ========================================================= */

/* Same breakpoint as the early mobile header switch. */
@media screen and (min-width: 981px) and (max-width: 1320px) {
  .ei-footer {
    background: var(--ei-blue) !important;
  }

  .ei-footer-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  .ei-footer-left,
  .ei-footer-right {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    background: var(--ei-blue) !important;
    padding-left: 50px !important;
    padding-right: 50px !important;
    text-align: left !important;
  }

  .ei-footer-left {
    padding-top: 42px !important;
    padding-bottom: 44px !important;
  }

  .ei-footer-right {
    padding-top: 38px !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
  }

  .ei-footer-menu-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .ei-footer-menu-grid > div {
    display: contents !important;
  }

  .ei-footer-col {
    display: block !important;
    width: 100% !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col h3 {
    margin: 0 0 7px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col ul {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col li {
    display: block !important;
    margin: 0 0 7px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-col a {
    display: inline !important;
    line-height: 1.28 !important;
  }

  /* Move social links to the bottom of the mobile-style footer. */
  .ei-footer-right .ei-social {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    order: 99 !important;
    margin: 18px 0 26px 0 !important;
    padding: 18px 0 0 0 !important;
    border-top: 1px solid rgba(255,255,255,.28) !important;
    text-align: center !important;
  }

  .ei-footer-right .ei-social ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-right .ei-social li {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-right .ei-social a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 30px !important;
    height: 30px !important;
    font-size: 22px !important;
  }

  .ei-footer-bottom,
  .ei-footer-bottom-inner {
    display: none !important;
  }

  .ei-mobile-footer-legal-final,
  .ei-mobile-legal,
  .ei-mobile-legal-dynamic {
    display: block !important;
    width: 100% !important;
    padding: 0 50px 28px 50px !important;
    background: var(--ei-blue) !important;
    color: #fff !important;
    text-align: center !important;
  }

  .ei-mobile-footer-legal-final ul,
  .ei-mobile-legal ul,
  .ei-mobile-legal-dynamic ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 10px 16px !important;
    list-style: none !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
  }

  .ei-mobile-footer-legal-final li,
  .ei-mobile-legal li,
  .ei-mobile-legal-dynamic li {
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-mobile-footer-legal-final a,
  .ei-mobile-legal a,
  .ei-mobile-legal-dynamic a {
    color: #fff !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    line-height: 18px !important;
  }

  .ei-mobile-footer-legal-final p,
  .ei-mobile-legal p,
  .ei-mobile-legal-dynamic p {
    color: #fff !important;
    font-size: 11px !important;
    line-height: 15px !important;
    margin: 0 !important;
    text-align: center !important;
  }
}

/* Forgot Your Password: force the animated hover line to be yellow. */
html body.ei-login-page a.ei-forgot-password-link::after,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link::after {
  background-color: #ffc600 !important;
  background: #ffc600 !important;
  border-color: #ffc600 !important;
}

html body.ei-login-page a.ei-forgot-password-link:hover::before,
html body.ei-login-page a.ei-forgot-password-link:focus::before,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link:hover::before,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link:focus::before {
  background-color: #ffc600 !important;
  background: #ffc600 !important;
}

html body.ei-login-page a.ei-forgot-password-link:hover::after,
html body.ei-login-page a.ei-forgot-password-link:focus::after,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link:hover::after,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link:focus::after {
  width: 100% !important;
  background-color: #ffc600 !important;
  background: #ffc600 !important;
}



/* =========================================================
   v6 targeted fixes
   - At every mobile-header breakpoint, keep my.Erikson Login and Donate visible
     in the top black navigation bar.
   - At desktop-fluid mobile-footer breakpoint, put social links at the bottom
     and restore the Legal Policies / bottom legal links.
   - Force Forgot Your Password animated underline to Erikson yellow.
   ========================================================= */

@media screen and (max-width: 1320px) {
  .ei-topbar {
    height: auto !important;
    min-height: 48px !important;
  }

  .ei-topbar .ei-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 10px 14px !important;
  }

  .ei-topbar .ei-top-links {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    margin-left: auto !important;
  }

  .ei-topbar .ei-top-links li {
    display: none !important;
  }

  .ei-topbar .ei-top-links li:nth-child(5),
  .ei-topbar .ei-top-links li:nth-child(6),
  .ei-topbar .ei-top-links li.ei-keep-mobile-top-link {
    display: inline-flex !important;
    align-items: center !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .ei-topbar .ei-top-links li:nth-child(5) a,
  .ei-topbar .ei-top-links li:nth-child(6) a,
  .ei-topbar .ei-top-links li.ei-keep-mobile-top-link a {
    display: inline-flex !important;
    align-items: center !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
  }

  .ei-topbar .ei-top-links li:nth-child(5) a:hover,
  .ei-topbar .ei-top-links li:nth-child(5) a:focus,
  .ei-topbar .ei-top-links li:nth-child(6) a:hover,
  .ei-topbar .ei-top-links li:nth-child(6) a:focus,
  .ei-topbar .ei-top-links li.ei-keep-mobile-top-link a:hover,
  .ei-topbar .ei-top-links li.ei-keep-mobile-top-link a:focus {
    color: var(--ei-yellow) !important;
    text-decoration: none !important;
  }
}

@media screen and (max-width: 520px) {
  .ei-topbar .ei-container {
    align-items: flex-start !important;
  }

  .ei-topbar .ei-top-links {
    width: 100% !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    padding-top: 2px !important;
  }
}

@media screen and (min-width: 981px) and (max-width: 1320px) {
  .ei-footer-right {
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
  }

  .ei-footer-menu-grid {
    order: 1 !important;
  }

  .ei-footer-right .ei-social,
  .ei-footer-right > .ei-social,
  .ei-footer-menu-grid + .ei-social {
    order: 98 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 0 0 !important;
    padding: 20px 0 18px 0 !important;
    border-top: 1px solid rgba(255,255,255,.28) !important;
    text-align: center !important;
  }

  .ei-footer-right .ei-social ul,
  .ei-footer-right > .ei-social ul,
  .ei-footer-menu-grid + .ei-social ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-right .ei-social li,
  .ei-footer-right > .ei-social li,
  .ei-footer-menu-grid + .ei-social li {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-mobile-switch-legal-v6 {
    order: 99 !important;
    display: block !important;
    width: calc(100% + 100px) !important;
    margin: 0 -50px 0 -50px !important;
    padding: 22px 50px 24px 50px !important;
    background: #000000 !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  .ei-footer-mobile-switch-legal-v6 ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px 18px !important;
    width: 100% !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-mobile-switch-legal-v6 li {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-mobile-switch-legal-v6 a {
    display: inline-block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
  }

  .ei-footer-mobile-switch-legal-v6 a:hover,
  .ei-footer-mobile-switch-legal-v6 a:focus {
    color: #ffffff !important;
    text-decoration: underline !important;
    text-decoration-color: var(--ei-yellow) !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
  }

  .ei-footer-mobile-switch-legal-v6 p {
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    font-size: 11px !important;
    line-height: 15px !important;
    font-weight: 700 !important;
    text-align: center !important;
  }
}

html body.ei-login-page a.ei-forgot-password-link,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link {
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-color: transparent !important;
  background-image: none !important;
}

html body.ei-login-page a.ei-forgot-password-link::before,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link::before {
  background: rgba(255,255,255,.85) !important;
  background-color: rgba(255,255,255,.85) !important;
  z-index: 1 !important;
}

html body.ei-login-page a.ei-forgot-password-link::after,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 0 !important;
  height: 3px !important;
  display: block !important;
  background: #ffc600 !important;
  background-color: #ffc600 !important;
  border: 0 !important;
  box-shadow: none !important;
  z-index: 3 !important;
  transition: width .26s ease !important;
}

html body.ei-login-page a.ei-forgot-password-link:hover::after,
html body.ei-login-page a.ei-forgot-password-link:focus::after,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link:hover::after,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link:focus::after {
  width: 100% !important;
  background: #ffc600 !important;
  background-color: #ffc600 !important;
}

html body.ei-login-page a.ei-forgot-password-link:hover,
html body.ei-login-page a.ei-forgot-password-link:focus,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link:hover,
html body.ei-login-page #main-content .ei-production-table-shell a.ei-forgot-password-link:focus {
  text-decoration: none !important;
  text-decoration-color: #ffc600 !important;
  box-shadow: inset 0 -3px 0 #ffc600 !important;
}



/* =========================================================
   v7 targeted fixes
   - Mobile-header view: my.Erikson Login and Donate always visible
     in the top black bar, including mobile portrait.
   - Desktop-fluid mobile footer: bottom legal links use mobile-style
     horizontal wrapping and social hover is restored.
   - All mobile views: footer logo is larger.
   ========================================================= */

/* Mobile header/top black bar utility links. Use a dedicated utility group
   so old mobile rules cannot hide the links. */
.ei-mobile-top-utility-v7 {
  display: none !important;
}

@media screen and (max-width: 1320px) {


  .ei-mobile-top-utility-v7 {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
    margin-left: auto !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-mobile-top-utility-v7 a,
  .ei-mobile-top-utility-v7 a:link,
  .ei-mobile-top-utility-v7 a:visited {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
  }

  .ei-mobile-top-utility-v7 a:hover,
  .ei-mobile-top-utility-v7 a:focus {
    color: var(--ei-yellow) !important;
    -webkit-text-fill-color: var(--ei-yellow) !important;
    text-decoration: none !important;
  }

  .ei-mobile-top-utility-v7 a:hover i,
  .ei-mobile-top-utility-v7 a:focus i {
    color: var(--ei-yellow) !important;
  }
}

@media screen and (max-width: 520px) {
  .ei-mobile-top-utility-v7 {
    width: 100% !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    padding-top: 2px !important;
  }
}

/* All mobile/mobile-style footer views: make the top footer logo bigger. */
@media screen and (max-width: 1320px) {
  .ei-footer-logo a,
  .ei-footer-logo img {
    width: 292px !important;
    max-width: 100% !important;
    height: auto !important;
  }

  .ei-footer-logo {
    margin-bottom: 28px !important;
  }
}

/* Desktop-fluid mobile-footer breakpoint: match mobile legal-link layout
   and keep the social icons immediately above the bottom legal block. */
@media screen and (min-width: 981px) and (max-width: 1320px) {
  .ei-footer-right {
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
  }

  .ei-footer-menu-grid {
    order: 1 !important;
  }

  .ei-footer-right .ei-social,
  .ei-footer-right > .ei-social,
  .ei-footer-menu-grid + .ei-social {
    order: 98 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 0 0 !important;
    padding: 20px 0 18px 0 !important;
    border-top: 1px solid rgba(255,255,255,.28) !important;
    text-align: center !important;
  }

  .ei-footer-right .ei-social ul,
  .ei-footer-right > .ei-social ul,
  .ei-footer-menu-grid + .ei-social ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-right .ei-social li,
  .ei-footer-right > .ei-social li,
  .ei-footer-menu-grid + .ei-social li {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-right .ei-social a,
  .ei-footer-right .ei-social a:link,
  .ei-footer-right .ei-social a:visited,
  .ei-footer-right > .ei-social a,
  .ei-footer-menu-grid + .ei-social a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    color: #ffffff !important;
    background: transparent !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    background-image: none !important;
    transition: background-color .25s ease, color .22s ease !important;
  }

  .ei-footer-right .ei-social a i,
  .ei-footer-right .ei-social a svg,
  .ei-footer-right .ei-social a span {
    color: currentColor !important;
    fill: currentColor !important;
    transition: color .22s ease, fill .22s ease !important;
  }

  .ei-footer-right .ei-social a:hover,
  .ei-footer-right .ei-social a:focus,
  .ei-footer-right > .ei-social a:hover,
  .ei-footer-right > .ei-social a:focus,
  .ei-footer-menu-grid + .ei-social a:hover,
  .ei-footer-menu-grid + .ei-social a:focus {
    width: 46px !important;
    height: 46px !important;
    background: #000000 !important;
    background-color: #000000 !important;
    color: var(--ei-yellow) !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    transform: none !important;
  }

  .ei-footer-right .ei-social a:hover i,
  .ei-footer-right .ei-social a:focus i,
  .ei-footer-right .ei-social a:hover svg,
  .ei-footer-right .ei-social a:focus svg,
  .ei-footer-right .ei-social a:hover span,
  .ei-footer-right .ei-social a:focus span {
    color: var(--ei-yellow) !important;
    fill: var(--ei-yellow) !important;
  }

  .ei-footer-mobile-switch-legal-v6,
  .ei-footer-mobile-switch-legal-v7 {
    order: 99 !important;
    display: block !important;
    width: calc(100% + 100px) !important;
    margin: 0 -50px 0 -50px !important;
    padding: 22px 50px 24px 50px !important;
    background: #000000 !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  .ei-footer-mobile-switch-legal-v6 ul,
  .ei-footer-mobile-switch-legal-v7 ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px 18px !important;
    width: 100% !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-mobile-switch-legal-v6 li,
  .ei-footer-mobile-switch-legal-v7 li {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-mobile-switch-legal-v6 a,
  .ei-footer-mobile-switch-legal-v7 a {
    display: inline-block !important;
    width: auto !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: normal !important;
  }

  .ei-footer-mobile-switch-legal-v6 a:after,
  .ei-footer-mobile-switch-legal-v7 a:after {
    content: "" !important;
    display: none !important;
  }

  .ei-footer-mobile-switch-legal-v6 a:hover,
  .ei-footer-mobile-switch-legal-v6 a:focus,
  .ei-footer-mobile-switch-legal-v7 a:hover,
  .ei-footer-mobile-switch-legal-v7 a:focus {
    color: #ffffff !important;
    text-decoration: underline !important;
    text-decoration-color: var(--ei-yellow) !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
  }

  .ei-footer-mobile-switch-legal-v6 p,
  .ei-footer-mobile-switch-legal-v7 p {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    text-align: center !important;
  }
}



/* =========================================================
   v8 targeted fixes
   - Mobile portrait: my.Erikson Login and Donate are visible in
     the top black navigation bar through static markup + JS fallback.
   - Desktop-fluid footer: legal links match the mobile layout instead of
     appearing bold/stacked.
   - Desktop-fluid footer: restored social icon hover after social moves
     to the bottom.
   - All mobile/mobile-style views: top footer logo is larger.
   ========================================================= */

/* Hide the older JS-injected v7 utility group so links do not duplicate. */
.ei-mobile-top-utility-v7 {
  display: none !important;
}

/* Static mobile utility links in black topbar. */
.ei-mobile-top-utility-v8 {
  display: none !important;
}

@media screen and (max-width: 1320px) {
  .ei-topbar .ei-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 10px 14px !important;
  }

  .ei-topbar .ei-top-links {
    display: none !important;
  }

  .ei-mobile-top-utility-v8 {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
    margin-left: auto !important;
    padding: 0 !important;
    list-style: none !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .ei-mobile-top-utility-v8 a,
  .ei-mobile-top-utility-v8 a:link,
  .ei-mobile-top-utility-v8 a:visited {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    background: transparent !important;
    background-image: none !important;
  }

  .ei-mobile-top-utility-v8 a i {
    color: #0096c7 !important;
    -webkit-text-fill-color: #0096c7 !important;
  }

  .ei-mobile-top-utility-v8 a:hover,
  .ei-mobile-top-utility-v8 a:focus {
    color: var(--ei-yellow) !important;
    -webkit-text-fill-color: var(--ei-yellow) !important;
    text-decoration: none !important;
  }
}

@media screen and (max-width: 520px) {
  .ei-mobile-top-utility-v8 {
    width: 100% !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    padding-top: 2px !important;
  }
}

/* All mobile/mobile-style footer views: larger footer logo. */
@media screen and (max-width: 1320px) {
  .ei-footer-logo a,
  .ei-footer-logo img {
    width: 310px !important;
    max-width: calc(100vw - 48px) !important;
    min-width: 0 !important;
    height: auto !important;
  }

  .ei-footer-logo {
    margin-bottom: 30px !important;
  }
}

/* Desktop-fluid footer: use one clean mobile-style legal block. */
@media screen and (min-width: 981px) and (max-width: 1320px) {
  .ei-footer-right {
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
  }

  .ei-footer-menu-grid {
    order: 1 !important;
  }

  /* Hide older alternate legal blocks in this breakpoint so only the clean block shows. */
  .ei-footer-mobile-switch-legal-v6:not(.ei-footer-mobile-switch-legal-v8),
  .ei-footer-mobile-switch-legal-v7:not(.ei-footer-mobile-switch-legal-v8),
  .ei-footer-right > .ei-mobile-legal-dynamic,
  .ei-footer-right > .ei-mobile-legal,
  .ei-footer-right > .ei-mobile-footer-legal-final {
    display: none !important;
  }

  .ei-footer-right .ei-social,
  .ei-footer-right > .ei-social,
  .ei-footer-menu-grid + .ei-social,
  .ei-footer-social-bottom-v8 {
    order: 98 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 0 0 !important;
    padding: 20px 0 18px 0 !important;
    border-top: 1px solid rgba(255,255,255,.28) !important;
    text-align: center !important;
  }

  .ei-footer-right .ei-social ul,
  .ei-footer-right > .ei-social ul,
  .ei-footer-menu-grid + .ei-social ul,
  .ei-footer-social-bottom-v8 ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-right .ei-social li,
  .ei-footer-right > .ei-social li,
  .ei-footer-menu-grid + .ei-social li,
  .ei-footer-social-bottom-v8 li {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-right .ei-social a,
  .ei-footer-right .ei-social a:link,
  .ei-footer-right .ei-social a:visited,
  .ei-footer-social-bottom-v8 a,
  .ei-footer-social-bottom-v8 a:link,
  .ei-footer-social-bottom-v8 a:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    color: #ffffff !important;
    background: transparent !important;
    background-color: transparent !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    background-image: none !important;
    box-shadow: none !important;
    transition: background-color .25s ease, color .22s ease, width .22s ease, height .22s ease !important;
  }

  .ei-footer-right .ei-social a:after,
  .ei-footer-social-bottom-v8 a:after {
    content: "" !important;
    display: none !important;
  }

  .ei-footer-right .ei-social a i,
  .ei-footer-right .ei-social a svg,
  .ei-footer-right .ei-social a span,
  .ei-footer-social-bottom-v8 a i,
  .ei-footer-social-bottom-v8 a svg,
  .ei-footer-social-bottom-v8 a span {
    color: currentColor !important;
    fill: currentColor !important;
    transition: color .22s ease, fill .22s ease !important;
  }

  .ei-footer-right .ei-social a:hover,
  .ei-footer-right .ei-social a:focus,
  .ei-footer-social-bottom-v8 a:hover,
  .ei-footer-social-bottom-v8 a:focus {
    width: 46px !important;
    height: 46px !important;
    background: #000000 !important;
    background-color: #000000 !important;
    color: var(--ei-yellow) !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    transform: none !important;
    box-shadow: none !important;
  }

  .ei-footer-right .ei-social a:hover i,
  .ei-footer-right .ei-social a:focus i,
  .ei-footer-right .ei-social a:hover svg,
  .ei-footer-right .ei-social a:focus svg,
  .ei-footer-right .ei-social a:hover span,
  .ei-footer-right .ei-social a:focus span,
  .ei-footer-social-bottom-v8 a:hover i,
  .ei-footer-social-bottom-v8 a:focus i,
  .ei-footer-social-bottom-v8 a:hover svg,
  .ei-footer-social-bottom-v8 a:focus svg,
  .ei-footer-social-bottom-v8 a:hover span,
  .ei-footer-social-bottom-v8 a:focus span {
    color: var(--ei-yellow) !important;
    fill: var(--ei-yellow) !important;
  }

  .ei-footer-mobile-switch-legal-v8 {
    order: 99 !important;
    display: block !important;
    width: calc(100% + 100px) !important;
    margin: 0 -50px 0 -50px !important;
    padding: 22px 50px 24px 50px !important;
    background: #000000 !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  .ei-footer-mobile-switch-legal-v8 ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px 18px !important;
    width: 100% !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-mobile-switch-legal-v8 li {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-mobile-switch-legal-v8 a {
    display: inline-block !important;
    width: auto !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: normal !important;
  }

  .ei-footer-mobile-switch-legal-v8 a:after {
    content: "" !important;
    display: none !important;
  }

  .ei-footer-mobile-switch-legal-v8 a:hover,
  .ei-footer-mobile-switch-legal-v8 a:focus {
    color: #ffffff !important;
    text-decoration: underline !important;
    text-decoration-color: var(--ei-yellow) !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
  }

  .ei-footer-mobile-switch-legal-v8 p {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    text-align: center !important;
  }
}



/* =========================================================
   v9 targeted fixes
   - iPhone portrait: keep my.Erikson Login and Donate visible in
     the black top bar by allowing the black bar to grow.
   - iPad/touch-tablet: force the same mobile layout treatment as phones.
   - Desktop-fluid footer: restore social hover after icons move to bottom.
   ========================================================= */

/* Use the v9 static utility links; hide older injected versions to prevent duplicates. */
.ei-mobile-top-utility-v7,
.ei-mobile-top-utility-v8 {
  display: none !important;
}

.ei-mobile-top-utility-v9 {
  display: none !important;
}

/* Mobile header breakpoint and touch-tablet/iPad treatment. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-topbar {
    height: auto !important;
    min-height: 58px !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
    background: #000000 !important;
    box-shadow: none !important;
  }

  .ei-topbar:after,
  .ei-topbar .ei-container:after {
    display: none !important;
    content: "" !important;
  }

  .ei-topbar .ei-container {
    height: auto !important;
    min-height: 58px !important;
    line-height: normal !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 8px 12px !important;
    padding-top: 9px !important;
    padding-bottom: 9px !important;
    background: #000000 !important;
    overflow: visible !important;
  }

  .ei-topbar .ei-top-links {
    display: none !important;
  }

  .ei-mobile-top-utility-v9 {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 14px !important;
    margin-left: auto !important;
    padding: 0 !important;
    list-style: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 10 !important;
  }

  .ei-mobile-top-utility-v9 a,
  .ei-mobile-top-utility-v9 a:link,
  .ei-mobile-top-utility-v9 a:visited {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: "Gotham A", "Gotham B", Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    background: transparent !important;
    background-image: none !important;
  }

  .ei-mobile-top-utility-v9 a i {
    color: #0096c7 !important;
    -webkit-text-fill-color: #0096c7 !important;
    margin-right: 3px !important;
  }

  .ei-mobile-top-utility-v9 a:hover,
  .ei-mobile-top-utility-v9 a:focus {
    color: var(--ei-yellow) !important;
    -webkit-text-fill-color: var(--ei-yellow) !important;
    text-decoration: none !important;
  }

  .ei-mobile-top-utility-v9 a:hover i,
  .ei-mobile-top-utility-v9 a:focus i {
    color: var(--ei-yellow) !important;
    -webkit-text-fill-color: var(--ei-yellow) !important;
  }

  /* iPad/touch tablets use the phone-style header. */
  body.ei-touch-mobile-v9 .ei-mainbar,
  body.ei-touch-mobile-v9 .ei-mainbar .ei-container {
    height: 86px !important;
    min-height: 86px !important;
  }

  body.ei-touch-mobile-v9 .ei-mainbar .ei-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding-left: 14px !important;
  }

  body.ei-touch-mobile-v9 .ei-mainbar .ei-nav,
  body.ei-touch-mobile-v9 .ei-mainbar .ei-menu,
  body.ei-touch-mobile-v9 .ei-mainbar .ei-menu-item,
  body.ei-touch-mobile-v9 .ei-mainbar .ei-menu-link,
  body.ei-touch-mobile-v9 .ei-mainbar .ei-apply {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body.ei-touch-mobile-v9 .ei-mobile-toggle {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: auto !important;
  }

  body.ei-touch-mobile-v9 .ei-logo,
  body.ei-touch-mobile-v9 .ei-logo img {
    width: 216px !important;
    min-width: 216px !important;
    max-width: 216px !important;
    height: auto !important;
  }
}

/* Tiny portrait phones: let the utility links sit on their own line inside the black bar. */
@media screen and (max-width: 520px) {
  .ei-topbar .ei-container {
    align-items: flex-start !important;
  }

  .ei-mobile-top-utility-v9 {
    width: 100% !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    padding-top: 3px !important;
    gap: 16px !important;
  }
}

/* iPad/touch tablets: use phone-style footer and content behavior. */
@media screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  body.ei-touch-mobile-v9 .ei-footer {
    background: var(--ei-blue) !important;
    margin-top: 0 !important;
    overflow: visible !important;
  }

  body.ei-touch-mobile-v9 .ei-footer-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  body.ei-touch-mobile-v9 .ei-footer-left,
  body.ei-touch-mobile-v9 .ei-footer-right {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    background: var(--ei-blue) !important;
    float: none !important;
    padding-left: 26px !important;
    padding-right: 26px !important;
    text-align: left !important;
  }

  body.ei-touch-mobile-v9 .ei-footer-left {
    padding-top: 42px !important;
    padding-bottom: 44px !important;
  }

  body.ei-touch-mobile-v9 .ei-footer-right {
    padding-top: 38px !important;
    padding-bottom: 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }

  body.ei-touch-mobile-v9 .ei-footer-menu-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.ei-touch-mobile-v9 .ei-footer-menu-grid > div {
    display: contents !important;
  }

  body.ei-touch-mobile-v9 .ei-footer-col {
    display: block !important;
    width: 100% !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
  }

  body.ei-touch-mobile-v9 .ei-footer-right .ei-social {
    order: 98 !important;
    position: static !important;
    right: auto !important;
    top: auto !important;
    display: block !important;
    width: 100% !important;
    margin: 18px 0 0 0 !important;
    padding: 18px 0 0 0 !important;
    border-top: 1px solid rgba(255,255,255,.28) !important;
    text-align: center !important;
  }

  body.ei-touch-mobile-v9 .ei-footer-right .ei-social ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* All mobile/mobile-style views: larger top footer logo. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-footer-logo a,
  .ei-footer-logo img {
    width: 310px !important;
    max-width: calc(100vw - 48px) !important;
    min-width: 0 !important;
    height: auto !important;
  }

  .ei-footer-logo {
    margin-bottom: 30px !important;
  }
}

/* Desktop-fluid footer: social icons at bottom must keep hover effect. */
@media screen and (min-width: 981px) and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-footer-right .ei-social,
  .ei-footer-right > .ei-social,
  .ei-footer-menu-grid + .ei-social,
  .ei-footer-social-bottom-v8,
  .ei-footer-social-bottom-v9 {
    order: 98 !important;
    position: static !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 0 0 !important;
    padding: 20px 0 18px 0 !important;
    border-top: 1px solid rgba(255,255,255,.28) !important;
    text-align: center !important;
  }

  .ei-footer-right .ei-social ul,
  .ei-footer-social-bottom-v9 ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-right .ei-social li,
  .ei-footer-social-bottom-v9 li {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-right .ei-social a,
  .ei-footer-right .ei-social a:link,
  .ei-footer-right .ei-social a:visited,
  .ei-footer-social-bottom-v9 a,
  .ei-footer-social-bottom-v9 a:link,
  .ei-footer-social-bottom-v9 a:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    color: #ffffff !important;
    background: transparent !important;
    background-color: transparent !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    background-image: none !important;
    box-shadow: none !important;
    transition: background-color .25s ease, color .22s ease, width .22s ease, height .22s ease !important;
  }

  .ei-footer-right .ei-social a:after,
  .ei-footer-social-bottom-v9 a:after {
    content: "" !important;
    display: none !important;
  }

  .ei-footer-right .ei-social a i,
  .ei-footer-right .ei-social a svg,
  .ei-footer-right .ei-social a span,
  .ei-footer-social-bottom-v9 a i,
  .ei-footer-social-bottom-v9 a svg,
  .ei-footer-social-bottom-v9 a span {
    color: currentColor !important;
    fill: currentColor !important;
    transition: color .22s ease, fill .22s ease !important;
  }

  .ei-footer-right .ei-social a:hover,
  .ei-footer-right .ei-social a:focus,
  .ei-footer-social-bottom-v9 a:hover,
  .ei-footer-social-bottom-v9 a:focus {
    width: 46px !important;
    height: 46px !important;
    background: #000000 !important;
    background-color: #000000 !important;
    color: var(--ei-yellow) !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    transform: none !important;
    box-shadow: none !important;
  }

  .ei-footer-right .ei-social a:hover i,
  .ei-footer-right .ei-social a:focus i,
  .ei-footer-right .ei-social a:hover svg,
  .ei-footer-right .ei-social a:focus svg,
  .ei-footer-right .ei-social a:hover span,
  .ei-footer-right .ei-social a:focus span,
  .ei-footer-social-bottom-v9 a:hover i,
  .ei-footer-social-bottom-v9 a:focus i,
  .ei-footer-social-bottom-v9 a:hover svg,
  .ei-footer-social-bottom-v9 a:focus svg,
  .ei-footer-social-bottom-v9 a:hover span,
  .ei-footer-social-bottom-v9 a:focus span {
    color: var(--ei-yellow) !important;
    fill: var(--ei-yellow) !important;
  }
}



/* =========================================================
   v10 targeted fixes
   - iPhone portrait: my.Erikson Login and Donate stay on the same
     black-bar line as Search.
   - Mobile devices: remove duplicated social icon block.
   - iPad landscape: remove footer white seam and make bottom legal
     area the same blue as the footer.
   ========================================================= */

/* Phone portrait: keep Search + my.Erikson Login + Donate on one line. */
@media screen and (max-width: 520px) {
  .ei-topbar {
    height: auto !important;
    min-height: 48px !important;
    overflow: visible !important;
    padding-bottom: 0 !important;
  }

  .ei-topbar .ei-container {
    height: auto !important;
    min-height: 48px !important;
    line-height: normal !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    overflow: visible !important;
  }

  .ei-search-open {
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
    line-height: 16px !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 11px !important;
    letter-spacing: .08em !important;
    white-space: nowrap !important;
  }

  .ei-search-open i {
    margin-right: 3px !important;
    font-size: 11px !important;
  }

  .ei-mobile-top-utility-v9 {
    display: flex !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    justify-content: flex-end !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    margin-left: 4px !important;
    padding-top: 0 !important;
    overflow: visible !important;
  }

  .ei-mobile-top-utility-v9 a,
  .ei-mobile-top-utility-v9 a:link,
  .ei-mobile-top-utility-v9 a:visited {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0 !important;
    font-size: 10.5px !important;
    line-height: 15px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
  }

  .ei-mobile-top-utility-v9 a i {
    display: none !important;
  }
}

/* Slightly roomier small phones can keep the blue icons. */
@media screen and (min-width: 390px) and (max-width: 520px) {
  .ei-mobile-top-utility-v9 a i {
    display: inline-block !important;
    margin-right: 2px !important;
    font-size: 10px !important;
  }

  .ei-mobile-top-utility-v9 a,
  .ei-mobile-top-utility-v9 a:link,
  .ei-mobile-top-utility-v9 a:visited {
    font-size: 11px !important;
  }
}

/* Mobile/touch views: keep only one social icon set. The old mobile-extra
   icons duplicate the main footer social icons once we move them to the bottom. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-mobile-footer-extra .ei-mobile-social,
  .ei-mobile-social.ei-duplicate-social-hidden-v10 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* iPad landscape: the footer should be one continuous blue mobile footer,
   with no white seam and no black bottom legal background. */
@media screen and (orientation: landscape) and (hover: none) and (pointer: coarse) and (min-width: 768px) and (max-width: 1366px) {
  .ei-footer,
  .ei-footer-grid,
  .ei-footer-left,
  .ei-footer-right,
  .ei-mobile-footer-extra,
  .ei-mobile-legal,
  .ei-mobile-legal-dynamic,
  .ei-mobile-footer-legal-final,
  .ei-footer-mobile-switch-legal-v6,
  .ei-footer-mobile-switch-legal-v7,
  .ei-footer-mobile-switch-legal-v8,
  .ei-footer-mobile-switch-legal-v9 {
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
  }

  .ei-footer,
  .ei-footer-grid,
  .ei-footer-left,
  .ei-footer-right {
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    gap: 0 !important;
  }

  .ei-footer-left {
    margin-bottom: 0 !important;
    padding-bottom: 34px !important;
  }

  .ei-footer-right {
    margin-top: 0 !important;
    padding-top: 34px !important;
    border-top: 0 !important;
  }

  .ei-footer-right:before,
  .ei-footer-right:after,
  .ei-footer-left:before,
  .ei-footer-left:after,
  .ei-footer-grid:before,
  .ei-footer-grid:after {
    display: none !important;
    content: "" !important;
  }

  .ei-footer-right .ei-social {
    border-top: 0 !important;
  }

  .ei-mobile-legal,
  .ei-mobile-legal-dynamic,
  .ei-mobile-footer-legal-final,
  .ei-footer-mobile-switch-legal-v6,
  .ei-footer-mobile-switch-legal-v7,
  .ei-footer-mobile-switch-legal-v8,
  .ei-footer-mobile-switch-legal-v9 {
    color: #ffffff !important;
    padding-top: 20px !important;
    padding-bottom: 26px !important;
  }
}



/* =========================================================
   v11 targeted mobile cleanup
   - Remove the extra blue block under the mobile header/logo.
   - Put the social icon divider/icons above the final legal-link block.
   - Move the mobile footer logo/content up a couple of lines.
   ========================================================= */

/* All mobile/mobile-style views: remove the extra blue block below the header. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-header,
  .ei-mainbar {
    overflow: visible !important;
  }

  .ei-mainbar {
    height: 76px !important;
    min-height: 76px !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
    box-shadow: 0 5px 10px rgba(0,0,0,.12) !important;
  }

  .ei-mainbar .ei-container {
    height: 76px !important;
    min-height: 76px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    align-items: center !important;
    overflow: visible !important;
  }

  .ei-mainbar:after,
  .ei-mainbar:before,
  .ei-mainbar .ei-container:after,
  .ei-mainbar .ei-container:before {
    display: none !important;
    content: "" !important;
    height: 0 !important;
  }

  .ei-logo {
    height: 76px !important;
    min-height: 76px !important;
    align-items: center !important;
  }

  .ei-logo img {
    display: block !important;
  }

  .ei-mobile-panel:not(.is-active) {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  .ei-site-content,
  #main-content {
    margin-top: 0 !important;
  }
}

/* Keep iPad/touch views consistent with the phone mobile header height. */
@media screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  body.ei-touch-mobile-v9 .ei-mainbar,
  body.ei-touch-mobile-v9 .ei-mainbar .ei-container {
    height: 76px !important;
    min-height: 76px !important;
  }
}

/* Mobile footer: move logo/content up. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-footer-left {
    padding-top: 18px !important;
  }

  .ei-footer-logo {
    margin-top: -10px !important;
    margin-bottom: 18px !important;
  }

  .ei-address {
    margin-top: -4px !important;
    margin-bottom: 18px !important;
  }

  .ei-footer-buttons {
    margin-bottom: 24px !important;
    padding-bottom: 24px !important;
  }

  .ei-newsletter-copy {
    margin-top: -4px !important;
    margin-bottom: 18px !important;
  }

  .ei-footer-right {
    padding-top: 20px !important;
  }
}

/* Mobile footer order: social divider/icons immediately above the final legal-link block. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-footer-right {
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
  }

  .ei-footer-menu-grid {
    order: 1 !important;
  }

  .ei-footer-right .ei-social,
  .ei-footer-right > .ei-social,
  .ei-footer-social-bottom-v8,
  .ei-footer-social-bottom-v9,
  .ei-footer-social-bottom-v11 {
    order: 98 !important;
    position: static !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 18px 0 0 0 !important;
    padding: 18px 0 16px 0 !important;
    border-top: 1px solid rgba(255,255,255,.28) !important;
    text-align: center !important;
  }

  .ei-footer-right .ei-social ul,
  .ei-footer-social-bottom-v11 ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-right .ei-social li,
  .ei-footer-social-bottom-v11 li {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-mobile-switch-legal-v6,
  .ei-footer-mobile-switch-legal-v7,
  .ei-footer-mobile-switch-legal-v8,
  .ei-footer-mobile-switch-legal-v9,
  .ei-footer-mobile-switch-legal-v11,
  .ei-mobile-legal-dynamic,
  .ei-mobile-legal,
  .ei-mobile-footer-legal-final {
    order: 99 !important;
    margin-top: 0 !important;
  }

  /* Hide only duplicate social sets; keep the main .ei-social block. */
  .ei-mobile-footer-extra .ei-mobile-social,
  .ei-mobile-social.ei-duplicate-social-hidden-v10,
  .ei-mobile-social.ei-duplicate-social-hidden-v11 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* iPad landscape: keep the final legal block blue like the footer. */
@media screen and (orientation: landscape) and (hover: none) and (pointer: coarse) and (min-width: 768px) and (max-width: 1366px) {
  .ei-footer-mobile-switch-legal-v6,
  .ei-footer-mobile-switch-legal-v7,
  .ei-footer-mobile-switch-legal-v8,
  .ei-footer-mobile-switch-legal-v9,
  .ei-footer-mobile-switch-legal-v11,
  .ei-mobile-legal-dynamic,
  .ei-mobile-legal,
  .ei-mobile-footer-legal-final {
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
  }
}



/* =========================================================
   v12 mobile footer + iPad portrait fixes
   - Mobile footer logo/content moved up; extra space added below logo.
   - Final legal links moved under social icons at the bottom.
   - iPad portrait portal: Ask Admissions a Question wraps inside page.
   - iPad portrait footer: removes gap/white seam and keeps legal area blue.
   ========================================================= */

/* Mobile/mobile-style footer: move the first footer section up and add
   breathing room between the logo and the address/content below. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-footer {
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
    overflow: visible !important;
  }

  .ei-footer-left {
    padding-top: 0 !important;
  }

  .ei-footer-logo {
    margin-top: -34px !important;
    margin-bottom: 38px !important;
    padding-bottom: 0 !important;
    display: block !important;
  }

  .ei-footer-logo a,
  .ei-footer-logo img {
    width: 310px !important;
    max-width: calc(100vw - 48px) !important;
    min-width: 0 !important;
    height: auto !important;
    display: block !important;
  }

  .ei-address {
    margin-top: 0 !important;
  }

  .ei-footer-left,
  .ei-footer-right,
  .ei-mobile-footer-extra,
  .ei-footer-bottom,
  .ei-footer-bottom-inner,
  .ei-mobile-footer-legal-final,
  .ei-mobile-legal,
  .ei-mobile-legal-dynamic,
  .ei-footer-mobile-switch-legal-v6,
  .ei-footer-mobile-switch-legal-v7,
  .ei-footer-mobile-switch-legal-v8,
  .ei-footer-mobile-switch-legal-v9,
  .ei-footer-mobile-switch-legal-v11,
  .ei-footer-mobile-legal-final-v12 {
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
  }
}

/* Mobile/mobile-style footer: only one final legal block should display,
   and it must sit below the social icons. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-footer-right {
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
    border-top: 0 !important;
    box-shadow: none !important;
  }

  .ei-footer-menu-grid {
    order: 1 !important;
  }

  .ei-footer-right .ei-social,
  .ei-footer-social-bottom-v11,
  .ei-footer-social-bottom-v12 {
    order: 98 !important;
    position: static !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 18px 0 0 0 !important;
    padding: 18px 0 16px 0 !important;
    border-top: 1px solid rgba(255,255,255,.28) !important;
    text-align: center !important;
  }

  .ei-footer-right .ei-social ul,
  .ei-footer-social-bottom-v12 ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-right .ei-social a,
  .ei-footer-social-bottom-v12 a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    color: #ffffff !important;
    background: transparent !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    background-image: none !important;
  }

  .ei-footer-right .ei-social a:hover,
  .ei-footer-right .ei-social a:focus,
  .ei-footer-social-bottom-v12 a:hover,
  .ei-footer-social-bottom-v12 a:focus {
    width: 46px !important;
    height: 46px !important;
    background: #000000 !important;
    background-color: #000000 !important;
    color: var(--ei-yellow) !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    transform: none !important;
  }

  .ei-footer-right .ei-social a:hover i,
  .ei-footer-right .ei-social a:focus i,
  .ei-footer-right .ei-social a:hover svg,
  .ei-footer-right .ei-social a:focus svg,
  .ei-footer-right .ei-social a:hover span,
  .ei-footer-right .ei-social a:focus span,
  .ei-footer-social-bottom-v12 a:hover i,
  .ei-footer-social-bottom-v12 a:focus i,
  .ei-footer-social-bottom-v12 a:hover svg,
  .ei-footer-social-bottom-v12 a:focus svg,
  .ei-footer-social-bottom-v12 a:hover span,
  .ei-footer-social-bottom-v12 a:focus span {
    color: var(--ei-yellow) !important;
    fill: var(--ei-yellow) !important;
  }

  /* Hide all old/duplicate legal blocks on mobile. The v12 block replaces them
     and is inserted by JS immediately after the social icons. */
  .ei-footer-right > .ei-mobile-footer-extra,
  .ei-footer-right > .ei-footer-bottom,
  .ei-footer > .ei-mobile-footer-legal-final,
  .ei-footer-right > .ei-mobile-legal-dynamic,
  .ei-footer-right > .ei-mobile-legal,
  .ei-footer-mobile-switch-legal-v6,
  .ei-footer-mobile-switch-legal-v7,
  .ei-footer-mobile-switch-legal-v8,
  .ei-footer-mobile-switch-legal-v9,
  .ei-footer-mobile-switch-legal-v11 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-mobile-legal-final-v12 {
    order: 99 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: calc(100% + 52px) !important;
    margin: 0 -26px 0 -26px !important;
    padding: 20px 26px 26px 26px !important;
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    text-align: center !important;
    border-top: 0 !important;
  }

  .ei-footer-mobile-legal-final-v12 ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px 18px !important;
    width: 100% !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ei-footer-mobile-legal-final-v12 li {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-mobile-legal-final-v12 a {
    display: inline-block !important;
    width: auto !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: normal !important;
  }

  .ei-footer-mobile-legal-final-v12 a:after {
    content: "" !important;
    display: none !important;
  }

  .ei-footer-mobile-legal-final-v12 a:hover,
  .ei-footer-mobile-legal-final-v12 a:focus {
    color: #ffffff !important;
    text-decoration: underline !important;
    text-decoration-color: var(--ei-yellow) !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
  }

  .ei-footer-mobile-legal-final-v12 p {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    text-align: center !important;
  }
}

/* iPad portrait only: portal link/text should not run off the right side. */
@media screen and (orientation: portrait) and (hover: none) and (pointer: coarse) and (min-width: 768px) and (max-width: 1024px) {
  body.ei-ipad-portrait-v12 #main-content,
  body.ei-ipad-portrait-v12 #main-content .ei-slate-content,
  body.ei-ipad-portrait-v12 #main-content .portal_row,
  body.ei-ipad-portrait-v12 #main-content .grid_container,
  body.ei-ipad-portrait-v12 #main-content table {
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  body.ei-ipad-portrait-v12 .ei-ask-admissions-question-v12,
  body.ei-ipad-portrait-v12 .ei-ask-admissions-question-v12 *,
  body.ei-ipad-portrait-v12 a.ei-ask-admissions-question-v12 {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    max-width: 100% !important;
    display: inline-block !important;
    box-sizing: border-box !important;
  }

  /* iPad portrait footer: remove the large gap/white seam and keep bottom links blue. */
  body.ei-ipad-portrait-v12 .ei-footer,
  body.ei-ipad-portrait-v12 .ei-footer-grid,
  body.ei-ipad-portrait-v12 .ei-footer-left,
  body.ei-ipad-portrait-v12 .ei-footer-right,
  body.ei-ipad-portrait-v12 .ei-footer-mobile-legal-final-v12 {
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.ei-ipad-portrait-v12 .ei-footer-left {
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v12 .ei-footer-right {
    padding-top: 18px !important;
    margin-top: 0 !important;
    border-top: 0 !important;
  }

  body.ei-ipad-portrait-v12 .ei-footer-left:after,
  body.ei-ipad-portrait-v12 .ei-footer-right:before,
  body.ei-ipad-portrait-v12 .ei-footer-grid:before,
  body.ei-ipad-portrait-v12 .ei-footer-grid:after {
    display: none !important;
    content: "" !important;
  }
}



/* =========================================================
   v13 targeted mobile footer + iPad portrait tune
   - Mobile bottom legal links are underlined.
   - Mobile footer Erikson logo is centered and moved up one more line.
   - iPad portrait portal intro sentence wraps inside the page.
   - iPad portrait footer gap between footer sections is tightened.
   ========================================================= */

/* All mobile/mobile-style footers: center logo, move it up one more line,
   and keep breathing room before the content below it. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-footer-left {
    padding-top: 0 !important;
  }

  .ei-footer-logo {
    text-align: center !important;
    margin-top: -54px !important;
    margin-bottom: 40px !important;
    padding-bottom: 0 !important;
    display: block !important;
  }

  .ei-footer-logo a,
  .ei-footer-logo img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 310px !important;
    max-width: calc(100vw - 48px) !important;
    min-width: 0 !important;
    height: auto !important;
  }

  /* Very bottom mobile legal links should be visibly underlined. */
  .ei-footer-mobile-legal-final-v12 a,
  .ei-footer-mobile-legal-final-v13 a,
  .ei-mobile-legal a,
  .ei-mobile-legal-dynamic a,
  .ei-mobile-footer-legal-final a,
  .ei-footer-mobile-switch-legal-v6 a,
  .ei-footer-mobile-switch-legal-v7 a,
  .ei-footer-mobile-switch-legal-v8 a,
  .ei-footer-mobile-switch-legal-v9 a,
  .ei-footer-mobile-switch-legal-v11 a {
    color: #ffffff !important;
    text-decoration: underline !important;
    text-decoration-color: rgba(255,255,255,.95) !important;
    text-decoration-thickness: 1px !important;
    text-underline-offset: 3px !important;
  }

  .ei-footer-mobile-legal-final-v12 a:hover,
  .ei-footer-mobile-legal-final-v12 a:focus,
  .ei-footer-mobile-legal-final-v13 a:hover,
  .ei-footer-mobile-legal-final-v13 a:focus,
  .ei-mobile-legal a:hover,
  .ei-mobile-legal a:focus,
  .ei-mobile-legal-dynamic a:hover,
  .ei-mobile-legal-dynamic a:focus,
  .ei-mobile-footer-legal-final a:hover,
  .ei-mobile-footer-legal-final a:focus {
    color: #ffffff !important;
    text-decoration-color: var(--ei-yellow) !important;
    text-decoration-thickness: 2px !important;
  }
}

/* Keep the final legal block under the social icons at the bottom. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-footer-right {
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
  }

  .ei-footer-menu-grid {
    order: 1 !important;
  }

  .ei-footer-right .ei-social,
  .ei-footer-social-bottom-v12,
  .ei-footer-social-bottom-v13 {
    order: 98 !important;
    position: static !important;
    display: block !important;
    width: 100% !important;
    margin: 18px 0 0 0 !important;
    padding: 18px 0 16px 0 !important;
    border-top: 1px solid rgba(255,255,255,.28) !important;
    text-align: center !important;
  }

  .ei-footer-mobile-legal-final-v12,
  .ei-footer-mobile-legal-final-v13 {
    order: 99 !important;
    display: block !important;
    width: calc(100% + 52px) !important;
    margin: 0 -26px 0 -26px !important;
    padding: 20px 26px 26px 26px !important;
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }
}

/* iPad portrait only: prevent this gr_app sentence from running off the page. */
@media screen and (orientation: portrait) and (hover: none) and (pointer: coarse) and (min-width: 768px) and (max-width: 1024px) {
  body.ei-ipad-portrait-v13 #main-content,
  body.ei-ipad-portrait-v13 #main-content .ei-slate-content,
  body.ei-ipad-portrait-v13 #main-content .portal_row,
  body.ei-ipad-portrait-v13 #main-content .grid_container,
  body.ei-ipad-portrait-v13 #main-content table,
  body.ei-ipad-portrait-v13 #main-content tbody,
  body.ei-ipad-portrait-v13 #main-content tr,
  body.ei-ipad-portrait-v13 #main-content td {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  body.ei-ipad-portrait-v13 .ei-programs-offered-line-v13,
  body.ei-ipad-portrait-v13 .ei-programs-offered-line-v13 * {
    display: block !important;
    width: 100% !important;
    max-width: calc(100vw - 52px) !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  /* iPad portrait footer: tighten the gap between the first and second footer parts. */
  body.ei-ipad-portrait-v13 .ei-footer,
  body.ei-ipad-portrait-v13 .ei-footer-grid,
  body.ei-ipad-portrait-v13 .ei-footer-left,
  body.ei-ipad-portrait-v13 .ei-footer-right,
  body.ei-ipad-portrait-v13 .ei-footer-mobile-legal-final-v12,
  body.ei-ipad-portrait-v13 .ei-footer-mobile-legal-final-v13 {
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.ei-ipad-portrait-v13 .ei-footer-grid {
    gap: 0 !important;
    row-gap: 0 !important;
  }

  body.ei-ipad-portrait-v13 .ei-footer-left {
    padding-bottom: 6px !important;
    margin-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v13 .ei-nonprofit {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v13 .ei-footer-right {
    padding-top: 6px !important;
    margin-top: 0 !important;
    border-top: 0 !important;
  }

  body.ei-ipad-portrait-v13 .ei-footer-left:after,
  body.ei-ipad-portrait-v13 .ei-footer-right:before,
  body.ei-ipad-portrait-v13 .ei-footer-grid:before,
  body.ei-ipad-portrait-v13 .ei-footer-grid:after {
    display: none !important;
    content: "" !important;
    height: 0 !important;
  }
}



/* =========================================================
   v14 iPad portrait cleanup
   - Hide any style/script CDATA text that was being exposed above tables.
   - Fix gr_app intro sentence without applying display:block to whole containers.
   - Tighten iPad portrait footer gap much more.
   - Keep final legal links below social icons and on blue background.
   ========================================================= */

/* iPad portrait only: never display embedded style/script content in the Slate area. */
@media screen and (orientation: portrait) and (hover: none) and (pointer: coarse) and (min-width: 768px) and (max-width: 1024px) {
  body.ei-ipad-portrait-v14 #main-content style,
  body.ei-ipad-portrait-v14 #main-content script,
  body.ei-ipad-portrait-v14 #main-content noscript,
  body.ei-ipad-portrait-v14 #main-content template {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -99999px !important;
  }

  /* Remove the over-broad v13 child rule behavior for the program intro line. */
  body.ei-ipad-portrait-v14 .ei-programs-offered-line-v13 style,
  body.ei-ipad-portrait-v14 .ei-programs-offered-line-v13 script,
  body.ei-ipad-portrait-v14 .ei-programs-offered-line-v13 noscript,
  body.ei-ipad-portrait-v14 .ei-programs-offered-line-v13 template {
    display: none !important;
  }

  body.ei-ipad-portrait-v14 .ei-programs-offered-line-v14 {
    display: block !important;
    width: 100% !important;
    max-width: calc(100vw - 56px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  body.ei-ipad-portrait-v14 .ei-programs-offered-line-v14 span,
  body.ei-ipad-portrait-v14 .ei-programs-offered-line-v14 em,
  body.ei-ipad-portrait-v14 .ei-programs-offered-line-v14 strong,
  body.ei-ipad-portrait-v14 .ei-programs-offered-line-v14 a {
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  /* Tighten iPad portrait footer gap between the first and second footer parts. */
  body.ei-ipad-portrait-v14 .ei-footer,
  body.ei-ipad-portrait-v14 .ei-footer-grid,
  body.ei-ipad-portrait-v14 .ei-footer-left,
  body.ei-ipad-portrait-v14 .ei-footer-right,
  body.ei-ipad-portrait-v14 .ei-footer-mobile-legal-final-v14 {
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.ei-ipad-portrait-v14 .ei-footer-grid {
    display: block !important;
    gap: 0 !important;
    row-gap: 0 !important;
  }

  body.ei-ipad-portrait-v14 .ei-footer-left {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v14 .ei-footer-logo {
    text-align: center !important;
    margin-top: -68px !important;
    margin-bottom: 38px !important;
  }

  body.ei-ipad-portrait-v14 .ei-footer-logo a,
  body.ei-ipad-portrait-v14 .ei-footer-logo img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.ei-ipad-portrait-v14 .ei-accreditation-row {
    margin-bottom: 6px !important;
    padding-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v14 .ei-nonprofit {
    margin-top: 6px !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v14 .ei-footer-right {
    padding-top: 0 !important;
    margin-top: -30px !important;
    border-top: 0 !important;
  }

  body.ei-ipad-portrait-v14 .ei-footer-left:after,
  body.ei-ipad-portrait-v14 .ei-footer-right:before,
  body.ei-ipad-portrait-v14 .ei-footer-grid:before,
  body.ei-ipad-portrait-v14 .ei-footer-grid:after {
    display: none !important;
    content: "" !important;
    height: 0 !important;
  }
}

/* Mobile/mobile-style footer: hide older legal blocks and keep one final block under social icons. */
@media screen and (max-width: 1320px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  .ei-footer-right {
    display: flex !important;
    flex-direction: column !important;
  }

  .ei-footer-menu-grid {
    order: 1 !important;
  }

  .ei-footer-right .ei-social,
  .ei-footer-social-bottom-v14 {
    order: 98 !important;
    position: static !important;
    display: block !important;
    width: 100% !important;
    margin: 18px 0 0 0 !important;
    padding: 18px 0 16px 0 !important;
    border-top: 1px solid rgba(255,255,255,.28) !important;
    text-align: center !important;
  }

  .ei-footer > .ei-mobile-footer-legal-final,
  .ei-footer-right > .ei-mobile-footer-extra,
  .ei-footer-right > .ei-footer-bottom,
  .ei-footer-right > .ei-mobile-legal-dynamic,
  .ei-footer-right > .ei-mobile-legal,
  .ei-footer-mobile-switch-legal-v6,
  .ei-footer-mobile-switch-legal-v7,
  .ei-footer-mobile-switch-legal-v8,
  .ei-footer-mobile-switch-legal-v9,
  .ei-footer-mobile-switch-legal-v11,
  .ei-footer-mobile-legal-final-v12:not(.ei-footer-mobile-legal-final-v14),
  .ei-footer-mobile-legal-final-v13:not(.ei-footer-mobile-legal-final-v14) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ei-footer-mobile-legal-final-v14 {
    order: 99 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: calc(100% + 52px) !important;
    margin: 0 -26px 0 -26px !important;
    padding: 20px 26px 26px 26px !important;
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  .ei-footer-mobile-legal-final-v14 ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 10px 18px !important;
    list-style: none !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
  }

  .ei-footer-mobile-legal-final-v14 a {
    color: #ffffff !important;
    text-decoration: underline !important;
    text-decoration-color: rgba(255,255,255,.95) !important;
    text-decoration-thickness: 1px !important;
    text-underline-offset: 3px !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
  }

  .ei-footer-mobile-legal-final-v14 a:hover,
  .ei-footer-mobile-legal-final-v14 a:focus {
    text-decoration-color: var(--ei-yellow) !important;
    text-decoration-thickness: 2px !important;
  }

  .ei-footer-mobile-legal-final-v14 p {
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    margin: 0 !important;
  }
}



/* =========================================================
   v15 iPad portrait only: gr_app text + footer tightening
   - Prevents gr_app text from running off the right side.
   - Tightens the space between the first and second footer sections.
   - Centers the copyright line.
   ========================================================= */

@media screen and (orientation: portrait) and (hover: none) and (pointer: coarse) and (min-width: 768px) and (max-width: 1024px) {
  /* Portal text containment on iPad portrait. */
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-content-inner,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #slate-root {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content > *,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #slate-root > * {
    max-width: calc(100vw - 48px) !important;
    box-sizing: border-box !important;
  }

  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content p,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content div,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content span,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content h1,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content h2,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content h3,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content a,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content li,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content td,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content .ei-slate-content th {
    max-width: 100% !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  /* Exact long intro line. */
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 .ei-programs-offered-line-v15,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 .ei-programs-offered-line-v15 * {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    max-width: calc(100vw - 56px) !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  /* Keep program/portal table areas inside the iPad portrait viewport. */
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content table {
    max-width: 100% !important;
    width: 100% !important;
    table-layout: fixed !important;
  }

  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content img,
  body.ei-ipad-portrait-v15.ei-gr-app-page-v15 #main-content iframe {
    max-width: 100% !important;
  }

  /* iPad portrait footer: remove remaining oversized gap between footer sections. */
  body.ei-ipad-portrait-v15 .ei-footer,
  body.ei-ipad-portrait-v15 .ei-footer-grid,
  body.ei-ipad-portrait-v15 .ei-footer-left,
  body.ei-ipad-portrait-v15 .ei-footer-right,
  body.ei-ipad-portrait-v15 .ei-footer-mobile-legal-final-v14,
  body.ei-ipad-portrait-v15 .ei-footer-mobile-legal-final-v15 {
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.ei-ipad-portrait-v15 .ei-footer-grid {
    display: block !important;
    gap: 0 !important;
    row-gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.ei-ipad-portrait-v15 .ei-footer-left {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v15 .ei-accreditation-row {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v15 .ei-nonprofit {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v15 .ei-footer-right {
    padding-top: 0 !important;
    margin-top: -62px !important;
    border-top: 0 !important;
  }

  body.ei-ipad-portrait-v15 .ei-footer-left:after,
  body.ei-ipad-portrait-v15 .ei-footer-right:before,
  body.ei-ipad-portrait-v15 .ei-footer-grid:before,
  body.ei-ipad-portrait-v15 .ei-footer-grid:after {
    display: none !important;
    content: "" !important;
    height: 0 !important;
  }

  /* Center the copyright line in the final legal block. */
  body.ei-ipad-portrait-v15 .ei-footer-mobile-legal-final-v14 p,
  body.ei-ipad-portrait-v15 .ei-footer-mobile-legal-final-v15 p,
  body.ei-ipad-portrait-v15 .ei-mobile-legal p,
  body.ei-ipad-portrait-v15 .ei-mobile-legal-dynamic p,
  body.ei-ipad-portrait-v15 .ei-mobile-footer-legal-final p,
  body.ei-ipad-portrait-v15 .ei-footer-bottom-inner span {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}



/* =========================================================
   v16 iPad portrait /portal/gr_app tune
   - Makes the long intro sentence span the full content container,
     instead of staying constrained to the first table column.
   - Moves the iPad portrait footer logo down one line.
   - Tightens the iPad portrait footer first/second section gap more.
   ========================================================= */

@media screen and (orientation: portrait) and (hover: none) and (pointer: coarse) and (min-width: 768px) and (max-width: 1024px) {
  /* iPad portrait footer: logo down one line from prior version, still centered. */
  body.ei-ipad-portrait-v16 .ei-footer-logo {
    text-align: center !important;
    margin-top: -48px !important;
    margin-bottom: 38px !important;
  }

  body.ei-ipad-portrait-v16 .ei-footer-logo a,
  body.ei-ipad-portrait-v16 .ei-footer-logo img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* iPad portrait footer: aggressively tighten space between first and second sections. */
  body.ei-ipad-portrait-v16 .ei-footer,
  body.ei-ipad-portrait-v16 .ei-footer-grid,
  body.ei-ipad-portrait-v16 .ei-footer-left,
  body.ei-ipad-portrait-v16 .ei-footer-right,
  body.ei-ipad-portrait-v16 .ei-footer-mobile-legal-final-v14,
  body.ei-ipad-portrait-v16 .ei-footer-mobile-legal-final-v15,
  body.ei-ipad-portrait-v16 .ei-footer-mobile-legal-final-v16 {
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.ei-ipad-portrait-v16 .ei-footer-grid {
    display: block !important;
    gap: 0 !important;
    row-gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.ei-ipad-portrait-v16 .ei-footer-left {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v16 .ei-accreditation-row {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v16 .ei-nonprofit {
    margin-top: 0 !important;
    margin-bottom: -8px !important;
    padding-bottom: 0 !important;
  }

  body.ei-ipad-portrait-v16 .ei-footer-right {
    padding-top: 0 !important;
    margin-top: -118px !important;
    border-top: 0 !important;
  }

  body.ei-ipad-portrait-v16 .ei-footer-menu-grid {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body.ei-ipad-portrait-v16 .ei-footer-left:after,
  body.ei-ipad-portrait-v16 .ei-footer-right:before,
  body.ei-ipad-portrait-v16 .ei-footer-grid:before,
  body.ei-ipad-portrait-v16 .ei-footer-grid:after {
    display: none !important;
    content: "" !important;
    height: 0 !important;
  }
}

/* iPad portrait /portal/gr_app only: let the long intro sentence span the whole
   content container rather than being trapped in the first table column. */
@media screen and (orientation: portrait) and (hover: none) and (pointer: coarse) and (min-width: 768px) and (max-width: 1024px) {
  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 #main-content,
  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 #main-content .ei-content-inner,
  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 #main-content .ei-slate-content,
  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 #slate-root {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: visible !important;
    box-sizing: border-box !important;
  }

  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 .ei-programs-offered-line-v16 {
    display: block !important;
    width: calc(100vw - 56px) !important;
    max-width: 1020px !important;
    min-width: 0 !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 .ei-programs-offered-line-v16 * {
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* If the sentence lives inside a table cell/row, let that intro row behave
     like a full-width block without changing the program tables below it. */
  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 .ei-programs-offered-table-v16,
  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 .ei-programs-offered-table-v16 tbody,
  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 .ei-programs-offered-row-v16,
  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 .ei-programs-offered-cell-v16 {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 .ei-programs-offered-row-v16,
  body.ei-ipad-portrait-v16.ei-gr-app-page-v16 .ei-programs-offered-cell-v16 {
    display: block !important;
  }
}



/* =========================================================
   v17 iPad portrait /portal/gr_app fixes
   - Force the "Erikson Institute offers..." sentence into its own
     full-width block above the tables.
   - Tighten the iPad portrait footer gap more aggressively.
   ========================================================= */

@media screen and (orientation: portrait) and (min-width: 700px) and (max-width: 1100px) {
  /* iPad portrait /portal/gr_app: allow the injected full-width intro line
     to span the content area instead of being trapped inside a table column. */
  body.ei-gr-app-page-v17 #main-content,
  body.ei-gr-app-page-v17 #main-content .ei-content-inner,
  body.ei-gr-app-page-v17 #main-content .ei-slate-content,
  body.ei-gr-app-page-v17 #slate-root {
    overflow-x: visible !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.ei-gr-app-page-v17 .ei-grapp-fullwidth-intro-v17 {
    display: block !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: calc(100vw - 56px) !important;
    max-width: 1020px !important;
    min-width: 0 !important;
    margin: 0 auto 22px auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    color: #000000 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    line-height: 1.35 !important;
  }

  body.ei-gr-app-page-v17 .ei-grapp-fullwidth-intro-v17 * {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    box-sizing: border-box !important;
  }

  body.ei-gr-app-page-v17 .ei-grapp-original-intro-hidden-v17 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* iPad portrait footer: aggressively reduce the gap between footer part 1 and part 2.
     Do not move the logo here; the logo position from v16 is preserved. */
  .ei-footer {
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
    overflow: visible !important;
  }

  .ei-footer-grid {
    display: block !important;
    gap: 0 !important;
    row-gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .ei-footer-left {
    padding-bottom: 0 !important;
    margin-bottom: -84px !important;
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
  }

  .ei-accreditation-row {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .ei-nonprofit {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .ei-footer-right {
    position: relative !important;
    top: -118px !important;
    margin-top: 0 !important;
    margin-bottom: -118px !important;
    padding-top: 0 !important;
    background: var(--ei-blue) !important;
    background-color: var(--ei-blue) !important;
    background-image: none !important;
    border-top: 0 !important;
    box-shadow: none !important;
  }

  .ei-footer-menu-grid {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .ei-footer-left:after,
  .ei-footer-right:before,
  .ei-footer-grid:before,
  .ei-footer-grid:after {
    display: none !important;
    content: "" !important;
    height: 0 !important;
    max-height: 0 !important;
  }

  .ei-footer-mobile-legal-final-v14 p,
  .ei-footer-mobile-legal-final-v15 p,
  .ei-footer-mobile-legal-final-v16 p,
  .ei-footer-mobile-legal-final-v17 p,
  .ei-mobile-legal p,
  .ei-mobile-legal-dynamic p,
  .ei-mobile-footer-legal-final p,
  .ei-footer-bottom-inner span {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}



/* =========================================================
   v18 iPad portrait /portal/gr_app text wrapping
   - Removes the extra injected intro sentence above the horizontal line.
   - Restores the original intro sentence and lets it wrap full-width.
   - Forces page/table text to wrap inside the main container.
   ========================================================= */

@media screen and (orientation: portrait) and (min-width: 700px) and (max-width: 1100px) {
  body.ei-gr-app-page-v18 #main-content,
  body.ei-gr-app-page-v18 #main-content .ei-content-inner,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content,
  body.ei-gr-app-page-v18 #slate-root {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  /* Remove the extra v17 duplicated sentence that was inserted above the horizontal line. */
  body.ei-gr-app-page-v18 .ei-grapp-fullwidth-intro-v17,
  body.ei-gr-app-page-v18 .ei-grapp-extra-intro-remove-v18 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Restore the original text and make it span/wrap naturally. */
  body.ei-gr-app-page-v18 .ei-grapp-original-intro-hidden-v17,
  body.ei-gr-app-page-v18 .ei-grapp-original-intro-keep-v18 {
    display: revert !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.ei-gr-app-page-v18 .ei-grapp-original-intro-keep-v18,
  body.ei-gr-app-page-v18 .ei-grapp-original-intro-keep-v18 * {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.ei-gr-app-page-v18 .ei-grapp-original-intro-keep-v18 {
    display: block !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  /* Keep all text in the portal content inside the available width. */
  body.ei-gr-app-page-v18 #main-content .ei-slate-content p,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content div,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content span,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content h1,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content h2,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content h3,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content h4,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content li,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content a,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content td,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content th {
    max-width: 100% !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  body.ei-gr-app-page-v18 #main-content .ei-slate-content table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    box-sizing: border-box !important;
    overflow-wrap: break-word !important;
  }

  body.ei-gr-app-page-v18 #main-content .ei-slate-content tbody,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content tr,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content td,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content th {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  body.ei-gr-app-page-v18 #main-content .ei-slate-content img,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content iframe,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content select,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content input,
  body.ei-gr-app-page-v18 #main-content .ei-slate-content textarea {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Never expose embedded style/script text in the portal content. */
  body.ei-gr-app-page-v18 #main-content style,
  body.ei-gr-app-page-v18 #main-content script,
  body.ei-gr-app-page-v18 #main-content noscript,
  body.ei-gr-app-page-v18 #main-content template {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
  }
}



/* =========================================================
   v19 final iPad portrait intro + desktop copyright tune
   - /portal/gr_app iPad portrait: keep one full-width intro sentence
     below the horizontal line, above the program columns/tables.
   - Hide the older duplicate intro and the original constrained intro.
   - Keep all page text wrapping inside the main content.
   - Desktop: copyright line is not centered.
   ========================================================= */

/* Desktop footer copyright should use normal desktop alignment, not centered. */
@media screen and (min-width: 1321px) {
  .ei-footer-bottom-inner span,
  .ei-footer-bottom-inner .ei-copyright-v20,
  .ei-footer-bottom-inner .ei-copyright-v21 {
    display: inline !important;
    width: auto !important;
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* iPad portrait /portal/gr_app only. */
@media screen and (orientation: portrait) and (min-width: 700px) and (max-width: 1100px) {
  body.ei-gr-app-page-v19 #main-content,
  body.ei-gr-app-page-v19 #main-content .ei-content-inner,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content,
  body.ei-gr-app-page-v19 #slate-root {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  /* Hide the older injected full-width duplicate that appeared above the horizontal line. */
  body.ei-gr-app-page-v19 .ei-grapp-fullwidth-intro-v17,
  body.ei-gr-app-page-v19 .ei-grapp-extra-intro-remove-v18 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Hide the original constrained table-column version; v19 replaces it
     with one full-width copy below the horizontal line. */
  body.ei-gr-app-page-v19 .ei-grapp-original-intro-hidden-v19 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* The single visible intro sentence. */
  body.ei-gr-app-page-v19 .ei-grapp-fullwidth-intro-v19 {
    display: block !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: calc(100vw - 56px) !important;
    max-width: 1020px !important;
    min-width: 0 !important;
    margin: 18px auto 24px auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    color: #000000 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    line-height: 1.35 !important;
  }

  body.ei-gr-app-page-v19 .ei-grapp-fullwidth-intro-v19 * {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    box-sizing: border-box !important;
  }

  /* Keep the program column headings aligned after the full-width sentence. */
  body.ei-gr-app-page-v19 .ei-masters-program-heading,
  body.ei-gr-app-page-v19 .ei-certificate-programs-align {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  /* Strong text wrapping across the gr_app page so nothing runs out of the container. */
  body.ei-gr-app-page-v19 #main-content .ei-slate-content p,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content div,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content span,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content h1,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content h2,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content h3,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content h4,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content li,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content a,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content td,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content th {
    max-width: 100% !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  body.ei-gr-app-page-v19 #main-content .ei-slate-content table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    box-sizing: border-box !important;
    overflow-wrap: break-word !important;
  }

  body.ei-gr-app-page-v19 #main-content .ei-slate-content img,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content iframe,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content select,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content input,
  body.ei-gr-app-page-v19 #main-content .ei-slate-content textarea {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.ei-gr-app-page-v19 #main-content style,
  body.ei-gr-app-page-v19 #main-content script,
  body.ei-gr-app-page-v19 #main-content noscript,
  body.ei-gr-app-page-v19 #main-content template {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
  }
}



/* =========================================================
   v20 iPad portrait /portal/gr_app program layout
   - Uses only one intro sentence.
   - Places the intro full-width after "Program Offerings" and before
     both program columns.
   - Keeps Master's Degree Programs and Certificate Programs aligned.
   - Removes internal program table scrollbars and forces wrapping.
   - Desktop copyright remains non-centered.
   ========================================================= */

/* Desktop footer copyright should remain normal/left-aligned. */
@media screen and (min-width: 1321px) {
  .ei-footer-bottom-inner span,
  .ei-footer-bottom-inner .ei-copyright-v20,
  .ei-footer-bottom-inner .ei-copyright-v21 {
    display: inline !important;
    width: auto !important;
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* iPad portrait gr_app only. This intentionally does not touch footer layout. */
@media screen and (orientation: portrait) and (min-width: 700px) and (max-width: 1100px) {
  body.ei-gr-app-page-v20 #main-content,
  body.ei-gr-app-page-v20 #main-content .ei-content-inner,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content,
  body.ei-gr-app-page-v20 #slate-root {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  body.ei-gr-app-page-v20 #main-content .ei-slate-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Hide all older injected/duplicate intro versions. */
  body.ei-gr-app-page-v20 .ei-grapp-fullwidth-intro-v17,
  body.ei-gr-app-page-v20 .ei-grapp-fullwidth-intro-v19,
  body.ei-gr-app-page-v20 .ei-grapp-extra-intro-remove-v18,
  body.ei-gr-app-page-v20 .ei-grapp-original-intro-hidden-v19,
  body.ei-gr-app-page-v20 .ei-grapp-original-intro-hidden-v20 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* The one visible intro line: full content width, not trapped in a column. */
  body.ei-gr-app-page-v20 .ei-grapp-fullwidth-intro-v20 {
    display: block !important;
    width: calc(100vw - 96px) !important;
    max-width: 1180px !important;
    min-width: 0 !important;
    margin: 14px auto 28px auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    color: #5a5a5a !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    line-height: 1.35 !important;
    clear: both !important;
  }

  /* Program section row: keep the two columns together and aligned. */
  body.ei-gr-app-page-v20 .ei-program-grid-v20,
  body.ei-gr-app-page-v20 .ei-program-grid-v20.portal_row,
  body.ei-gr-app-page-v20 .ei-program-grid-v20.grid_container,
  body.ei-gr-app-page-v20 .ei-program-grid-v20[class*="col-6-6"] {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    column-gap: 56px !important;
    row-gap: 0 !important;
    width: calc(100vw - 96px) !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    align-items: start !important;
  }

  body.ei-gr-app-page-v20 .ei-program-grid-v20 > * {
    min-width: 0 !important;
    max-width: 100% !important;
    width: auto !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.ei-gr-app-page-v20 .ei-masters-program-heading,
  body.ei-gr-app-page-v20 .ei-certificate-programs-align,
  body.ei-gr-app-page-v20 .ei-mobile-certificate-programs-up {
    position: static !important;
    top: auto !important;
    transform: none !important;
    margin-top: 0 !important;
    margin-bottom: 24px !important;
    padding-top: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
  }

  /* Remove internal scrollbars in the program tables/wrappers. */
  body.ei-gr-app-page-v20 .ei-program-grid-v20 table,
  body.ei-gr-app-page-v20 .ei-program-grid-v20 .ei-cert-table-v12 {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.ei-gr-app-page-v20 .ei-program-grid-v20 div,
  body.ei-gr-app-page-v20 .ei-program-grid-v20 span,
  body.ei-gr-app-page-v20 .ei-program-grid-v20 td,
  body.ei-gr-app-page-v20 .ei-program-grid-v20 th,
  body.ei-gr-app-page-v20 .ei-program-grid-v20 p,
  body.ei-gr-app-page-v20 .ei-program-grid-v20 a {
    max-width: 100% !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  body.ei-gr-app-page-v20 .ei-program-grid-v20 *,
  body.ei-gr-app-page-v20 .ei-program-section-v20 *,
  body.ei-gr-app-page-v20 .ei-program-grid-v20 {
    scrollbar-width: none !important;
  }

  body.ei-gr-app-page-v20 .ei-program-grid-v20 *::-webkit-scrollbar,
  body.ei-gr-app-page-v20 .ei-program-section-v20 *::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
  }

  /* General page text containment without forcing all content into one column. */
  body.ei-gr-app-page-v20 #main-content .ei-slate-content p,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content div,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content span,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content h1,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content h2,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content h3,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content h4,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content li,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content a,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content td,
  body.ei-gr-app-page-v20 #main-content .ei-slate-content th {
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  body.ei-gr-app-page-v20 #main-content style,
  body.ei-gr-app-page-v20 #main-content script,
  body.ei-gr-app-page-v20 #main-content noscript,
  body.ei-gr-app-page-v20 #main-content template {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
  }
}



/* =========================================================
   v21 iPad portrait /portal/gr_app restore
   - Restore Program Offerings, horizontal rule, Master's column/table.
   - Remove older injected intro attempts.
   - Add one full-width intro under Program Offerings, before both columns.
   - Force iPad portrait text to wrap inside the main content.
   - Footer intentionally untouched.
   ========================================================= */

@media screen and (orientation: portrait) and (min-width: 700px) and (max-width: 1100px) {
  body.ei-gr-app-page-v21 #main-content,
  body.ei-gr-app-page-v21 #main-content .ei-content-inner,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content,
  body.ei-gr-app-page-v21 #slate-root {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  /* Remove the older injected duplicates. */
  body.ei-gr-app-page-v21 .ei-grapp-fullwidth-intro-v17,
  body.ei-gr-app-page-v21 .ei-grapp-fullwidth-intro-v19,
  body.ei-gr-app-page-v21 .ei-grapp-fullwidth-intro-v20,
  body.ei-gr-app-page-v21 .ei-grapp-extra-intro-remove-v18 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Unhide rows/containers that older versions may have hidden too broadly. */
  body.ei-gr-app-page-v21 .ei-grapp-original-intro-hidden-v17:not(.ei-grapp-intro-source-hidden-v21),
  body.ei-gr-app-page-v21 .ei-grapp-original-intro-hidden-v19:not(.ei-grapp-intro-source-hidden-v21),
  body.ei-gr-app-page-v21 .ei-grapp-original-intro-hidden-v20:not(.ei-grapp-intro-source-hidden-v21),
  body.ei-gr-app-page-v21 .ei-programs-offered-row-v16:not(.ei-grapp-intro-source-hidden-v21),
  body.ei-gr-app-page-v21 .ei-programs-offered-cell-v16:not(.ei-grapp-intro-source-hidden-v21) {
    display: revert !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  /* Hide only the actual original intro text after the v21 full-width copy is inserted. */
  body.ei-gr-app-page-v21 .ei-grapp-intro-source-hidden-v21 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* The single visible full-width intro line. */
  body.ei-gr-app-page-v21 .ei-grapp-fullwidth-intro-v21 {
    display: block !important;
    width: calc(100vw - 96px) !important;
    max-width: 1180px !important;
    min-width: 0 !important;
    margin: 14px auto 28px auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    color: #5a5a5a !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    line-height: 1.35 !important;
    clear: both !important;
  }

  /* Do not let v20's experimental grid hide/replace the original layout. */
  body.ei-gr-app-page-v21 .ei-program-grid-v20,
  body.ei-gr-app-page-v21 .ei-program-section-v20 {
    display: revert !important;
    grid-template-columns: initial !important;
    column-gap: initial !important;
    width: auto !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  /* Restore headings and keep Certificate aligned with Master's. */
  body.ei-gr-app-page-v21 .ei-masters-program-heading,
  body.ei-gr-app-page-v21 .ei-certificate-programs-align,
  body.ei-gr-app-page-v21 .ei-mobile-certificate-programs-up {
    position: static !important;
    top: auto !important;
    transform: none !important;
    margin-top: 0 !important;
    margin-bottom: 24px !important;
    padding-top: 0 !important;
    text-align: center !important;
  }

  /* Page/table text wrapping inside the main content. */
  body.ei-gr-app-page-v21 #main-content .ei-slate-content p,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content div,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content span,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content h1,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content h2,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content h3,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content h4,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content li,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content a,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content td,
  body.ei-gr-app-page-v21 #main-content .ei-slate-content th {
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    max-width: 100% !important;
  }

  body.ei-gr-app-page-v21 #main-content .ei-slate-content table {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-wrap: break-word !important;
  }

  body.ei-gr-app-page-v21 #main-content style,
  body.ei-gr-app-page-v21 #main-content script,
  body.ei-gr-app-page-v21 #main-content noscript,
  body.ei-gr-app-page-v21 #main-content template {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
  }
}



/* =========================================================
   v22 iPad-portrait /portal/gr_app layout fix (final override)
   Scope: iPad portrait ONLY, and only the program-offerings area.
   - Collapses the two-column program grid (and Slate's own col-6-6 /
     portal_row / grid_container) into one full-width column so both
     tables show fully instead of being cut off.
   - Forces both program tables to full width.
   - Ensures the "Program Offerings" heading and the divider are visible.
   Nothing outside this media query / page is affected.
   ========================================================= */
@media screen and (orientation: portrait) and (min-width: 700px) and (max-width: 1100px) {
  #main-content .ei-slate-content .ei-program-grid-v20 {
    display: block !important;
    grid-template-columns: none !important;
    column-gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    float: none !important;
    overflow: visible !important;
  }
  #main-content .ei-slate-content .ei-program-grid-v20 > * {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    margin: 0 0 28px 0 !important;
    box-sizing: border-box !important;
  }
  #main-content .ei-slate-content .ei-program-grid-v20 table,
  #main-content .ei-slate-content .ei-cert-table-v12 {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    display: table !important;
    margin: 0 0 8px 0 !important;
    box-sizing: border-box !important;
  }
  #main-content .ei-slate-content .ei-program-grid-v20 td,
  #main-content .ei-slate-content .ei-program-grid-v20 th {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    box-sizing: border-box !important;
  }
  body[class*="ei-gr-app-page-v"] #main-content .ei-slate-content .ei-program-offerings-heading {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
  body[class*="ei-gr-app-page-v"] #main-content .ei-slate-content hr {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 1px !important;
    max-height: none !important;
    border: 0 !important;
    border-top: 1px solid #d9d9d9 !important;
    width: 100% !important;
    margin: 16px 0 !important;
    overflow: visible !important;
  }
}



/* =========================================================
   v23 targeted view fixes (scoped; dots & everything else untouched)
   ========================================================= */

/* (#2) Mobile PHONE only: enlarge the black-bar my.Erikson Login / Donate links. */
@media (max-width: 640px),
       screen and (orientation: landscape) and (max-width: 932px) and (max-height: 500px) {
  .ei-mobile-top-utility-v9 a,
  .ei-mobile-top-utility-v9 a:link,
  .ei-mobile-top-utility-v9 a:visited,
  .ei-mobile-top-utility-v8 a,
  .ei-mobile-top-utility-v8 a:link,
  .ei-mobile-top-utility-v8 a:visited {
    font-size: 16px !important;
    line-height: 21px !important;
  }
}

/* (#5) iPad PORTRAIT only, /portal/gr_app: render as a clean single full-width
   column (collapse Slate's two-column rows + the v20 grid), all content visible. */
@media screen and (orientation: portrait) and (min-width: 700px) and (max-width: 1100px) {
  body.ei-portal-page #main-content .ei-slate-content [class*="col-6-6"],
  body.ei-portal-page #main-content .ei-slate-content .portal_row,
  body.ei-portal-page #main-content .ei-slate-content .grid_container,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-grid-v20 {
    display: block !important;
    grid-template-columns: none !important;
    column-gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    overflow: visible !important;
  }
  body.ei-portal-page #main-content .ei-slate-content [class*="col-6-6"] > *,
  body.ei-portal-page #main-content .ei-slate-content .portal_row > *,
  body.ei-portal-page #main-content .ei-slate-content .grid_container > *,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-grid-v20 > * {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    margin: 0 0 24px 0 !important;
    box-sizing: border-box !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    display: table !important;
    box-sizing: border-box !important;
  }
  body.ei-portal-page #main-content .ei-slate-content td,
  body.ei-portal-page #main-content .ei-slate-content th {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    box-sizing: border-box !important;
  }
  /* (#3a) hide the first of two stacked dividers above Program Offerings */
  body.ei-portal-page #main-content .ei-slate-content hr:has(+ hr) {
    display: none !important;
  }
}

/* (#4) iPad LANDSCAPE only, /portal/gr_app: wrap the "Ask Admissions..." sentence
   so it stays inside the container, and match the footer phone to the sentence size. */
@media screen and (orientation: landscape) and (hover: none) and (pointer: coarse) and (min-width: 1000px) and (max-width: 1366px) {
  body.ei-portal-page #main-content .ei-slate-content,
  body.ei-portal-page #main-content .ei-slate-content p,
  body.ei-portal-page #main-content .ei-slate-content div,
  body.ei-portal-page #main-content .ei-slate-content span,
  body.ei-portal-page #main-content .ei-slate-content a {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .ei-footer .ei-address .ei-footer-phone-v20,
  .ei-footer .ei-address .ei-footer-phone-v21 {
    font-size: inherit !important;
    line-height: inherit !important;
  }
}

/* (#3) Mobile PHONE landscape only: load the footer phone at the matched size up
   front so it doesn't flash a larger size before the script adjusts it. */
@media (orientation: landscape) and (max-width: 932px) and (max-height: 500px) {
  .ei-footer .ei-address .ei-footer-phone-v20,
  .ei-footer .ei-address .ei-footer-phone-v21 {
    font-size: inherit !important;
    line-height: inherit !important;
  }
}



/* =========================================================
   v24 footer link columns -> two columns
   Scope: iPad portrait + iPad landscape (touch), and phone landscape only.
   The footer link grid is forced to flex-direction:column in the iPad media
   queries (and 1fr on phone landscape); these rules restore two columns.
   The legal block at the very bottom is unaffected.
   ========================================================= */
@media screen and (hover: none) and (pointer: coarse) and (min-width: 700px) and (max-width: 1366px) {
  .ei-footer .ei-footer-menu-grid {
    display: block !important;
    column-count: 2 !important;
    column-gap: 32px !important;
    grid-template-columns: none !important;
  }
  .ei-footer .ei-footer-menu-grid .ei-footer-col {
    -webkit-column-break-inside: avoid !important;
    break-inside: avoid !important;
    width: auto !important;
    min-width: 0 !important;
    display: block !important;
  }
  .ei-footer .ei-footer-menu-grid .ei-footer-col:nth-child(3) {
    -webkit-column-break-before: always !important;
    break-before: column !important;
  }
}
@media (orientation: landscape) and (max-width: 932px) and (max-height: 500px) {
  .ei-footer .ei-footer-menu-grid {
    display: block !important;
    column-count: 2 !important;
    column-gap: 24px !important;
    grid-template-columns: none !important;
  }
  .ei-footer .ei-footer-menu-grid .ei-footer-col {
    -webkit-column-break-inside: avoid !important;
    break-inside: avoid !important;
    width: auto !important;
    min-width: 0 !important;
    display: block !important;
  }
  .ei-footer .ei-footer-menu-grid .ei-footer-col:nth-child(3) {
    -webkit-column-break-before: always !important;
    break-before: column !important;
  }
}



/* =========================================================
   v25 center the Returning Users / First-time Users blocks (all views).
   These are currently forced left-aligned; this centers their text.
   ========================================================= */
/* account blocks + Program Offerings all left-justified */
body.ei-portal-page #main-content .ei-slate-content .ei-returning-firsttime-container,
body.ei-portal-page #main-content .ei-slate-content .ei-returning-firsttime-container *,
body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-returning-user-heading *,
body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading,
body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading * {
  text-align: left !important;
}



/* =========================================================
   v26 misc view fixes (scoped; dots & everything else untouched)
   ========================================================= */

/* (#2) Desktop only, /portal/gr_app: break the sentence before
   "Ask Admissions a Question" so it wraps onto its own line. */
@media (min-width: 1025px) and (hover: hover) {
  body.ei-portal-page #main-content .ei-slate-content a[href*="ask-a-question"]::before {
    content: "\A";
    white-space: pre;
  }
}

/* (#4) Mobile PHONE portrait only: enlarge the icons before the
   my.Erikson Login / Donate links to match the link text size. */
@media (max-width: 640px) {
  .ei-mobile-top-utility-v9 a i,
  .ei-mobile-top-utility-v8 a i {
    font-size: 16px !important;
    line-height: 1 !important;
    vertical-align: -1px !important;
  }
}

/* (Footer, all mobile views) */
@media (max-width: 980px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  /* (#5) space after Registration & Student Records (Academics column),
     i.e. before Community Services. */
  .ei-footer .ei-footer-menu-grid .ei-footer-col:nth-child(2) {
    margin-bottom: 54px !important;
  }
  /* (#6) reduce the gap between the upper (blue) and lower footer panels. */
  .ei-footer .ei-footer-left {
    padding-bottom: 24px !important;
  }
  .ei-footer .ei-footer-right {
    padding-top: 10px !important;
  }
}



/* =========================================================
   v27 center ONLY the two program headings ("Master's Degree Programs"
   and "Certificate Programs") on all mobile views. Nothing else.
   ========================================================= */
@media (max-width: 980px),
       screen and (hover: none) and (pointer: coarse) and (max-width: 1366px) {
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading *,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align * {
    text-align: center !important;
  }
}



/* =========================================================
   v28 (/apply/ request) ei-erikson-body-copy at 18px wherever it appears.
   ========================================================= */
#main-content .ei-erikson-body-copy,
#main-content .ei-erikson-body-copy a {
  font-size: 20px !important;
}



/* =========================================================================
   v31  (logged-in /portal/gr_app, MOBILE ONLY)  Applications table -> cards.
   On phones the 4-column table (Type | Status | Started | Submitted) is cramped.
   A parallel cards block is built by the script below and shown only at
   <=980px; the real table is hidden at <=980px and shown again on desktop, so
   the locked desktop view is never altered. Each card = the application link as
   a full-width title, then a 3-column Status/Started/Submitted mini-table.
   ========================================================================= */

/* Cards never show on desktop (the real table is the desktop view). */
.ei-appcards { display: none; }

@media (max-width: 980px) {
  /* Hide the real table on mobile; show the cards in its place. */
  body.ei-portal-page #main-content .application_management_table {
    display: none !important;
  }

  body.ei-portal-page #main-content .ei-appcards {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 18px 0 !important;
    box-sizing: border-box !important;
  }

  /* "Your Applications" teal bar across the top. */
  body.ei-portal-page #main-content .ei-appcards .ei-appcards-title {
    background-color: #00818c !important;
    color: #ffffff !important;
    font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    padding: 14px 16px !important;
  }

  /* One card per application. */
  body.ei-portal-page #main-content .ei-appcards .ei-appcard {
    width: 100% !important;
    margin: 0 0 18px 0 !important;
    box-sizing: border-box !important;
  }

  body.ei-portal-page #main-content .ei-appcards .ei-appcard:last-child {
    margin-bottom: 0 !important;
  }

  /* Application link as the full-width card title. */
  body.ei-portal-page #main-content .ei-appcards .ei-appcard-title {
    padding: 12px 2px 10px 2px !important;
  }

  body.ei-portal-page #main-content .ei-appcards .ei-appcard-title a {
    color: #005ea8 !important;
    font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
  }

  /* 3-column Status / Started / Submitted mini-table. */
  body.ei-portal-page #main-content .ei-appcards .ei-appcard-sub {
    width: 100% !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
    margin: 0 !important;
  }

  body.ei-portal-page #main-content .ei-appcards .ei-appcard-sub th {
    background-color: #00818c !important;
    color: #ffffff !important;
    font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    text-align: left !important;
    padding: 9px 10px !important;
    border: 1px solid #00818c !important;
    word-break: break-word !important;
  }

  body.ei-portal-page #main-content .ei-appcards .ei-appcard-sub td {
    color: #222222 !important;
    font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    vertical-align: top !important;
    padding: 9px 10px !important;
    border: 1px solid #d9d9d9 !important;
    word-break: break-word !important;
  }

  /* Strip the outer rounded box around the whole dashboard (Logout / Welcome /
     table / Start New). Anchored on the shared portal table; the JS below also
     walks up and clears it wherever it actually lives. */
  body.ei-portal-page #main-content table.two_column_with_header,
  body.ei-portal-page #main-content table.two_column_with_header > tbody,
  body.ei-portal-page #main-content table.two_column_with_header > tbody > tr,
  body.ei-portal-page #main-content table.two_column_with_header > tbody > tr > td {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  /* Tighten the program-offerings vertical spacing on mobile. */
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth {
    padding-bottom: 8px !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading {
    margin-top: 14px !important;
    margin-bottom: 10px !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-column table,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-column .table,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-column .portal_table {
    margin-top: 8px !important;
  }
}



body.ei-apply-any #side {
  position: sticky !important;
  top: 0 !important;
  z-index: 40 !important;
  align-self: flex-start !important;
  background-color: #ffffff !important;
  max-height: 100vh !important;
  overflow-y: auto !important;
}



/* Desktop: the injected toggle never participates in layout. */
@media (min-width: 981px) {
  #ei-appmenu-toggle { display: none !important; }
}

@media (max-width: 980px) {
  /* The tappable bar that stands in for the rail. */
  #side.ei-appmenu #ei-appmenu-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 14px 18px !important;
    min-height: 52px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background-color: #529214 !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    cursor: pointer !important;
    -webkit-appearance: none !important;
    appearance: none !important;
  }
  #side.ei-appmenu #ei-appmenu-toggle .ei-appmenu-label {
    flex: 1 1 auto !important;
    padding-right: 12px !important;
    color: #ffffff !important;
  }
  /* Caret; rotates when the menu is open. */
  #side.ei-appmenu #ei-appmenu-toggle .ei-appmenu-chev {
    flex: 0 0 auto !important;
    width: 0 !important;
    height: 0 !important;
    border-left: 7px solid transparent !important;
    border-right: 7px solid transparent !important;
    border-top: 9px solid #ffffff !important;
    transition: transform 0.2s ease !important;
  }
  #side.ei-appmenu.ei-appmenu-open #ei-appmenu-toggle .ei-appmenu-chev {
    transform: rotate(180deg) !important;
  }

  /* The real list stays in the DOM; collapsed to zero height by default so
     Slate's bindings on each link are preserved. */
  #side.ei-appmenu #menu ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    border: 1px solid #d9d9d9 !important;
    border-width: 0 !important;
    border-radius: 10px !important;
    transition: max-height 0.28s ease !important;
  }
  #side.ei-appmenu.ei-appmenu-open #menu ul {
    max-height: 1500px !important;
    border-width: 1px !important;
    margin-top: 8px !important;
  }

  /* Items become full-width tappable rows. */
  #side.ei-appmenu #menu li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #ededed !important;
  }
  #side.ei-appmenu #menu li:last-child {
    border-bottom: 0 !important;
  }
  /* border-box + min-height guarantees a 46px touch target even though each
     link's inline padding-bottom:2px cannot be overridden from a stylesheet. */
  #side.ei-appmenu #menu li a {
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
    min-height: 46px !important;
    padding-top: 8px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    line-height: 1.3 !important;
  }
  /* "You are here": teal accent bar + tint on the current step. */
  #side.ei-appmenu #menu li a.selected,
  #side.ei-appmenu #menu li a[aria-current="page"] {
    background-color: #f1fbfb !important;
    box-shadow: inset 4px 0 0 0 #00818c !important;
  }
}

/* -------------------------------------------------------------------------
   Section 2 — gr_app portal: stack the two-column program layout and stop
   the table overflow / sideways scrollbars on phones and small tablets.
   This is the already-approved iPad-portrait single-column treatment
   (identical selectors and technique) extended to <=980px — the range that
   treatment never reached, which is why phones still showed side-by-side
   tables and scrollbars. Desktop (>=981px) is untouched.
   ------------------------------------------------------------------------- */
@media (max-width: 980px) {
  body.ei-portal-page #main-content .ei-slate-content [class*="col-6-6"],
  body.ei-portal-page #main-content .ei-slate-content .portal_row,
  body.ei-portal-page #main-content .ei-slate-content .grid_container,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-grid-v20 {
    display: block !important;
    grid-template-columns: none !important;
    column-gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    overflow: visible !important;
  }
  body.ei-portal-page #main-content .ei-slate-content [class*="col-6-6"] > *,
  body.ei-portal-page #main-content .ei-slate-content .portal_row > *,
  body.ei-portal-page #main-content .ei-slate-content .grid_container > *,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-grid-v20 > * {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    margin: 0 0 24px 0 !important;
    box-sizing: border-box !important;
  }
  /* All portal tables (the applications table + the program offerings tables)
     fill the column and wrap, instead of forcing a horizontal scrollbar. */
  body.ei-portal-page #main-content .ei-slate-content table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    display: table !important;
    box-sizing: border-box !important;
  }
  body.ei-portal-page #main-content .ei-slate-content td,
  body.ei-portal-page #main-content .ei-slate-content th {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    box-sizing: border-box !important;
  }
  /* Belt-and-suspenders: keep the portal content inside the viewport width
     so the page-level sideways scrollbar goes away. */
  body.ei-portal-page #main-content .ei-slate-content {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  /* Hide the first of two stacked dividers above Program Offerings (matches the
     approved iPad-portrait rule). */
  body.ei-portal-page #main-content .ei-slate-content hr:has(+ hr) {
    display: none !important;
  }
}

/* -------------------------------------------------------------------------
   Section 3 — gr_app portal mobile type scale (<=980px).
   The font JS hands sizing back to CSS on mobile (it removes its own forced
   20px below the breakpoint); these rules supply the scale it defers to,
   overriding the leftover 20px base. Desktop (>=981px) untouched.
   ------------------------------------------------------------------------- */
@media (max-width: 980px), (orientation: portrait) and (max-width: 1100px) {
  body.ei-portal-page #main-content .ei-slate-content {
    font-size: 16px !important;
    line-height: 1.5 !important;
    -webkit-text-size-adjust: none !important;
    -moz-text-size-adjust: none !important;
    text-size-adjust: none !important;
  }
  body.ei-portal-page #main-content .ei-slate-content p,
  body.ei-portal-page #main-content .ei-slate-content li,
  body.ei-portal-page #main-content .ei-slate-content a {
    font-size: 16px !important;
  }
  body.ei-portal-page #main-content .ei-slate-content h1 {
    font-size: 26px !important;
    line-height: 1.25 !important;
  }
  body.ei-portal-page #main-content .ei-slate-content h2 {
    font-size: 21px !important;
    line-height: 1.3 !important;
  }
  /* "Program Offerings" as a prominent section heading. iOS Safari's automatic
     text-size-adjust ("font boosting") recalculates rendered text size as the
     page layout settles, independent of any font-size we set - this is the
     actual cause of the repeated small/correct flash (same root cause already
     fixed for the footer copyright/phone number below; not applied here yet). */
  body.ei-portal-page #main-content .ei-slate-content h2.ei-program-offerings-heading,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading * {
    font-size: 30px !important;
    line-height: 1.25 !important;
    -webkit-text-size-adjust: none !important;
    -moz-text-size-adjust: none !important;
    text-size-adjust: none !important;
  }

  /* Intro sentence sized to match the not-logged-in view (21px). The script
     also enforces this inline since the program-font pass sets 13px inline. */
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth p,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth p *,
  body.ei-portal-page #main-content .ei-slate-content .ei-mobile-intro-normal,
  body.ei-portal-page #main-content .ei-slate-content .ei-mobile-intro-normal *,
  body.ei-portal-page #main-content .ei-slate-content .ei-dont-see-added-v10,
  body.ei-portal-page #main-content .ei-slate-content .ei-mobile-help-text-wrap,
  body.ei-portal-page #main-content .ei-slate-content .ei-mobile-help-text-wrap * {
    font-size: 21px !important;
    line-height: 1.45 !important;
    -webkit-text-size-adjust: none !important;
    -moz-text-size-adjust: none !important;
    text-size-adjust: none !important;
  }
  /* "Master's Degree Programs" / "Certificate Programs" sub-headings: one
     consistent 1.5rem bold italic on both views (was 17px logged-out / 13px logged-in). */
  body.ei-portal-page #main-content .ei-slate-content h3.pgms,
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align {
    font-size: 1.5rem !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    -webkit-text-size-adjust: none !important;
    -moz-text-size-adjust: none !important;
    text-size-adjust: none !important;
  }
  /* Collapse the stray hard breaks before "Don't see your program?" (logged-in
     only) so the spacing matches the not-logged-in view. */
  body.ei-portal-page #main-content .ei-slate-content .ei-dont-see-added-v10 br {
    display: none !important;
  }
  /* Other h3/h4 (non section-heading). */
  body.ei-portal-page #main-content .ei-slate-content h3,
  body.ei-portal-page #main-content .ei-slate-content h4 {
    font-size: 17px !important;
    line-height: 1.3 !important;
  }
  /* Table header cells. */
  body.ei-portal-page #main-content .ei-slate-content th,
  body.ei-portal-page #main-content .ei-slate-content thead th,
  body.ei-portal-page #main-content .ei-slate-content th * {
    font-size: 14px !important;
    line-height: 1.3 !important;
  }
  /* Table body cells (keep nested links/spans the same size for uniformity). */
  body.ei-portal-page #main-content .ei-slate-content td {
    font-size: 15px !important;
    line-height: 1.35 !important;
  }
  body.ei-portal-page #main-content .ei-slate-content td a,
  body.ei-portal-page #main-content .ei-slate-content td span,
  body.ei-portal-page #main-content .ei-slate-content td strong {
    font-size: 15px !important;
  }

  /* Let the intro sentence flow naturally instead of breaking at odd points. */
  body.ei-portal-page #main-content .ei-slate-content .ei-mobile-inline-break {
    display: inline !important;
  }
  /* Space above "Master's Degree Programs" — a clear gap below the intro. */
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading {
    margin-top: 80px !important;
  }
  /* Certificate column: the source reserves height:400px + a top gap, which on
     mobile pushes "Certificate Programs" way down and leaves dead space before
     the footer. Let it flow at natural height. */
  body.ei-portal-page #main-content .ei-slate-content .app-detail-text,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-mobile-column-v10 {
    height: auto !important;
    min-height: 0 !important;
    margin-top: 0 !important;
    display: block !important;
  }
  /* Breathing room between the last program text and the footer. */
  body.ei-portal-page #main-content .ei-slate-content .ei-mobile-help-text-wrap {
    margin-bottom: 12px !important;
  }
}

/* -------------------------------------------------------------------------
   Section 3b — hide-until-ready for the "Don't see your program?" / help
   text block. It's rebuilt by JS (duplicate old copies removed, one clean
   version created and styled), which visibly flashes through its unstyled
   state before settling on the right size/font. Hide it until JS confirms
   it's styled correctly (class ei-dontsee-ready, added below in the single-
   authority sizing pass); the animation is a pure-CSS fallback in case JS
   never runs, so content is never permanently hidden.
   ------------------------------------------------------------------------- */
@media (max-width: 980px), (orientation: portrait) and (max-width: 1100px) {
  body.ei-portal-page #main-content .ei-slate-content .ei-dont-see-added-v10,
  body.ei-portal-page #main-content .ei-slate-content .ei-mobile-help-text-wrap {
    opacity: 0;
    animation: eiDontSeeReveal 0.2s ease-out 3s forwards;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-dont-see-added-v10.ei-dontsee-ready,
  body.ei-portal-page #main-content .ei-slate-content .ei-mobile-help-text-wrap.ei-dontsee-ready {
    opacity: 1 !important;
    animation: none !important;
  }
  @keyframes eiDontSeeReveal {
    to { opacity: 1; }
  }
}
 — gr_app portal: cascade the two-column program TABLE.
   .ei-program-split-table is a 2-column table (Master's | Certificate). Make
   only its OUTER structure block so the two columns stack; child combinators
   keep the nested program tables intact as real two-column tables. <=980px.
   ------------------------------------------------------------------------- */
@media (max-width: 980px) {
  body.ei-portal-page #main-content .ei-slate-content .ei-program-split-table,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-split-table > tbody,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-split-table > tbody > tr {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-program-split-table > tbody > tr > td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 0 24px 0 !important;
  }
  /* Inner program tables remain real two-column (Program | Term) tables. */
  body.ei-portal-page #main-content .ei-slate-content .ei-program-split-table table.offerings {
    display: table !important;
    width: 100% !important;
    table-layout: fixed !important;
  }
}

/* -------------------------------------------------------------------------
   Section 5 — gr_app portal mobile polish (<=980px).
   ------------------------------------------------------------------------- */
@media (max-width: 980px) {
  /* "Your Applications" body-cell font is set inline by JS (see the gr_app
     mobile script below) because a higher-specificity rule was out-specifying
     any stylesheet override here. */

  /* Program Offerings intro spans the full width. */
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth > h2,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth > p {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* The intro sentence is force-broken into 3 stacked lines by inline-break
     spans (a <=767px rule sets them display:block), which reads as half-width.
     Let it flow across the full width instead. */
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth .ei-mobile-inline-break {
    display: inline !important;
    height: auto !important;
    line-height: inherit !important;
    font-size: inherit !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth > p,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth .ei-mobile-intro-normal {
    white-space: normal !important;
  }

  /* Trim the gap above "Master's Degree Programs". */
  body.ei-portal-page #main-content .ei-slate-content .app-details {
    margin-top: 8px !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading br {
    display: none !important;
  }

  /* Collapse the seven stray line-break tags before "Don't see your program?"
     and pull the block up close to the Certificate table (also lifts footer). */
  body.ei-portal-page #main-content .ei-slate-content .ei-dont-see-added-v10 br {
    display: none !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-dont-see-added-v10 {
    margin: 56px 0 4px 0 !important;
  }

  /* Remove the outermost portal table borders; the inner program-grid borders
     (table.offerings) stay intact. */
  body.ei-portal-page #main-content .ei-slate-content .ei-program-split-table,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-split-table > tbody > tr > td {
    border: 0 !important;
  }
  /* Outer border on the "Your Applications" table and its portal-layout
     wrapper. Anchored on body only (a guaranteed ancestor) since this table is
     not under .ei-slate-content. Inner program-grid borders are unaffected. */
  body.ei-portal-page table.application_management_table,
  body.ei-portal-page table.two_column_with_header {
    border: 0 !important;
  }

  /* Applications table is NOT under .ei-slate-content, so the width rules that
     fixed the program tables never reached it. Anchor on body, force full
     width, and neutralize the hardcoded 125px colgroup so the link column gets
     room to breathe. */
  body.ei-portal-page table.application_management_table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: auto !important;
  }
  body.ei-portal-page table.application_management_table col {
    width: auto !important;
  }

  /* Program-offerings spacing. These live in the final overlay block so they
     win by source order over the earlier "final tune" blocks that also style
     these headings. Tighten the big gaps and drop the Certificate heading well
     below the Master's table. */
  body.ei-portal-page #main-content .ei-slate-content .ei-program-split-table {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth {
    padding-top: 0 !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-program-header-fullwidth > p {
    margin-bottom: 6px !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading {
    margin-top: 10px !important;
    margin-bottom: 8px !important;
    padding-top: 0 !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align {
    margin-top: 40px !important;
    margin-bottom: 8px !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-column table,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-column .table,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-column .portal_table {
    margin-top: 6px !important;
  }
}

/* -------------------------------------------------------------------------
   Section 6 — Application form (/apply/frm) purple card: fill the full
   column width on phones/tablets instead of shrink-wrapping. The JS-driven
   flex column (enhanceApplyForm, v36a above) already sets the outer column
   to width:100% at this breakpoint, but the card and its Slate structural
   wrappers (form_container/form_page) were never explicitly told to fill
   that column, so on some phones they render narrow. Desktop (>=981px) is
   untouched - the locked desktop layout gives these elements no width rule
   at all and relies on default block sizing.
   ------------------------------------------------------------------------- */
@media (max-width: 980px) {
  body.ei-apply-form #main-content form.ei-apply-form-card,
  body.ei-apply-form #main-content .form_container,
  body.ei-apply-form #main-content .form_pages,
  body.ei-apply-form #main-content .form_page {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* =========================================================================
   v48  Header + footer mobile requests. All mobile-scoped or targeting
   mobile-only classes, so the locked desktop view is unaffected.
   ========================================================================= */
@media (max-width: 980px) {
  /* Remove "Donate" from the top black utility bar on all mobile views.
     Broadened to match the link itself anywhere in the header, not just
     inside the 3 specific container classes previously targeted - several
     other places in this file dynamically rebuild the mobile utility bar
     HTML and include their own Donate link, which those 3 selectors missed. */
  .ei-header a[href*="/give/"],
  .ei-top-links a[href*="/give/"],
  .ei-mobile-top-utility-v8 a[href*="/give/"],
  .ei-mobile-top-utility-v9 a[href*="/give/"] {
    display: none !important;
  }
  .ei-header li:has(a[href*="/give/"]),
  .ei-top-links li:has(a[href*="/give/"]) {
    display: none !important;
  }

  /* Footer buttons: drop "Apply Today" (4th) and put the other three on one
     row. Text stays on a single line (no wrap), shrunk enough to fit. */
  .ei-footer-buttons li:nth-child(4) {
    display: none !important;
  }
  .ei-footer-buttons {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 5px !important;
    padding: 0 !important;
    margin: 0 0 16px 0 !important;
  }
  .ei-footer-buttons li {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    list-style: none !important;
  }
  .ei-footer-buttons a,
  .ei-footer-buttons a span {
    white-space: nowrap !important;
  }
  .ei-footer-buttons a {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    text-align: center !important;
    line-height: 1.15 !important;
    font-size: 10px !important;
    letter-spacing: -0.01em !important;
    padding: 9px 3px !important;
    height: 100% !important;
    box-sizing: border-box !important;
  }
  .ei-footer-buttons a i {
    margin: 0 !important;
    font-size: 15px !important;
  }

  /* Newsletter blurb: slightly larger, and drop the hard line break so it
     doesn't break at "insights". */
  .ei-newsletter-copy {
    font-size: 14px !important;
    line-height: 1.45 !important;
  }
  .ei-newsletter-copy br {
    display: none !important;
  }

  /* The "501(c)3 non-profit ... EIN" line was clipping at the bottom; give it
     a full line-height and room, and keep ancestors from clipping it. */
  .ei-nonprofit {
    margin-bottom: 24px !important;
    padding-bottom: 10px !important;
    line-height: 1.6 !important;
    overflow: visible !important;
  }
  .ei-footer-left {
    padding-bottom: 36px !important;
    overflow: visible !important;
  }
}

/* Footer buttons, desktop: drop "Apply Today" when logged in, same as the
   mobile rule above already does (unconditionally, since a logged-out
   visitor is never on that mobile view in practice) - but on desktop a
   logged-out visitor legitimately should still see the Apply Today CTA, so
   this is scoped to the site-wide login detector instead of applying to
   everyone. Explicitly force nowrap so the remaining three (my.Erikson
   Login, Send Erikson a Message, Request Program Info) always stay on one
   row rather than assuming the default flex-wrap will keep them there. */
@media (min-width: 981px) {
  body.ei-user-authenticated .ei-footer-buttons li:nth-child(4) {
    display: none !important;
  }
  body.ei-user-authenticated .ei-footer-buttons {
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 16px !important;
  }
  body.ei-user-authenticated .ei-footer-buttons li {
    flex: 0 0 auto !important;
  }
  body.ei-user-authenticated .ei-footer-buttons a {
    white-space: nowrap !important;
  }
}

/* Mobile footer social icons: hover yellow like the desktop set. Cover both
   the glyph list (.ei-mobile-social) and the icon list (.ei-social); literal
   color avoids any variable-scope issue. Mobile-only classes / mobile media,
   so the locked desktop view is untouched. */
@media (max-width: 980px) {
  .ei-mobile-social a:hover,
  .ei-mobile-social a:focus,
  .ei-mobile-social a:hover span,
  .ei-mobile-social a:focus span,
  .ei-footer .ei-social a:hover,
  .ei-footer .ei-social a:focus,
  .ei-footer .ei-social a:hover i,
  .ei-footer .ei-social a:focus i,
  .ei-footer .ei-social a:hover svg,
  .ei-footer .ei-social a:focus svg {
    color: #ffc600 !important;
    fill: #ffc600 !important;
  }

  /* Bottom legal links: animated yellow underline like the desktop footer-
     column links. Target every candidate bottom block; the visible one is
     .ei-footer-bottom, but cover the mobile-only variants too. */
  .ei-footer-bottom a,
  .ei-mobile-legal a,
  .ei-mobile-footer-legal-final a {
    display: inline !important;
    text-decoration: none !important;
    background-image: linear-gradient(#ffc600, #ffc600) !important;
    background-repeat: no-repeat !important;
    background-position: 0 100% !important;
    background-size: 0 2px !important;
    transition: background-size .26s ease !important;
  }
  .ei-footer-bottom a:hover,
  .ei-footer-bottom a:focus,
  .ei-mobile-legal a:hover,
  .ei-mobile-legal a:focus,
  .ei-mobile-footer-legal-final a:hover,
  .ei-mobile-footer-legal-final a:focus {
    color: #ffffff !important;
    text-decoration: none !important;
    text-decoration-color: transparent !important;
    background-size: 100% 2px !important;
  }
}

/* =========================================================================
   v49  Tablet range (iPad portrait etc., 621-980px). The program area and the
   footer link grid need explicit handling here — mobile styles apply but the
   layout is wide enough to misbehave.
   ========================================================================= */
@media (max-width: 980px) {
  /* Logged-out program row: collapse the two columns (Master's | Certificate)
     into one so the intro spans full width and the two tables stack and align
     — matching how the logged-in split table already stacks. Both the JS-added
     class and a :has() fallback are used, plus grid overrides in case the row
     is a CSS grid. */
  body.ei-portal-page #main-content .ei-slate-content .ei-prog-grid-stack,
  body.ei-portal-page #main-content .ei-slate-content .portal_row.col-6-6:has(.ei-program-offerings-heading) {
    display: block !important;
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-prog-grid-stack > .part_rows_container,
  body.ei-portal-page #main-content .ei-slate-content .portal_row.col-6-6:has(.ei-program-offerings-heading) > .part_rows_container {
    display: block !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    grid-column: 1 / -1 !important;
    margin-top: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 4px !important;
  }

  /* Keep the program tables as real 2-column tables (Program | Term Offered)
     instead of collapsing into a single stacked column at tablet widths. */
  body.ei-portal-page #main-content .ei-slate-content table.offerings {
    display: table !important;
    table-layout: fixed !important;
    width: 100% !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table.offerings thead {
    display: table-header-group !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table.offerings tbody {
    display: table-row-group !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table.offerings tr {
    display: table-row !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table.offerings th,
  body.ei-portal-page #main-content .ei-slate-content table.offerings td {
    display: table-cell !important;
  }

  /* Only one horizontal divider above Program Offerings: hide the first of two
     adjacent rules, and strip any border the row / heading itself draws. */
  body.ei-portal-page #main-content .ei-slate-content hr:has(+ hr) {
    display: none !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .portal_row.col-6-6:has(.ei-program-offerings-heading),
  body.ei-portal-page #main-content .ei-slate-content .portal_row.col-6-6:has(.ei-program-offerings-heading) > .part_rows_container,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading {
    border-top: 0 !important;
    border-bottom: 0 !important;
  }
}

/* Footer link menu: on tablet / wider mobile there is room, so show the link
   sections in two columns like the desktop version instead of one. Keep the
   bottom legal-links block visible here too. */
@media (min-width: 621px) and (max-width: 980px) {
  body .ei-footer .ei-footer-menu-grid,
  body .ei-footer-right .ei-footer-menu-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 28px 40px !important;
  }
  /* Consistent, tighter spacing between footer link sections. */
  body .ei-footer .ei-footer-col {
    margin-bottom: 28px !important;
  }
  /* Make the social icons and the bottom legal links visible on tablet. */
  body .ei-mobile-footer-extra {
    display: block !important;
    visibility: visible !important;
  }
  body .ei-mobile-footer-extra .ei-mobile-social {
    display: flex !important;
    visibility: visible !important;
  }
  body .ei-mobile-footer-legal-final {
    display: block !important;
    visibility: visible !important;
  }
}

/* =========================================================================
   iPad PORTRAIT (700–1100px) — this is the range a 12.9" iPad Pro (1024px)
   and other larger tablets fall in, ABOVE the 980px phone breakpoint. The
   phone rules above never reached this device, so the same program- and
   footer-section fixes are repeated here in the matching scope. Desktop
   (landscape, and anything >1100) is untouched.
   ========================================================================= */
@media screen and (orientation: portrait) and (min-width: 700px) and (max-width: 1100px) {
  /* Collapse the two program columns into one full-width column and neutralize
     the Certificate column's desktop pull-up offset so it can't overlap the
     Master's column. */
  body.ei-portal-page #main-content .ei-slate-content .ei-prog-grid-stack,
  body.ei-portal-page #main-content .ei-slate-content .portal_row.col-6-6:has(.ei-program-offerings-heading) {
    display: block !important;
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .ei-prog-grid-stack > .part_rows_container,
  body.ei-portal-page #main-content .ei-slate-content .portal_row.col-6-6:has(.ei-program-offerings-heading) > .part_rows_container {
    display: block !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    grid-column: 1 / -1 !important;
    margin-top: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 4px !important;
  }

  /* Program section sub-headings: bold italic, consistent size. */
  body.ei-portal-page #main-content .ei-slate-content h3.pgms,
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading,
  body.ei-portal-page #main-content .ei-slate-content .ei-certificate-programs-align {
    font-size: 1.5rem !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
  }

  /* "Master's Degree Programs" - close to the text above it, per request. */
  body.ei-portal-page #main-content .ei-slate-content .ei-masters-program-heading {
    margin-top: 12px !important;
  }

  /* "Don't see your program? ..." block moved down a line. */
  body.ei-portal-page #main-content .ei-slate-content .ei-dont-see-added-v10 {
    margin-top: 56px !important;
  }

  /* Program tables stay real 2-column tables (Program | Term Offered). */
  body.ei-portal-page #main-content .ei-slate-content table.offerings {
    display: table !important;
    table-layout: fixed !important;
    width: 100% !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table.offerings thead {
    display: table-header-group !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table.offerings tbody {
    display: table-row-group !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table.offerings tr {
    display: table-row !important;
  }
  body.ei-portal-page #main-content .ei-slate-content table.offerings th,
  body.ei-portal-page #main-content .ei-slate-content table.offerings td {
    display: table-cell !important;
  }

  /* Only one divider above Program Offerings: hide the first of two adjacent
     rules, and strip any border the stacked program row / heading itself draws
     (a second line right above the heading). */
  body.ei-portal-page #main-content .ei-slate-content hr:has(+ hr) {
    display: none !important;
  }
  body.ei-portal-page #main-content .ei-slate-content .portal_row.col-6-6:has(.ei-program-offerings-heading),
  body.ei-portal-page #main-content .ei-slate-content .portal_row.col-6-6:has(.ei-program-offerings-heading) > .part_rows_container,
  body.ei-portal-page #main-content .ei-slate-content .ei-program-offerings-heading {
    border-top: 0 !important;
    border-bottom: 0 !important;
  }

  /* Footer link menu: two columns using the existing wrapper divs as the
     columns, so grouping is deterministic — LEFT: Admissions, Academics;
     RIGHT: Community Services, Policy & Research, About. */
  body .ei-footer .ei-footer-menu-grid,
  body .ei-footer-right .ei-footer-menu-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 40px !important;
    row-gap: 0 !important;
    align-items: start !important;
    margin-top: 26px !important;
    margin-bottom: 4px !important;
  }
  body .ei-footer-right .ei-footer-menu-grid > div {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body .ei-footer .ei-footer-col {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
  }
  /* Tighten the vertical space between the individual links. */
  body .ei-footer .ei-footer-col li {
    margin-bottom: 3px !important;
  }
  body .ei-footer .ei-footer-col ul {
    margin-top: 4px !important;
  }

  /* The desktop social-icon column inside the link grid flows after the links
     and leaves a gap before the social/legal block. Hide it here — the mobile
     social row below provides the icons. */
  body .ei-footer-right .ei-footer-menu-grid > .ei-social,
  body .ei-footer .ei-footer-menu-grid > .ei-social,
  body .ei-footer .ei-footer-menu-grid .ei-social {
    display: none !important;
  }

  /* Social icons + bottom legal links visible, pulled up tight under the links. */
  body .ei-footer .ei-footer-menu-grid,
  body .ei-footer-right .ei-footer-menu-grid {
    margin-bottom: 0 !important;
  }
  body .ei-mobile-footer-extra {
    display: block !important;
    visibility: visible !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  body .ei-mobile-footer-extra .ei-mobile-social {
    display: flex !important;
    visibility: visible !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  body .ei-mobile-footer-legal-final {
    display: block !important;
    visibility: visible !important;
    margin-top: 8px !important;
  }
}



/* The my.Erikson Login icon should always stay Erikson blue, never yellow on
   hover/focus - several different rebuilds of the top utility bar exist in
   this file (desktop, and multiple mobile variants), each with their own
   copy of this link, so this targets both the link's actual href AND the
   icon's own class, in case any variant's href differs slightly. Placed
   last in the head so it wins any specificity tie with the earlier
   hover-yellow rule it's meant to override. */
a[href="https://my.erikson.edu/"] i,
a[href="https://my.erikson.edu/"]:hover i,
a[href="https://my.erikson.edu/"]:focus i,
a[href^="https://my.erikson.edu/ics"] i,
a[href^="https://my.erikson.edu/ics"]:hover i,
a[href^="https://my.erikson.edu/ics"]:focus i,
i.fa-user,
i.fa-user:hover,
i.fa-user:focus,
a:hover i.fa-user,
a:focus i.fa-user {
  color: #0074b0 !important;
  -webkit-text-fill-color: #0074b0 !important;
  filter: none !important;
}
/* The footer's own my.Erikson Login button is styled differently from the
   top black bar - its icon should be black (matching the button's black
   text on yellow), not blue. Higher specificity than the rule above so it
   wins there specifically. */
.ei-footer-buttons a i.fa-user,
.ei-footer-buttons a:hover i.fa-user,
.ei-footer-buttons a:focus i.fa-user {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
/* Top utility bar links, desktop only: slightly less than the default 900
   (heaviest), per earlier request; bumped up a hair per a later request.
   Mobile has its own separate, narrower-scoped rule and is unaffected
   either way. */
@media (min-width: 981px) {
  .ei-topbar .ei-top-links a {
    font-weight: 800 !important;
  }
}

/* =========================================================================
   iPad LANDSCAPE footer fix (1180x820 and similar tablet-landscape widths).
   This file has a dedicated "iPad PORTRAIT (700-1100px)" footer block
   earlier (search .ei-ipad-portrait / "iPad PORTRAIT") whose own comment
   says landscape is deliberately untouched/treated as desktop -- but at
   1180px wide, landscape needs the same mobile-style single-column footer
   treatment portrait gets, not the desktop two-column layout. Rather than
   trying to find and out-prioritize every one of this file's many older
   .ei-footer/.ei-footer-left/.ei-footer-logo layers individually, this is
   placed last in the file (wins any same-specificity conflict regardless
   of where else those properties are set) and covers the full set of
   properties needed for the top-of-footer blue background and logo
   position, plus the nav-link columns the portrait block also reveals. */
@media screen and (orientation: landscape) and (max-width: 1200px) {
  body .ei-footer {
    background: var(--ei-blue) !important;
  }
  body .ei-footer-grid {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
  body .ei-footer-left,
  body .ei-footer-right {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    background: var(--ei-blue) !important;
  }
  body .ei-footer-left {
    padding-top: 0 !important;
  }
  body .ei-footer-logo {
    text-align: center !important;
    margin-top: -6px !important;
  }
  body .ei-footer .ei-footer-menu-grid,
  body .ei-footer-right .ei-footer-menu-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 40px !important;
    row-gap: 0 !important;
    align-items: start !important;
    margin-top: 26px !important;
    margin-bottom: 4px !important;
  }
  body .ei-footer-right .ei-footer-menu-grid > div {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}
