.portal-modalities-section .modalities-showcase { height: 420px; }
.portal-modalities-copy.site-container { padding-top: 45px; }

.portal-back-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 17px;
  color: #dbe9f8;
  font-size: 12px;
  font-weight: 550;
}

.portal-back-link:hover { color: #fff; }
.portal-back-link:focus-visible { outline: 3px solid #83c9ff; outline-offset: 4px; }

.portal-modalities-copy h1 {
  margin: 19px 0 13px;
  color: #fff;
  font-size: clamp(48px, 4vw, 62px);
  font-weight: 760;
  letter-spacing: -.07em;
  line-height: 1.02;
  text-wrap: balance;
}

.portal-modalities-copy h1 > span { color: #55b5ff; }
.portal-modalities-copy > p { max-width: 530px; font-size: 18px; line-height: 1.5; }

.portal-modalities-section .modality-card h2 {
  margin: 0 0 8px;
  color: #092f58;
  font-size: 25px;
  font-weight: 720;
  letter-spacing: -.045em;
  line-height: 1.2;
}

.portal-empty-wrap.site-container {
  position: relative;
  z-index: 4;
  display: grid;
  width: calc(100% - 72px);
  max-width: 1160px;
  margin: -68px auto 0;
  padding: 0;
}

.portal-empty-wrap .empty-state {
  display: flex;
  min-height: 260px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 32px;
  border: 1px solid #e7eef6;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 19px 44px rgb(14 52 91 / 10%);
}

.portal-support-area { padding: 20px 0 38px; background: #f7faff; }
.portal-support-content { max-width: 1232px; }
.portal-support-heading .eyebrow { margin-bottom: 6px; color: #647e9f; }
.portal-support-heading h2 { margin: 0 0 16px; color: #0b2d4f; font-size: 21px; }
.portal-support-content .session-drafts { margin: 0 0 24px; }
.portal-support-content .session-draft-list { gap: 9px; }
.portal-support-content .session-draft-list > a {
  min-height: 58px;
  padding: 12px 17px;
  border-color: #e0eaf5;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 6px 18px rgb(14 52 91 / 4%);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.portal-support-content .session-draft-list > a:hover {
  transform: translateY(-1px);
  border-color: #b9d3f2;
  box-shadow: 0 9px 22px rgb(14 52 91 / 8%);
  text-decoration: none;
}

.portal-support-content .session-draft-list > a:focus-visible {
  outline: 3px solid #83c2ff;
  outline-offset: 3px;
}

.portal-support-content .public-portal-help {
  gap: 12px;
  margin: 0;
  padding: 18px 20px;
  border: 1px solid #e4edf7;
  border-radius: 12px;
  background: #fff;
  color: #54708f;
  font-size: 14px;
}

.portal-support-content .public-portal-help > .bi { color: #0063df; }
.portal-support-content .public-portal-help a { color: #0063df; font-weight: 600; }

@media (max-width: 1100px) {
  .portal-modalities-section .modalities-showcase { height: 400px; }
  .portal-modalities-copy.site-container { padding: 40px 32px 0; }
  .portal-modalities-copy h1 { font-size: clamp(44px, 6vw, 60px); }
  .portal-modalities-copy > p { max-width: 490px; font-size: 17px; }
  .portal-empty-wrap.site-container { width: calc(100% - 52px); margin-top: -58px; }
}

@media (max-width: 760px) {
  .portal-modalities-section .modalities-showcase { height: 385px; }
  .portal-modalities-copy.site-container { padding: 34px 22px 0; }
  .portal-back-link { margin-bottom: 12px; font-size: 11px; }
  .portal-modalities-copy .eyebrow { font-size: 10px; }
  .portal-modalities-copy .eyebrow-line { width: 30px; margin-right: 12px; }
  .portal-modalities-copy h1 { margin: 15px 0 11px; font-size: clamp(42px, 9vw, 54px); }
  .portal-modalities-copy > p { max-width: 440px; font-size: 15px; }
  .portal-modalities-section .modality-card h2 { font-size: 22px; }
  .portal-empty-wrap.site-container { width: calc(100% - 36px); margin-top: -30px; }
  .portal-empty-wrap .empty-state { min-height: 220px; padding: 24px 18px; }
  .portal-support-area { padding: 16px 0 30px; }
  .portal-support-heading h2 { font-size: 19px; }
  .portal-support-content .session-draft-list > a { gap: 10px; padding: 14px; }
  .portal-support-content .public-portal-help { align-items: flex-start; padding: 16px; font-size: 13px; }
  .portal-support-content .public-portal-help > .bi { margin-top: 3px; }
}

@media (max-width: 430px) {
  .portal-modalities-section .modalities-showcase { height: 365px; }
  .portal-modalities-copy.site-container { padding: 28px 20px 0; }
  .portal-modalities-copy h1 { font-size: clamp(38px, 11vw, 44px); }
  .portal-modalities-copy > p { font-size: 14px; }
  .portal-empty-wrap.site-container { width: calc(100% - 30px); }
  .portal-support-content .session-draft-list > a > span:first-child { flex-basis: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .portal-support-content .session-draft-list > a { transition: none; }
}
