/* ATC branch cards: load after directory.css. No changes to filters or sorting. */
#directory-content .directory-card-image-empty {
  height:88px;
  min-height:0;
  aspect-ratio:auto;
  justify-content:flex-start;
  gap:12px;
  padding:14px 18px;
  background:#f5f7f9;
}
#directory-content .directory-card-image-empty .directory-card-image-logo {
  width:56px;
  height:56px;
  padding:5px;
  border-radius:8px;
  object-fit:contain;
}
#directory-content .directory-brand-placeholder {
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  flex:1;
  max-width:100%;
  color:#526074;
}
#directory-content .directory-brand-placeholder strong {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#253448;
  font-size:20px;
  font-style:normal;
  line-height:1.4;
}
#directory-content .directory-card-image-empty .directory-distance {
  position:static;
  flex-shrink:0;
  margin-left:auto;
  transform:none;
}
#directory-content .directory-card-brand {
  margin:0 0 3px;
  color:#647082;
  font-size:13px;
  line-height:1.5;
}
#directory-content .directory-card h3.directory-card-title {
  font-size:22px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
#directory-content .directory-card-promo-summary {
  display:grid;
  gap:4px;
  margin-top:14px;
  padding:10px 12px;
  border-left:3px solid #e7ab25;
  border-radius:0 5px 5px 0;
  background:#fffaf0;
}
#directory-content .directory-card-promo-summary .directory-promo-kicker {
  color:#725416;
  font-size:11px;
  font-weight:400;
}
#directory-content .directory-card-promo-summary a {
  display:flex;
  align-items:center;
  gap:10px;
  color:#29364a;
  font-size:13px;
  font-weight:500;
  line-height:1.5;
}
#directory-content .directory-card-promo-summary a:hover {
  color:#775407;
  text-decoration:underline;
  text-underline-offset:3px;
}
#directory-content .directory-card-promo-title {
  display:-webkit-box;
  flex:1;
  min-width:0;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
#directory-content .directory-card-promo-summary small {
  color:#667183;
  font-size:11px;
  line-height:1.5;
}
@media (max-width:650px) {
  #directory-content .directory-card-image-empty {
    height:80px;
    min-height:0;
    padding:12px 16px;
  }
  #directory-content .directory-card h3.directory-card-title {font-size:21px;}
  #directory-content .directory-brand-placeholder strong {font-size:19px;}
}

/* ATC Shops compact v2: branch-first listing, no repeated network-cover banners.
   Branch cover: small actual-branch thumbnail. Inherited cover: logo or icon.
   This file loads after directory.css; directory sorting and filters are unchanged. */
#directory-content .directory-cards {
  gap:14px;
}
#directory-content .directory-card--compact {
  border-radius:11px;
}
#directory-content .directory-card--compact.directory-card--official:not(.directory-card--promotion) {
  border-top:2px solid #d9ab45;
}
#directory-content .directory-card--compact .directory-card-top {
  display:flex;
  align-items:flex-start;
  gap:12px;
  min-width:0;
  padding:14px 14px 0;
}
#directory-content .directory-card--compact .directory-card-image {
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  flex:0 0 98px;
  width:98px;
  height:98px;
  min-height:0;
  aspect-ratio:1;
  padding:0;
  overflow:hidden;
  border:1px solid #e6eaf0;
  border-radius:9px;
  background:#f4f6f8;
}
#directory-content .directory-card--compact .directory-card-media--photo > img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
#directory-content .directory-card--compact .directory-card-media--logo {
  background:#f7f8fb;
}
#directory-content .directory-card--compact .directory-card-image-logo {
  display:block;
  width:78px;
  height:78px;
  max-height:78px;
  padding:6px;
  border:0;
  border-radius:6px;
  background:transparent;
  object-fit:contain;
}
#directory-content .directory-card--compact .directory-card-media--placeholder {
  color:#748299;
  background:linear-gradient(140deg,#f7f8fa,#e9edf3);
}
#directory-content .directory-card--compact .directory-brand-placeholder {
  display:flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  width:52px;
  height:52px;
  border:1px solid #dce2ea;
  border-radius:50%;
  color:#6d7b8d;
  background:#fff;
}
#directory-content .directory-card--compact .directory-card-heading {
  flex:1;
  min-width:0;
}
#directory-content .directory-card--compact .directory-card-badges {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px;
  min-height:0;
  margin-bottom:5px;
}
#directory-content .directory-card--compact .directory-official,
#directory-content .directory-card--compact .directory-profile-label,
#directory-content .directory-card--compact .directory-promo-badge {
  padding:3px 6px;
  font-size:10px;
  line-height:1.4;
}
#directory-content .directory-card--compact .directory-card-brand {
  margin:0 0 2px;
  font-size:12px;
  line-height:1.4;
  color:#647082;
}
#directory-content .directory-card--compact h3.directory-card-title {
  margin:0;
  font-size:19px;
  font-weight:700;
  line-height:1.35;
  overflow-wrap:anywhere;
}
#directory-content .directory-card--compact .directory-card-location {
  display:flex;
  align-items:flex-start;
  gap:5px;
  margin:5px 0 0;
  color:#647082;
  font-size:12px;
  line-height:1.5;
}
#directory-content .directory-card--compact .directory-card-location svg {
  margin-top:1px;
  flex:0 0 16px;
}
#directory-content .directory-card--compact .directory-card-body {
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
  padding:0 14px 14px;
}
#directory-content .directory-card--compact .directory-card-hours,
#directory-content .directory-card--compact .directory-card-distance {
  display:flex;
  align-items:flex-start;
  gap:6px;
  margin:8px 0 0;
  color:#546175;
  font-size:12px;
  line-height:1.5;
}
#directory-content .directory-card--compact .directory-card-hours svg,
#directory-content .directory-card--compact .directory-card-distance svg {
  margin-top:1px;
  color:#98711d;
  flex:0 0 15px;
}
#directory-content .directory-card--compact .directory-card-distance {
  color:#866315;
  font-weight:600;
}
#directory-content .directory-card--compact .directory-card-service-areas {
  margin-top:7px;
  font-size:12px;
  line-height:1.45;
  color:#647082;
}
#directory-content .directory-card--compact .directory-card-excerpt {
  display:-webkit-box;
  overflow:hidden;
  margin-top:8px;
  color:#647082;
  font-size:12px;
  line-height:1.5;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:1;
}
#directory-content .directory-card--compact .directory-services {
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin:9px 0 0;
  padding:0;
}
#directory-content .directory-card--compact .directory-services li {
  padding:3px 7px;
  font-size:11px;
  line-height:1.35;
}
#directory-content .directory-card--compact .directory-card-brands {
  display:-webkit-box;
  overflow:hidden;
  margin:8px 0 0;
  color:#647082;
  font-size:11px;
  line-height:1.5;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:1;
}
#directory-content .directory-card--compact .directory-card-promo-summary {
  gap:2px;
  margin-top:9px;
  padding:7px 10px;
}
#directory-content .directory-card--compact .directory-card-actions {
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-top:auto;
  padding-top:12px;
}
#directory-content .directory-card--compact .directory-profile-link {
  width:100%;
  min-height:37px;
  padding:6px 12px;
  font-size:13px;
}
#directory-content .directory-card--compact .directory-card-contacts {
  display:flex;
  gap:6px;
  margin-top:0;
}
#directory-content .directory-card--compact .directory-card-contacts .directory-button {
  min-height:35px;
  padding:5px 7px;
  font-size:12px;
  line-height:1.45;
}
@media (max-width:650px) {
  #directory-content .directory-cards {gap:12px;}
  #directory-content .directory-card--compact .directory-card-top {gap:10px;padding:12px 12px 0;}
  #directory-content .directory-card--compact .directory-card-image {
    flex-basis:86px;
    width:86px;
    height:86px;
    min-height:0;
    aspect-ratio:1;
  }
  #directory-content .directory-card--compact .directory-card-image-logo {width:70px;height:70px;max-height:70px;}
  #directory-content .directory-card--compact h3.directory-card-title {font-size:18px;}
  #directory-content .directory-card--compact .directory-card-body {padding:0 12px 12px;}
  #directory-content .directory-card--compact .directory-card-contacts .directory-button {min-height:39px;font-size:13px;}
}
@media (max-width:380px) {
  #directory-content .directory-card--compact .directory-card-image {
    flex-basis:74px;
    width:74px;
    height:74px;
  }
  #directory-content .directory-card--compact .directory-card-image-logo {width:62px;height:62px;max-height:62px;padding:3px;}
  #directory-content .directory-card--compact h3.directory-card-title {font-size:17px;}
}
#directory-content .directory-card--compact .directory-card-image {
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  flex:0 0 108px;
  width:108px;
  height:108px;
  min-height:0;
  aspect-ratio:1;
  padding:0;
  overflow:hidden;
  border:1px solid #e6eaf0;
  border-radius:9px;
  background:#fff;
}

#directory-content .directory-card--compact .directory-card-media--logo {
  background:#fff;
}

#directory-content .directory-card--compact .directory-card-image-logo {
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  padding:8px;
  border:0;
  border-radius:0;
  background:transparent;
  object-fit:contain;
}
@media (max-width:650px) {
  #directory-content .directory-card--compact .directory-card-image {
    flex-basis:92px;
    width:92px;
    height:92px;
    min-height:0;
    aspect-ratio:1;
  }

  #directory-content .directory-card--compact .directory-card-image-logo {
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    padding:7px;
  }
}
@media (max-width:380px) {
  #directory-content .directory-card--compact .directory-card-image {
    flex-basis:80px;
    width:80px;
    height:80px;
  }

  #directory-content .directory-card--compact .directory-card-image-logo {
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    padding:6px;
  }
}