/* Shared audit fixes. Keep this layer last; do not replace the brand system. */
[data-catalog-card][hidden],
[data-catalog-group][hidden],
[data-catalog-empty][hidden],
.popular-catalog[hidden],
[data-concern-card][hidden] { display: none !important; }

/* A directory should show its search/categories on the first screen. */
.seo-page[data-page-type="problems"] .directory-hero--visual {
  padding-block: 32px !important;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .65fr) !important;
  grid-template-rows: repeat(4, max-content);
  align-content: center;
  gap: 20px 56px !important;
}
.seo-page[data-page-type="problems"] .directory-hero--visual > :not(figure) { margin: 0; }
.seo-page[data-page-type="problems"] .directory-hero--visual > figure,
.seo-page[data-page-type="problems"] .directory-hero--visual > figure img {
  min-height: 0;
  height: 300px;
}
.seo-page[data-page-type="problems"] .directory-hero--visual > figure img { object-position: center 30%; }
.seo-page[data-page-type="problems"] .concern-catalog { padding-top: 32px !important; }
.seo-page[data-page-type="services"] .services-hero { padding-block: 32px !important; gap: 32px; }
.seo-page[data-page-type="services"] .services-hero__copy h1 { margin-block: 20px; }
.seo-page[data-page-type="services"] .services-hero__copy .hero-actions { margin-top: 24px; }
.seo-page[data-page-type="services"] .services-hero__clinic,
.seo-page[data-page-type="services"] .services-hero__clinic .services-hero__portrait-media { min-height: 0; aspect-ratio: auto; width: 100%; }
.seo-page[data-page-type="services"] .services-hero__clinic { display: block; height: auto !important; margin: 0; }
.seo-page[data-page-type="services"] .services-hero__clinic .services-hero__portrait-media { height: 300px; position: relative; }
.seo-page[data-page-type="services"] .services-hero__clinic img { width: 100%; height: 100%; object-fit: cover; }
.seo-page[data-page-type="services"] .catalog-tools { padding-top: 28px !important; }
.seo-page .price-intro { padding: 32px !important; }
.seo-page .price-intro h1 { font-size: clamp(34px, 3.6vw, 52px); }
.seo-page .price-workspace { padding-top: 36px !important; }

@media (max-width: 767px) {
  .seo-page[data-page-type="problems"] .directory-hero--visual {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto;
    gap: 16px !important;
    padding-block: 24px !important;
  }
  .seo-page[data-page-type="problems"] .directory-hero--visual > figure {
    grid-column: 1;
    grid-row: auto;
    height: 180px;
  }
  .seo-page[data-page-type="problems"] .directory-hero--visual > figure img { height: 180px; }
  .seo-page[data-page-type="services"] .services-hero { padding-block: 24px !important; gap: 24px; margin-block: 12px 16px !important; }
  .seo-page[data-page-type="services"] .services-hero__clinic .services-hero__portrait-media { height: auto; aspect-ratio: 3 / 2; }
  .seo-page[data-page-type="services"] .services-hero__clinic figcaption { display: none; }
  .seo-page[data-page-type="services"] .services-hero__clinic img { height: auto; width: 100%; }
  .seo-page .price-intro { padding: 24px !important; gap: 24px; }
  .seo-page .price-intro__meta { padding: 16px 0 0; }
  .seo-page .price-workspace { padding-top: 28px !important; }
}
