/* Give the free follow-up block a clear, warm focal point without adding visual clutter. */
.portal-help {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  gap: 18px;
  margin-top: 25px;
  padding: 22px 24px;
  border: 1px solid rgba(209, 177, 102, .42);
  border-radius: 15px;
  background: linear-gradient(125deg, rgba(38, 33, 23, .94), #111112 58%, #171615);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 14px 38px rgba(0,0,0,.24);
}
.portal-help::before {
  position: absolute;
  z-index: -1;
  inset: -45%;
  content: "";
  pointer-events: none;
  background:
    radial-gradient(ellipse at 24% 36%, rgba(218, 186, 110, .18), transparent 42%),
    radial-gradient(ellipse at 82% 72%, rgba(255,255,255,.055), transparent 38%);
  animation: portal-help-glow 14s ease-in-out infinite alternate;
}
.portal-help > * { position: relative; z-index: 1; }
.portal-help-icon {
  flex: none;
  border-color: rgba(226, 197, 126, .82);
  background: linear-gradient(145deg, #f0d88e, #b18d47);
  box-shadow: inset 0 1px 0 #fff9, 0 5px 17px #0008;
}
.portal-followup-heading { align-items: center; gap: 7px 10px; }
.portal-followup-heading h3 { font-size: 19px; line-height: 1.15; letter-spacing: -.025em; }
.portal-followup-heading > span {
  padding: 5px 10px;
  border-color: rgba(224, 194, 121, .52);
  background: rgba(218, 186, 110, .1);
  color: #f0dda9;
  font-size: 14px !important;
  letter-spacing: .06em;
  white-space: nowrap;
}
.portal-followup-content > p { margin: 8px 0 15px; color: #e0ded9; font-size: 16px !important; line-height: 1.45; }
.portal-followup-form legend,
.portal-followup-time,
.portal-followup-phone { font-size: 14px !important; }
.portal-followup-day span { font-size: 14px !important; letter-spacing: .02em; }
.portal-followup-form .portal-form-status { font-size: 14px !important; }
@keyframes portal-help-glow {
  from { transform: translate3d(-1.5%, -1%, 0) scale(.99); opacity: .58; }
  to { transform: translate3d(1.5%, 1%, 0) scale(1.02); opacity: .9; }
}
@media (max-width: 640px) {
  .portal-help { display: block; margin-top: 21px; padding: 17px 16px !important; border-radius: 13px; }
  .portal-help-icon { display: none; }
  .portal-followup-heading { gap: 7px 9px; }
  .portal-followup-heading h3 { font-size: clamp(15px, 4.2vw, 17px) !important; line-height: 1.15; white-space: nowrap; }
  .portal-followup-heading > span { padding: 4px 8px; font-size: 14px !important; }
  .portal-followup-content > p { margin: 7px 0 13px; font-size: 15px !important; }
  .portal-followup-form { gap: 12px; }
  .portal-followup-form legend { margin-bottom: 7px; line-height: 1.35; }
  .portal-followup-days { gap: 6px; }
  .portal-followup-day { min-height: 58px; padding: 8px 9px; }
  .portal-followup-day strong { font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .portal-help::before { animation: none; }
}
