/* Homepage practitioner access, 4 October 2026. Uses the existing login route. */
body .ps-site-header .ps-header-topline {
  display: flex; align-items: center; justify-content: space-between;
  flex: 1 0 100%; gap: 16px; width: 100%; min-width: 0;
}
body a.ps-practitioner-login {
  box-sizing: border-box; display: inline-flex; align-items: center;
  justify-content: center; gap: 10px; min-height: 48px;
  padding: 12px 20px; background: #542184; color: #fff;
  border: 2px solid #542184; border-radius: 10px;
  font: 700 16px/1.35 Arial, Helvetica, sans-serif;
  text-align: center; text-decoration: none; white-space: normal;
  flex-shrink: 0;
}
body a.ps-practitioner-login:hover { background: #341357; border-color: #341357; color: #fff; }
body .membership-home-actions > a.ps-practitioner-login { color: #fff; }
body a.ps-practitioner-login:focus-visible {
  outline: 3px solid #b26800; outline-offset: 4px;
}
body .hero .ps-practitioner-returning {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px;
  margin: 20px 0 0; color: #fff; font: 16px/1.5 Arial, Helvetica, sans-serif;
}
body .hero .ps-practitioner-returning > span { color: #fff; }
body .hero .ps-practitioner-returning > a {
  box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center;
  gap: 10px; min-height: 48px; padding: 10px 16px;
  color: #fff; border: 2px solid #fff; border-radius: 10px;
  background: transparent; font: 700 16px/1.35 Arial, Helvetica, sans-serif;
  text-decoration: none;
}
body .hero .ps-practitioner-returning > a:hover { background: #fff; color: #341357; }
body .hero .ps-practitioner-returning > a:focus-visible { outline: 3px solid #ffdf81; outline-offset: 4px; }
@media (max-width: 640px) {
  body .ps-site-header .ps-header-topline { flex-direction: column; align-items: stretch; gap: 12px; }
  body .ps-site-header .ps-header-topline .ps-site-brand { align-self: flex-start; }
  body .ps-site-header .ps-header-topline .ps-practitioner-login { width: 100%; }
  body .hero .ps-practitioner-returning { align-items: stretch; flex-direction: column; }
  body .hero .ps-practitioner-returning > a { width: 100%; }
}
@media (forced-colors: active) {
  body a.ps-practitioner-login, body .hero .ps-practitioner-returning > a { border-color: ButtonText; }
}
@media print {
  .ps-practitioner-login, .ps-practitioner-returning { display: none !important; }
}
