/* Homepage "Echipa medicală" (module dl_homepage, home_top.tpl). Linked with ?v=N from the template: bump N on change. */
/* Section spacing and heading: dl-home.css (.dl-sec, .dl-sec-head) */
.dl-team-home__list {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 1.25rem;
  margin: 0; padding: 0; list-style: none;
}
.dl-team-home__card {
  position: relative; display: flex; flex-direction: column; flex: 0 1 20rem; width: 100%; max-width: 20rem;
  background: #fff; border: 1px solid var(--dl-line); border-radius: 18px; overflow: hidden;
  box-shadow: 0 1px 2px rgba(35, 35, 46, .04);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.dl-team-home__card:hover, .dl-team-home__card:focus-within {
  border-color: var(--dl-amber); box-shadow: 0 10px 26px rgba(35, 35, 46, .10); transform: translateY(-3px);
}
.dl-team-home__photo { display: block; background: var(--dl-tint); }
.dl-team-home__photo img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: top; }
.dl-team-home__body {
  display: flex; flex-direction: column; flex: 1; align-items: center; gap: .35rem;
  padding: 1.25rem 1.25rem 1.4rem; text-align: center;
}
.dl-team-home__name { margin: 0; font-size: 1.2rem; font-weight: 700; line-height: 1.3; }
.dl-team-home__name a { color: var(--dl-ink); text-decoration: none; }
.dl-team-home__role { margin: 0; color: var(--dl-slate-dark); font-weight: 600; font-size: .95rem; }
.dl-team-home__line { margin: .5rem 0 0; color: var(--dl-ink); font-size: .95rem; line-height: 1.55; }
.dl-team-home__actions {
  display: flex; flex-direction: column; align-items: center; gap: .6rem; margin-top: auto; padding-top: 1.1rem; width: 100%;
}
.dl-team-home__actions .btn { width: 100%; max-width: 15rem; text-decoration: none; }
.dl-team-home__profile { color: var(--dl-slate-dark); font-weight: 600; font-size: .92rem; text-decoration: underline; text-underline-offset: 3px; }
.dl-team-home__profile:hover { color: var(--dl-ink); }
/* Whole card opens the profile; the booking button stays above the overlay */
.dl-team-home__name a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.dl-team-home__actions .btn, .dl-team-home__profile { position: relative; z-index: 2; }
.dl-team-home__name a:focus-visible, .dl-team-home__profile:focus-visible, .dl-team-home__actions .btn:focus-visible {
  outline: 3px solid var(--dl-amber); outline-offset: 3px; border-radius: 6px;
}
.dl-team-home__name a:focus-visible { outline: none; }
.dl-team-home__card:has(.dl-team-home__name a:focus-visible) { outline: 3px solid var(--dl-amber); outline-offset: 2px; }
@media (min-width: 992px) { .dl-team-home__card { flex-basis: 20rem; max-width: 20rem; } }
@media (prefers-reduced-motion: reduce) {
  .dl-team-home__card { transition: none; }
  .dl-team-home__card:hover, .dl-team-home__card:focus-within { transform: none; }
}
@media (max-width: 575.98px) { .dl-team-home__photo img { aspect-ratio: 1 / 1; } }
