/* Doctor directory: compact portrait cards and fully visible specialty filters. */
.saj-doctor-archive .physician-grid{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:20px 14px;
}
.saj-doctor-archive .physician-card{
  display:flex;
  flex-direction:column;
  grid-template-columns:none;
  min-width:0;
}
.saj-doctor-archive .physician-card__media{
  flex:none;
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:5/6;
  background:#f5f7f4;
}
.saj-doctor-archive .physician-card__media::after{display:none}
.saj-doctor-archive .physician-card__media>img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:contain;
  object-position:center;
}
.saj-doctor-archive .physician-card:hover .physician-card__media>img{transform:none}
.saj-doctor-archive .physician-card__placeholder{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  color:#78948b;
  background:radial-gradient(circle at 50% 40%,#fff,#edf3ef);
}
.saj-doctor-archive .physician-card__placeholder svg{
  width:60px;
  height:60px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.3;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.saj-doctor-archive .physician-card__placeholder small{font-size:14px}
.saj-doctor-archive .physician-card__placeholder[hidden],
.saj-doctor-archive .physician-card__media>img[hidden]{display:none}
.saj-doctor-archive .physician-card__body{
  display:flex;
  flex:1;
  flex-direction:column;
  justify-content:flex-start;
  padding:14px 12px;
}
.saj-doctor-archive .physician-card__body h3{
  margin-block:6px 4px;
  font-size:16px;
  line-height:1.8;
  overflow-wrap:anywhere;
}
.saj-doctor-archive .physician-card__specialty{
  display:block;
  font-size:14px;
  line-height:1.8;
  white-space:normal;
  overflow-wrap:anywhere;
}
.saj-doctor-archive .physician-card__body>p{line-height:1.9;overflow-wrap:anywhere}
.saj-doctor-archive .physician-card__body>div{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-block-start:auto;
  padding-block-start:12px;
}
.saj-doctor-archive .physician-card__body>div .button{
  width:100%;
  min-height:40px;
  padding:8px 10px;
  white-space:normal;
  font-size:14px;
}
.saj-doctor-archive .doctors-hero__portrait{
  height:auto;
  min-height:0;
  background:#fff;
  border-radius:18px;
}
.saj-doctor-archive .doctors-hero__portrait img{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  object-position:center;
}
.saj-doctor-archive .doctor-filters__inner{
  grid-template-columns:minmax(0,1fr);
  align-items:stretch;
  gap:14px;
}
.saj-doctor-archive .doctor-search{min-width:0}
.saj-doctor-archive .doctor-search label{font-size:14px}
.saj-doctor-archive .doctor-search>div{
  display:grid;
  grid-template-columns:20px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-height:56px;
  padding:5px 12px 5px 5px;
  background:#f4f8f6;
  border:1px solid rgba(18,96,79,.18);
  border-radius:12px;
}
.saj-doctor-archive .doctor-search>div:focus-within{
  background:#fff;
  border-color:#bf914d;
  box-shadow:0 0 0 3px rgba(208,170,106,.14);
}
.saj-doctor-archive .doctor-search svg{
  position:static;
  width:20px;
  height:20px;
}
.saj-doctor-archive .doctor-search input[type="search"]{
  min-width:0;
  height:44px;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  font-size:16px;
  box-shadow:none;
}
.saj-doctor-archive .doctor-search button{
  position:static;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:100px;
  max-width:160px;
  min-height:44px;
  height:auto;
  padding:10px 18px;
  font-size:14px;
  line-height:1.7;
  white-space:normal;
  overflow-wrap:anywhere;
}
.saj-doctor-archive .doctor-filter-list{
  flex-wrap:wrap;
  justify-content:flex-start;
  align-items:center;
  gap:8px;
  overflow:visible;
  margin:0;
  padding:3px;
}
.saj-doctor-archive .doctor-filter-list button{
  flex:0 1 auto;
  max-width:100%;
  min-height:42px;
  padding:9px 15px;
  font-size:14px;
  line-height:1.8;
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:center;
}
@media(max-width:1024px){
  .saj-doctor-archive .physician-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767px){
  .saj-doctor-archive .physician-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}
  .saj-doctor-archive .physician-card__body{padding:12px 9px}
  .saj-doctor-archive .physician-card__body h3{font-size:16px}
  .saj-doctor-archive .physician-card__availability{inset-block-start:8px;inset-inline-start:8px;max-width:calc(100% - 16px);font-size:14px;white-space:normal}
  .saj-doctor-archive .doctor-filter-list{gap:7px}
  .saj-doctor-archive .doctor-filter-list button{padding-inline:12px;font-size:14px}
  .saj-doctor-archive .doctor-search>div{gap:8px}
  .saj-doctor-archive .doctor-search button{min-width:84px;padding-inline:12px}
}
@media(max-width:359px){
  .saj-doctor-archive .physician-grid{grid-template-columns:minmax(0,1fr)}
}
